M-VAVE FM1

start - firmwares: xox,
 

Links

Workbench : https://open.m-vave.com/fm1-workbench
Firmware hub : https://thefirmwarehub.com/
Emulator : https://joakimeriksson.github.io/fm1-emu/?fw=april&mhz=100

 
Quick tips
- the 'black' and 'white' keys of the keyboard double as a selection tool
- there are 16 'white' keys, convenient for a 16 step sequencwer
- there are 11 'black' keys, convenient for selecting or muting tracks
- for some firmwares, the keyboard is only used for selecting or muting tracks, or placing notes in the sequencer.
 

Hardware

Inside the FM1:
(thank you What is inside M-Vave FM-1?)

Item   Part Number
2000mAh Battery : DTP704060
Power management chip : ACC361S
1.5" IPS Screen (240x240 pixels) : TFT015B168
8-bit shift registers : 74HC595D
Audio Power Amplifier : SL5316
DAC : CS4344
Main 32-bit RISC CPU : JieLi AC7911B8*
Bluetooth Antenna : Red wire
Silicon Keyboard buttons : Custom

 
* CPU:


 
Category AC7911B8 Specifications (datasheet)
Chip date 2022.02.25
Processor Dual-core 32-bit RISC (pi32v2 architecture) up to 320MHz with FPU (Floating Point Unit)
Memory 578K SRAM
Cache 24KB D-Cache, 32KB I-Cache
Wi-Fi IEEE 802.11b/g/n (supports AP and STA modi)
Bluetooth Bluetooth V5.0 + BR + EDR + BLE (+15dBm TX, -93dBm RX)
Video/ISP Supports DVP/BT656 timing, YUV422 input, YUV422/YUV420 output (up until 720p @ 30fps)
Audio Buiilt in DAC/ADC, microphone-interface, IIS, SPDIF and DSP-audiomodi

Summary:
The FM1 contains a Bluetooth audio chip in a synth’s body. The chip is widely used as a simple headphone bluetooth chip, it is produced by the billions. If the Bluetooth software is deleted from the chip memory, there is 600KB memory left for programming a synth firmware.
 

In depth:
(thank you https://thesynthsource.com/inside-the-m-vave-fm-1/

The FM-1 is built on a JieLi AC791N, also known as WL82, a multimedia system-on-chip from Zhuhai Jieli Technology. Its CPU core is JieLi’s own pi32v2 design, which the write-up describes as a custom 32-bit core derived from Blackfin, clocked at 240 MHz from a 24 MHz crystal. The firmware runs on a FreeRTOS-derived multiprocessor kernel with JieLi’s own API layer, and executes in place from a 1 MB flash chip.

What makes this chip interesting is what else it carries. FM-1-RE’s classification of roughly 2,000 functions in the V13 firmware found that the largest single group, 719 functions, belongs to the Bluetooth stack, including Bluetooth Low Energy and Classic Bluetooth profiles. Only about 20 functions make up the FM synthesis engine itself, with nine more for the effects. The rest is the operating system, flash storage and file systems, the user interface, display drivers, USB, security routines and the MIDI layer. In other words, most of the code is the infrastructure of a connected consumer gadget, with a synth engine sitting on top.

Th chip comes with a fast CPU, audio converters, USB, Bluetooth and a mature SDK, and they are produced in enormous volumes.

Only one firmware fits at a time. With a single application area of a little under 600 KB in the flash map, there is no room for a menu of resident firmwares. Some owners deal with this by keeping more than one unit.

None of these limits are surprising for a chip designed to decode audio streams and run earbuds rather than to host a multi-engine groovebox. What is notable is how much developers have fitted inside them.
 

Connecting via TRS MIDI
- The M-VAVE FM-1 synthesizer uses TRS MIDI Type A for its 3.5mm MIDI input port (matching the standard used by Korg, Akai, and Arturia).
- Jack Type: 3.5mm (1/8") TRS.
- Wiring Standard: Type A (Tip = Pin 4 / Current Sink, Ring = Pin 5 / Current Source, Sleeve = Pin 2 / Shield).
- Compatible Gear: Direct 3.5mm TRS-to-TRS cables work if your controller also uses Type A (such as Arturia KeyStep controllers).
- 5-pin DIN Adapter: If connecting a standard 5-pin MIDI DIN cable from an external sequencer or keyboard, you need a MIDI TRS Type A to 5-pin DIN adapter.
 

Interwebs quotes
Q: I'm loving all those firmwares that are popping up. I use mostly Baud Girl and Sloop but I've noticed that most custom firmwares, being every single one except for Baud Girl, lose Bluetooth MIDI functionality. Is there a technical limitation or is it just oversight by the other devs?

A1: First, the Bluetooth code used by the FM-1's original firmware (OFW) is provided by the chip manufacturer as proprietary binaries. These are protected by licensing restrictions, so we can't simply redistribute them. Second, the FM-1 has very limited RAM and flash storage, while the Bluetooth stack is huge. Adding it would mean sacrificing features like sampler, delay, and reverb.

A2: As for the binaries, I've been experimenting with the linker and managed to get the BLE controller down to about 55 KB, but that's as far as I could go.

 

copyright: tinyloops.com - contact