====== MT32-Pi, 386 Installation ====== This is part of my [[blog:386_pc|386 PC adventures]], a bit of a //finishing touch//, if you like. I already have a MIDI card for the machine, and was intending on adding a connection to my bank of physical MIDI devices... however I caught wind of the latest state of the [[https://github.com/dwhinham/mt32-pi/|MT32-Pi project]] and considered adding a software emulation of a Roland MT-32 synth //inside the PC itself//... The aim, //in short//, is to put a virtual one of these: {{:blog:386:mt32.jpg?400|}} inside this: {{blog:386:img_2057.jpg?300}} //In more detail:// The emulation of the Roland MT-32 has come on significantly in recent years, with the [[https://github.com/munt/munt|Munt]] project releasing a very accurate software emulation of the device - //good enough// for most purposes. More recently, a project to run the [[https://github.com/dwhinham/mt32-pi|Munt emulator on a Raspberry Pi]] (on 'bare metal', i.e. no Linux OS to boot), called MT32-pi, has reached a milestone where packaging a working MT-32 emulator on a device that can fit in the palm of your hand is possible. Lots of people are now building these devices, packaging them in to small instrument cases or similar. However, I really liked the idea of having one or two computers where all of the MIDI functionality was //entirely built-in//, and not reliant on external boxes or power supplies. "//Hmm...//" I thought; "//...that 5.25 drive bay looks like just the place I could fit such a device//". ===== Parts ===== * Raspberry Pi 3B * 20x2 alphanumeric LCD display * Emulates the LCD display of the MT-32, as well as display MT32-Pi configuration options on button press * https://www.buydisplay.com/character-lcd-display-module/20x2-character * M-Audio Uno USB MIDI interface * USB input to the Pi, provides one MIDI __IN__ (to accept input from the PC's MIDI card __OUT__), one MIDI OUT (not needed at present). * https://m-audio.com/products/view/uno * 5.25" PC disk drive drawer * To fit the device inside the PC neatly, you could also fasten it to the back of a 3d-printed 5.25" blanking plate if you had the facilities * https://www.amazon.co.uk/IOCrest-SY-ACC65085-5-25-Inch-Computer-Accessories/dp/B01LY3YDLN/ref=sr_1_7?dchild=1&keywords=disk+drive+drawer&qid=1621843403&sr=8-7 * Rotary encoder * Used to control device volume/navigate menus * Any //relatively standard// 5-pin controller should work * Two momentary push buttons * At least 2 buttons are needed - one to switch between MT-32 and Soundfont mode, and one to select the type of MT-32 or soundfont being used * //Not latching// * Micro-USB to 4-pin PC 'Molex' power connector * To power the Pi from the standard PC disk drive connector * Innomaker HiFi DAC 'hat' * https://www.inno-maker.com/product/hifi-dac-hat/ * Stereo phono cable (HiFi DAC end) to MPC-2 CD audio 'in' cable (Soundblaster 16 end) * This can be made up with a simple 1x4 dupont plug to go on the sound card end of the phono cable {{:blog:386:raspberry_pi_hifi_dac_hat_pcm5122_hifi_dac_audio_card_expansion_board_raspberry_pii_4_3_b_pi_zero_06-450x450.jpg?200|}} {{:blog:386:71kg54rj4ml._ac_sl1500_.jpg?200|}} {{:blog:386:377-03_600x.jpg?200|}} {{:blog:386:uno.jpg?200|}} {{:blog:386:91zsu44_34l._ac_sl1500_.jpg?200|}} {{:blog:386:61rop2zmvtl._ac_sl1500_.jpg?200|}} {{:blog:386:connect_black_20x2_character_display_to_i2c_adapter_board_with_dupont_wire.jpg?200|}} {{:blog:386:dsc_0098_f7105b71-2252-43e2-8654-112666eb3fc7_600x.jpg?200|}} ===== Logical Connections ===== {{:blog:386:mt32pi_logical_connections.jpg?600|}} ===== Progress Images ===== {{:blog:386:img20210523200824.jpg?300|}} {{:blog:386:img20210523200828.jpg?300|}} {{:blog:386:img20210523200840.jpg?300|}} {{:blog:386:img20210523200858.jpg?300|}} {{:blog:386:img20210523200911.jpg?300|}} {{:blog:386:img20210523202216.jpg?300|}} {{:blog:386:img20210523202225.jpg?300|}} {{:blog:386:img20210523202234.jpg?300|}} {{:blog:386:img20210523202420.jpg?300|}} {{:blog:386:img20210523202426.jpg?300|}} {{:blog:386:img20210523202450.jpg?300|}} Tinted plastic fitted over LCD cutout: {{:blog:386:img20210525155049.jpg?300|}} {{:blog:386:img20210525155053.jpg?300|}} //Definitely// an improvement, but I need to try and cut out some of the backlight leakage from around the edges of the LCD screen. Much better: {{:blog:386:img20210525162416.jpg?300|}} {{:blog:386:img20210525162424.jpg?300|}} {{:blog:386:img20210525162446.jpg?300|}} {{:blog:386:img20210525162454.jpg?300|}}{{:blog:386:img20210525162509.jpg?300|}} Internal audio cable routing: {{:blog:386:img20210529174109.jpg?600|}} USB MIDI interface: {{:blog:386:img20210529164359.jpg?600|}} ===== Completed MT32-Pi Installation ===== Finished installation with volume dial: {{:blog:386:img20210529174236.jpg?400|}} {{:blog:386:img20210529174252.jpg?400|}} In action showing the emulated MT-32 LCD panel messages from [[https://www.mobygames.com/game/dos/silpheed|Sierra's Silpheed]] and channels in use: {{:blog:386:img20210529180821.jpg?400|}} {{:blog:386:img20210529180846.jpg?400|}}