Skip to the content
2 layers69.9 × 51.4 mmMIDI2M4000, the printed circuit board in 3D

MidiKeyboard for the Blue Pill

Size
69.9 × 51.4 mm
Copper layers
2
Thickness
1.6 mm
Parts
43
Nets
58
Pads
196
Tracks, vias
373, 138
Pours
2
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
25 May 2019
Updated
4 May 2024

Overview

MIDI2M4000 is an open-source printed circuit board by drdpj, from the drdpj/MidiKeyboardBluePill repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 69.9 × 51.4 mm with 43 parts on 58 nets, routed with 373 tracks and 138 vias.

It is built around the 74LV14D, AP2112K-3.3 and 1N4148W. Its parts include 13 capacitors, 10 resistors, 7 connectors, 4 ICs and 4 diodes. It belongs with the STM32 boards of this library.

Main components

3

README

README.md

MidiKeyboardBluePill

This is software for the STM32F103 Microcontroller to convert serial midi into the outputs that would be generated by the Hybrid Music 4000 keyboard for the BBC Micro and BBC Master.

A BluePill board, plus optocoupler circuit is all that is required to get this to work, however there is a complete hardware design too which incorporates MIDI-through and blinkenlights.

Pins used: Userport PB0-7 (even pins 6-20) are on GPIOs PB4,6-12 Userport CB1 (pin 2) -> Clk, GPIO PB13 (SPI2) - add external 10k pullup to 5V Userport CB2 (pin 4) -> MOSI, GPIO PB15 (SPI2) MIDI serial in (3.3V) -> GPIO PA3 (USART2) PA5 - Button (to ground) to program channel (press once and next note sets the channel, press twice and channel is ignored), PA4 - LED (active low, 560R to 3.3V) to indicate programming mode.

The circuit provided specifies a particular opto-isolator (which just happened to be the SMT part I had available) - you can use whatever circuit you like that fits with the midi 1.0 spec. I, and others, have had this working fine with a 6N138.

If you'd like to update the firmware on a pre-built unit, you'll need an st-link. If you have a nucleo development board, it has an ST-LINK V2 built in. Failing that, the very cheap £5 ones work fine (e.g. https://www.amazon.co.uk/DAOKAI-Downloader-Programmer-STM8STM32-Programming/dp/B09WVQNFNM), but they need to be used in conjunction with ST-LINK Utility rather than CubeProgrammer. It's available here: https://www.st.com/en/development-tools/stsw-link004.html

Connect GND to GND, SWCLK to SWCLK, SWDIO to SWDIO. Don't connect ANYTHING to +3.3V.

image n.b. This is the "debug" header on the recent boards, pin 1 is the right hand pin of the group of 4 if the text is the right way up.

Connect +5V to a +5V header if there is one on your board, or Pin 1 or 3 of the user port connector: image

Download the latest release bin file, load into the ST-Link software, and then use the program option to re-flash and verify the unit. There are numerous guides to using the ST-Link software on the internet, so I won't repeat them here - a quick google should reveal them.

Presently I have a few standalone, fully built and tested units for sale. Get in touch if you're interested. midi2m4k

Parts

43
QtyValueFootprintReferences
70.1uFCapacitor_SMD:C_0805_2012MetricC1, C5, C6, C7, C8, C11, C13
410kResistor_SMD:R_0805_2012MetricR2, R6, R8, R9
3220RResistor_SMD:R_0805_2012MetricR1, R3, R7
210uFCapacitor_SMD:C_0805_2012MetricC2, C3
218pFCapacitor_SMD:C_0805_2012MetricC9, C10
2560RResistor_SMD:R_0805_2012MetricR5, R10
11KResistor_SMD:R_0805_2012MetricR4
11N4148WDiode_SMD:D_SOD-123D3
11uFCapacitor_SMD:C_0805_2012MetricC4
147uFCapacitor_SMD:C_0805_2012MetricC12
15V_POWERConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ6
174LV14Package_SO:SOIC-14_3.9x8.7mm_P1.27mmU1
18MHzCrystal:Crystal_SMD_TXC_7A-2Pin_5x3.2mmY1
1ACTIVITY_LEDConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalD1
1AP2112K-3.3Package_TO_SOT_SMD:SOT-23-5U4
1BOOT_JMPConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ2
1DEBUGConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalJ4
1LOGOSymbol:CCBYSAG***
1MIDI_INmyelin-kicad:din_5_econet_pcb_mountJ3
1MIDI_THRUmyelin-kicad:din_5_econet_pcb_mountJ1
1POWER_LEDConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalD4
1RESETConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalSW1
1SET_CHANConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalSW2
1SET_CHAN_LEDConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalD2
1SPARE_PINSConnector_PinSocket_2.54mm:PinSocket_2x06_P2.54mm_VerticalJ7
1STM32F103C8TxPackage_QFP:LQFP-48_7x7mm_P0.5mmU3
1TLP2361_TPL_Edigikey-footprints:SOIC-6-5_W4.55mmU2
1USER PORTConnector_IDC:IDC-Header_2x10_P2.54mm_Horizontal_LockJ5

The 42 most common of 43 parts.

Similar boards

  • 2 layers65 × 56 mmDebounce shield, the printed circuit board in 3D

    Debounce shield

    MayaPosch/DebounceHat

    Fully isolated, input debounce Hat for Raspberry Pi, for up to 6 switches, relays and powered devices

    83 parts24BSD-3-Clause
  • 2 layers100 × 45 mmBasic mc6800, the printed circuit board in 3D

    Basic mc6800

    rabid-inventor/mc68xx-boards

    collection of PCB's based around the Motorola MC6800 series processor

    32 parts3MIT
  • 2 layers90 × 77 mmJetson Extension Board, the printed circuit board in 3D

    Jetson Extension Board

    MARS-UVA/Jetson_Extension_Board

    KiCad design files for the Jetson Extension Board

    28 parts
  • 2 layers307.3 × 148.3 mmMask-2.0.0, the printed circuit board in 3D

    Mask-2.0.0

    marcoster/mask

    MArco's Split Keyboard

    161 parts44MPL-2.0
  • 4 layers112 × 75 mmKvm board, the printed circuit board in 3D

    Kvm board

    FuNK3Y/picoKVM

    A network KVM that can switch inputs of smart monitors

    95 parts6
  • 2 layers95 × 46 mmLEDDs, the printed circuit board in 3D

    LEDDs

    VasilKalchev/LEDDs

    PCB and enclosure design of a trailing edge light bulbs dimmer

    91 parts2MIT
  • 2 layers180.5 × 133.5 mmNrsk right, the printed circuit board in 3D

    Nrsk right

    0x0c/spltnrskb

    KLE レイアウト(kle/left.json、kle/right.json)から生成した、左右分割・有線接続のキーボード基板です。 KiCad 10 のプロジェクト(回路図と配線済み基板)、製造用ガーバー、BOM、QMK ファームウェア設定を含みます。筐体のデータ(アクリルのレーザーカット用 DXF/SVG と 3D プリント用 STL)も入っています。

    135 parts1

Questions

How big is the MIDI2M4000 PCB?

It measures 69.9 × 51.4 mm and has 2 copper layers, 1.6 mm thick.

What parts does the MIDI2M4000 use?

43 parts, built around the 74LV14D, AP2112K-3.3 and 1N4148W. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the MIDI2M4000 KiCad files?

From the drdpj/MidiKeyboardBluePill repository on GitHub, at the commit this page was made from: the board is MIDI2M4000/MIDI2M4000.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the MIDI2M4000 design in my own project?

Its repository publishes it under the GPL-3.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).