I am a retired electronics engineer with interest in experimenting
with musical instruments electronics
as well as creating sound-, video- and other media installations and objects.
To me, MIDI seems to be a bridge or methapor between
the universes of electronics and of art.
At this website I would like to present some of my actual, recent and older work.
"RHYTHMIC" simple interactive rhythm composer The intention of "RHYTHMIC" is to provide a simple but flexible tool for generation and handling of rhythm patterns and loops combined with a polyphonic chromatic instrument track.
It is structured a little bit like an electric piano player roll or a punchcard
Navigation by cursor keys is supported in addition to the mouse to enter or delete chromatic notes and percussion phrases interactively |
"NucleoSynth" - 10 voices polyphonic Audio Synthesizer based on STM32 Nucleo-F446 This is a DIY instruction for a simple PCB to plug the Nucleo board on and the corresponding firmware project.
|
Simple USB controlled DMX512 Interface The "junior": a simple and tiny DMX512 controller with STM32F042F6 (20 pin TSSOP) processor.
In addition to a MIDI based command set, ASCII text commands are supported. |
Small USB/DMX controllers with STM32G431 These models extend the features of the "Simple USB controlled DMX512 Interface" described above. Additional features: --- hue, saturation or luminance of RGB lamps each is set with a single command --- a simple chaser is implemented --- more lighting scenes are stored in Flash. In addition to a MIDI based command set, ASCII text commands are supported.
Two different hardware solutions are provided with almost the same circuit layout:
The DMX output is expanded with analog and digital I/O, SPI, I2C, PWM, stepper motor control - accessable via socket or pinhead arrays.
A manual of the CForth interpreter is available.
|
STM32 Nucleo-L476 based Art~Net DMX512 Interface This Art~Net capable version is designed as a Veroboard base plate a PCB layout in 1:1 TIF format is provided, too. ...more |
STM32F042 based Art~Net DMX512 Interface The Art~Net capable version with STM32F042 processor (20 pin TSSOP) is mounted in a case of aluminium. This version is more compact and handy than the Nucleo version, but takes more technical skills and tools for reproduction Size of the electronically relevant area of the PCB: 65x37mm ...more |
Interconnect Ethernet & MIDI & USB by STM32 |
MIDI Merger based on STM32 Nucleo-L476 This device merges/bundles up to 4 conventional MIDI IN to a PC via Ethernet (WIZ850io module) or via USB, selectable with a DIP switch. Vice versa, a stream of MIDI messages sent over Ethernet or USB is distributed to up to 4 conventional MIDI OUT. For each MIDI OUT a configurable filter is provided, which MIDI channels shall be sent there or blocked.
By default Ethernet operates in UDP Multicast mode together with the ipMIDI driver which provides a standard MIDI port at the host PC. Alternatively, standard UDP can be used. |
Ethernet-MIDI-USB Data Converter with STM32F042 or STM32F070 A simple and versatile triple port communication interface connects wired Ethernet, USB and a combined legacy MIDI or serial RS-232 port in different modes. The basic mode is 1:1 bidirectional "transparent" transfer of MIDI messages respectively serial data bytes. In serial RS-232 mode, a User Setup is available.
The hardware is built around a STM32F042F6 or STM32F070F6 microcontroller (20 pin TSSOP), which provides the USB interface.
The PCB is strictly designed in 2.54mm raster and the microcontroller is mounted on a commonly available TSSOP to DIL adaptor. So the complete project can be realized on a Veroboard without etching PCB.
|
USB <-> Midi or RS232 Conversion Different STM32 based hardware solutions were developed over a period of time for different purposes, using essentially the same code. The basic mode is 1:1 bidirectional "transparent" transfer of MIDI messages respectively serial data bytes.
Optionally a number of pushbuttons or potentiometers can be attached. When their input level changes, MIDI or ASCII text formatted messages are merged over the bidirectional data traffic.
At each version, system parameters (USB Vid/Pid, baud rates, input message configuration) and save/load of user configuration are managed ASCII text based in "Configuration Mode". This is accessible from RS-232 based communication with a fast input of '+++', as known from legacy modems. The configuration can be stored permanently in the microcontroller Flash.
|
USB-MidiCom on small PCB This small interface with STM32F042F6 or STM32F070F6 processor works as a native USB-to-MIDI converter or as USB-to-RS-232 converter, selected by a jumper/switch, which is connected between port pin PA14 and Ground. Up to 6 pushbuttons or potentiometers can be connected with the socket arrays at the top side to trigger user configurable MIDI or ASCII text formatted messages, which are merged over the bidirectional data stream, when the input level changes.This effect is switched on/off with a jumper/switch between port pin PA13 and Ground. ...more
|
Alternative Hardware for the small USB <->MIDI or RS232 Converter developed by Boleslaw Jamroz This is a simplified hardware design which can be built on a veroboard without etching a PCB. The TSSOP microcontroller is soldered on a commercially available breakout PCB. The firmware is the same that is used for the small SMD version of the converter.
Additionally a corresponding shield for pushbuttons and potentiometer is presented, built on veroboard too. |
Alternative Hardware for the small USB <->MIDI or RS232 Converter developed by Mateusz Jagocha This is a modified design with STM32F070, which fits into the housing of another low-cost USB to MIDI interface. The firmware is the same as described above.
The project link leads you to Dropbox. It is not necessary to register at Google or Dropbox. Simply close the registration window, then click at "Download --> Direct Download". |
STM32 USB-MidiCom - STM32F042 Veroboard version This hardware design with STM32F042F6 or STM32F070F6 processor was originally developed for the CForth interpreter, but has almost the same I/O features as the small PCB. It is less compact but needs less technology for reproduction. Selected by a jumper or switch, which is connected between port pin PA14 (programming connector) and Ground, it works as native USB-to-MIDI converter or as USB-to-RS-232 converter. Up to 7 pushbuttons or potentiometers can be attached at the pinhead connector to trigger user configurable MIDI or ASCII text formatted messages, which are merged over the bidirectional data stream, when the input level changes.This effect is switched on/off with a jumper/switch between port pin PA13 and Ground. ...more
|
STM32 USB-MidiCom - STM32 Nucleo-L476 version This interface with STM32F042F6 or STM32F070F6 processor works as a native USB-to-MIDI converter or as USB-to-RS-232 converter, selected by a DIP switch. This is the least elegant solution but can be used with an unmodified STM32 Nucleo-L476 board. As a better solution, the ST-LINK module of the Nucleo may be cut off and used as separate STM32 programmer. This reduces size and supply current of the interface. Up to 9 potentiometers plus 7 pushbuttons (or less pots and more pushbuttons, total max.16) can be attached at the pinhead connectors to trigger user configurable MIDI or ASCII text formatted messages, which are merged over the bidirectional data stream, when the input level changes. This effect is de/activated with a DIP switch. ...more
|
"MIDITERM" simple MIDI test console MIDITERM is a simple but very useful MIDI terminal emulation for Windows. It is especially helpful as a debugging tool to send any MIDI messages by PC keyboard input and list all received MIDI messages on the PC screen. Furthermore it is very practical to handle up- and download of MIDI SysEx files. ...more |
WindowsTM program for up-and download MIDI dump (.SYX or Sysex) files developed by Boleslaw Jamroz This software supports the USB to MIDI converter and standard USB MIDI interfaces as well as the conventional MIDI / RS-232 Converter. Proper structure of SysEx files or packages is a condition for the correct transmission of data. ...more |
ATmega based Interfaces
Conventional MIDI / RS-232 Converter This electronic circuit transforms the physical layer and baudrate of a standard RS-232 signal into MIDI physical layer and baudrate - and vice versa. The RS-232 interface supports 4800, 9600, 19200 and 38400 Baud. The basic mode of operation is bidirectional 1:1 retransmission of every byte. Optionally bytes sent as hex formatted ASCII text to the RS-232 interface are retransmitted in 8 bit format from MIDI OUT. In the opposite direction, every byte received at MIDI IN is retransmitted then as ASCII text from RS-232. Hex code is provided for ATmega328P, ATmega168 and ATmega88
The power supply is designed for 8-28Vdc. |
Simple USB to DMX512 Interface for Arduino Micro or Leonardo The design is held as simple as possible for easy reconstruction on a Veroboard. The Leonardo version even takes less handicraft. Due to limited SRAM, the standard firmware supports max. 256 DMX channels, but has special features like soft fade transitions and nonvolatile storage of user designed lighting scenes combined with a simple chaser.
Selectable by a jumper or switch, An alternative firmware is provided where the MIDI option is replaced by the MiniDMX protocol for 512 DMX channels without faders and stored lighting scenes. ...more |
* State of information March 2024.
* The hints presented here are for information only. No product features, specifications or useability are assured in juridical sense.
* All information based on best knowledge, but without any warranty. Any responsibility is excluded.
* Trademarks and product names cited in this text are property of their respective owners.
* Informationsstand März 2024.
* Die hier präsentierten Ratschläge dienen allein zur Information,
sie geben keine Zusicherung von Produkteigenschaften und -Tauglichkeiten im rechtlichen Sinne
* Alle Informationen nach bestem Wissen, jedoch ohne Gewähr und unter Ausschluß jeglicher Haftung.
* Im Text zitierte Warenzeichen und Produktnamen sind geschütztes Eigentum ihrer jeweiligen Eigentümer.