Simple DIY Electronic Music Projects<p><strong>picoDexed + MiniDexed EuroRack</strong></p><p>Since attempting my <a href="https://diyelectromusic.com/2025/04/12/picodexed-stackypi-minidexed-eurorack/" rel="nofollow noopener" target="_blank">picoDexed + StackyPi + MiniDexed EuroRack</a> build and failing, I’ve found another Pico-to-Zero board that is provided as open source, so I’ve had some made.</p><p>This post details how to get that running with my MiniDexed Zero Eurorack module.</p><p><em><strong>Warning!</strong> I strongly recommend using old or second hand equipment for your experiments. I am not responsible for any damage to expensive instruments!</em></p><p>If you are new to microcontrollers and single board computers, see the <a href="https://diyelectromusic.wordpress.com/getting-started/" rel="nofollow noopener" target="_blank">Getting Started</a> pages.</p><p><strong>Pi Zero RP2040s</strong></p><p>As mentioned <a href="https://diyelectromusic.com/2025/04/12/picodexed-stackypi-minidexed-eurorack/" rel="nofollow noopener" target="_blank">last time</a> I found a number of options for a RP2040 based dev board in a Raspberry Pi Zero form factor. But this post is about this one:</p><ul><li><a href="https://github.com/bablokb/pcb-pico-pi-base" rel="nofollow noopener" target="_blank">https://github.com/bablokb/pcb-pico-pi-base</a></li></ul><p>It is fairly simple to build. It just requires a Pico and GPIO header pins.</p><p>There is an option for pull-ups on the I2C bus, but I’ve not bothered with them here. There is also a breakout header for a reset switch if required (it will support two sizes of switch by the looks of things).</p><p><strong>Mapping over to MiniDexed/RPi Zero</strong></p><p>The pinout is slightly different to the Stacky-pi, so here is an updated table of the GPIO mappings and which are required to be used with my MiniDexed board.</p>RP2040UseRPiRpiUseRP20403V35VGP2LCD SDAGP2 SDA5VGP3LCD SCLGP3 SCLGNDGP4GP4GP14 TXDGP0GNDGP15 RXDMIDI INGP1GP5GP17GP18I2S BCLKGP18GP6GP27GNDGP7GP22GP23GP83V3GP24GP28GP11RE BGP10 MOSIGNDGP12RE AGP9 MISOGP25GP27GP10RE SWGP11 SCLKGP8GP9GNDGP7GP26ID_SDID_SCGP22SW BACKGP5GNDGP13SW HOMEGP6GP12GP21GP14GP13GNDGP19I2S LCLKGP19GP16GP20GP15GP26GP20GP17GNDGP21I2S DATAGP16<p>The two key problem areas will be the I2S interface and encoder, which both require consecutive GPIO pins for the PIO code to do its magic.</p><p>The encoder should be fine – pins RE A and RE B map onto the Pico’s GP11 and 12.</p><p>The I2S interface might be ok – with a BCLK on GP18, it will be expecting LCLK on GP19. Data on GP21 should be ok.</p><p>Unlike the previous attempt, I’m hopeful I can just get this running ok with the correct pin mappings…</p><p><strong>Changing I2C Bus and UARTs</strong></p><p>Unlike the first attempt, I2C is mapped onto GP2 and GP3 which is what I was using in the original picoDexed. So that is all fine, multiplexed onto the I2C bus 1.</p><p>There is an issue with the UART however as picoDexed uses the following by default:</p><ul><li>UART 0 – GP 0,1 – Serial debug</li><li>UART 1 – GP 4,5 – MIDI</li></ul><p>I can swap these over so that UART0 (GP0,1) is MIDI, but that has to be matched with a change in the debug serial port too. But unfortunately, as far as I can see, that has to be configured in the master CMakeLists.txt file (as I talked about in <a href="https://diyelectromusic.com/2024/02/04/raspberry-pi-pico-synth_dexed-part-3/" rel="nofollow noopener" target="_blank">Part 3</a>).</p><p><strong>New picoDexed GPIO Configuration</strong></p><p>Given the above, the following new GPIO pins should be defined in config.h:</p><pre>#define PWM_PIN 10<br><br>#define I2S_DATA_PIN 16<br>#define I2S_BCLK_PIN 18<br>#define I2S_LRCLK_PIN 19 // Implied by BCLK=12<br><br>#define MIDI_UART 0<br>#define MIDI_TX_PIN 0 // Not used<br>#define MIDI_RX_PIN 1<br><br>#define DEBUG_UART_TX_PIN 8<br>#define DEBUG_UART_RX_PIN 9<br><br>#define DISPLAY_I2C_BUS 1<br>#define DISPLAY_I2C_SDA 2<br>#define DISPLAY_I2C_SCL 3<br>#define DISPLAY_I2C_ADDR 0x3C<br>#define DISPLAY_W 128<br>#define DISPLAY_H 32<br><br>#define ENCODER_A_PIN 11<br>#define ENCODER_B_PIN 12 // Not used<br>#define ENCODER_SW_PIN 10 // Not used</pre><p>In addition to this, to keep using the debug output requires the following lines adding to ‘target_compile_definitions’ in CMakeLists.txt.</p><pre> PICO_DEFAULT_UART=1<br> PICO_DEFAULT_UART_TX_PIN=8<br> PICO_DEFAULT_UART_RX_PIN=9</pre><p>I’ve added a separate configuration file (config-ER.h) in the repository to allow this version to be built, but the CMakelists.txt change above has not been included.</p><p>I’ve also added a picodexed-v0.03-ER.uf2 file in the build area which can be downloaded and installed directly onto the Pico to provide the above configuration ready to go.</p><p><strong>Bringing it all together…</strong></p><p>The nice thing about this PCB is that I can map everything nicely over to the pinouts used with my <a href="https://diyelectromusic.com/2025/02/22/minidexed-eurorack-pcb-design/" rel="nofollow noopener" target="_blank">MiniDexed EuroRack PCB</a> meaning that once the Pico has the custom firmware installed, it will just plug in and work and no hardware changes or patching is required at all!</p><p>I was slightly concerned that the USB port of the Pico might clash with the two installed electrolytic capacitors on the MiniDexed PCB, but in my case I can just about get away with it!</p><p>Here is the final assembled unit.</p><p><strong>Closing Thoughts</strong></p><p>I finally have my Eurorack picoDexed which is pretty neat. Big thanks to bablokb for putting that PCB up online. That saved me a job. And it was particularly nice that things like assuming consecutive pins for the I2S mapping was included as that made using the PIO I2S code a lot easier.</p><p>I’d like to see what the power usage is like now as I’m really after a lower power Dexed engine compared to the full Zero version.</p><p>Naturally at some point I might still make my own picoDexed Eurorack PCB, but this is a pretty good solution as far as I’m concerned, so that wouldn’t really add much for me now.</p><p>Kevin</p><p><a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://diyelectromusic.com/tag/midi/" target="_blank">#midi</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://diyelectromusic.com/tag/minidexed/" target="_blank">#minidexed</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://diyelectromusic.com/tag/pcb/" target="_blank">#pcb</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://diyelectromusic.com/tag/picodexed/" target="_blank">#picodexed</a> <a rel="nofollow noopener" class="hashtag u-tag u-category" href="https://diyelectromusic.com/tag/raspberry-pi-pico/" target="_blank">#raspberryPiPico</a></p>