To improve the accessibility of our content, please find the audio version of this blog post.
The Jammy E (formerly Jammy EVO), from Jammy Instruments, is a MIDI controller shaped like a guitar that houses an STM32F303, an STM32WB, and the LIS2DH12 accelerometer, among many other things. The project recently had a very successful Kickstarter campaign, raising more than four times its funding goal. Additionally, it is now possible to preorder a Jammy E on Indiegogo, with the first deliveries scheduled for early 2021.
The controller connects to a computer, phone, or tablet. It uses a USB-C port, or a Bluetooth connection, and works with any digital audio workstation (DAW). The Jammy E targets guitar players that want an intuitive stringed MIDI controller. Optical sensors track the strings to detect what the left and right hands are using. The product also comes with a Drums mode, a Tapping mode, and a Compressor mode to widen the creative process. It also enables more complex compositions without additional controllers.
Left side of the Jammy E, an STM32F303 for Greater Performance
The Jammy E comprises two removable parts, a right, and a left module. The fretboard (or left part) integrates the STM32F303. The MCU processes the information from the optical sensor with a higher speed than the company’s previous model. Indeed, whereas the Jammy had a latency of about 10 to 12 milliseconds, the Jammy E hovers at eight milliseconds. The engineers also chose a package with a large number of pins to make their design more straightforward. Each string must account for each of the 15 frets, one fret requiring 11 electrical contacts. The engineers also connected the operational amplifiers’ outputs of each of the six string’s sensors to the analog-to-digital controller of the MCU. Hence, the Jammy E can appear deceptively simple, but behind the neat and ergonomic housing, there’s a tremendously complex system designed to optimize performance.
Hardware Optimizations for Better Signal Processing
The engineers behind the project needed an architecture that could process a lot of information efficiently. Hence, they heavily relied on the MCU’s floating-point unit (FPU) and the nested vector interrupt controller (NVIC) to process the signal from the strings. Having a hardware FPU signifies that the system can rely on complex algorithms without penalties. Similarly, the NVIC optimizes the application’s libraries and enables the prioritization of certain critical operations. Speed is a huge constraint. The user must feel that the Jammy E is responsive, or the experience won’t be satisfactory. As a result, the MIDI controller uses the MCUs’ fast analog-to-digital converters to sample the strings at 200 microseconds, as well as the microcontroller’s timers to scan the fret, manage the touch inputs, and more.
Right Side of the Jammy E, an STM32WB for Bluetooth
The right-side component of the Jammy E houses the STM32WB MCU, which provides the support for the Bluetooth MIDI Profile. The engineers are also using this MCU to communicate with the Jammy Smart Application. The strings on this particular module are set up in two independent groups, each using three microcontroller pins. There’s also a similar signal processing solution as on the fretboard to offer the controller enough precision to distinguish between fingerpicking, strumming, or alternate picking, among other things. The two parts of the Jammy E connect with pogo pins and a UART interface using a baud rate of 345,600. The user can thus enjoy both parts simultaneously without any discrepancy or experiencing one piece out of sync with the other. Finally, The Jammy E also uses the LIS2DH12 accelerometer to detect the inclination of the guitar to enable the user to modulate the sound on the fly.