The Mt32-Pi PRO Internal Hat allows to internally install a Raspberry-Pi Zero 2w to work as an mt32-Pi. It connects on top of your DE10-Nano or Mister Pi (Ironclad Lite only) and is able to switch the main UserIO port between the Mt32-pi and whatever device you have connected externally, this is a huge step forward as this brings the full integration of all devices while still being compatible with the main MiSTer official coresEverything remains internal and nice, no more connecting and disconnecting stuff to switch between SNAC controllers, guns, etc, and the mt32-pi. The definitive solution to have everything ready to use at any moment!

Main Features:

  • Switches between the Internal Mt32-Pi and external UserIO devices
  • Compatible with official main MiSTer cores
  • The switching can be done using the remote control and/or the case power button
  • Allows full mt32-pi remote control; switching mt32-pi <> UserIO, roms, synths, volume, and pi reset
  • Remote control commands can be learned so you can use your own remote
  • Has two leds to illuminate the internals of your Ironclad Lite/Plus setup with 5 different user selectable color combinations
  • Turns off your Raspberry-Pi when it is disabled (external ports enabled) for more than 60 seconds to save power and reduce internal heat. A green led indicates the status of the Respberry-Pi
  • It has a header to connect your mt32-pi compatible OLED display
  • External rom and synth buttons can also be wired
  • It has two holes to screw a 40x40mm fan on top of the FPGA chip to keep it cooler, optional, read below.

Beware, the Mt32-Pi PRO Internal Hat is compatible with the Ironclad Lite, and Ironclad Plus only with PCB Version 1.40 or newer!, there are hardware differences which cannot be solved via a bios update, but it can be made to work with basic functionality on older revision boards of the Plus model, please go to the final section to read more about how to do it. Ironclad board revision can be checked at the bottom-left corner of the PCB.

The hat has two holes to mount a 40mm fan on top of the FPGA, this is usually not necessary, specially if you bought the “Massive Heatsink” along with your Ironclad, as a single fan extracting hot air from the case is enough, or even passive operation is possible, but there are some Mini-ITX cases that don’t have a single place to properly mount a FAN, and in that situation this addition becomes really handy. Suggested fan models for this purpose might be the Noctua NF-A4x10 PWM (12v) for the Ironclad Plus, or the Noctua NF-A4x10 5V PWM (5v) for the Ironclad Lite, but any 40mm fan will fit and work, be it PWM or not, as usual. Note that only PWM fans (4-pins) benefit from the automatic thermal fan control or adjustable speed from the Ironclad boards.

The kit includes:

  • The mt32-Pi PRO Internal hat.
  • All screws and Stand-offs needed for installation.
  • 5-pins female to female ribbon cable.

This Hat is only intended for the Raspberry-Pi Zero 2w and, maybe, future “Zero” models the Mt32-Pi project will support. A standard sized Raspberry-Pi will not fit. A ribbon IDC extension cable might help with that, also power consumption would be much higher in the big Raspberry-pi models. You are on your own in that adventure.

Instructions:

This installation instructions assume you already have a working Raspberry-Pi Zero 2w with the GPIO header already soldered (In some sites they sell this as “headered”). Also, installing and configuring the MT32-pi software to work in your Pi is out of the scope of this instructions, you can follow THIS easy guide from the mt32-pi official wiki.

  1. Screw the three short stand-offs to the three small holes of the Hat, and connect your Raspberry-Pi Zero 2w to the Hat from below, making sure it is not backwards and the three standoffs are correctly aligned with the Pi’s holes. If that is correct, screw the Pi to the hat.
  2. If you are attaching a fan to the Hat, now is the time to do it, screws enter from below and the fan sits on top.
  3. With your Ironclad setup properly built replace the three screws at the top left, top right, and bottom right corners of the DE10-nano with the long standoffs supplied.
  4. Disconnect the 10-pin rainbow color ribbon cable bridge from the DE10-nano
  5. Place your Mt32-Pi-sandwich on top of the DE10 as shown in the images, making sure the bottom 10-pin male header aligns correctly with the leftmost female header pins on the DE10 where the ribbon cable was connected, once you are sure, press it down, the holes of the Hat should align properly with the long standoffs you installed before, if so, use your previously removed screws from the DE10 to screw the Hat in its place over the standoffs.
  6. Re-connect the 10-pin rainbow color ribbon cable bridge, but this time to the newly installed mt32-pi PRO Hat angled female header, you can do this step before screwing the Hat if that is easier for you.
  7. Interconnect both “PI-CONN” headers on the Hat and the Ironclad with the supplied 5-pins ribbon cable keeping it straight.

Switching using the CASE POWER BUTTON:

You can switch between the Internal MT32-Pi and the external UserIO ports using your case’s power button. To do that, when the system is ON, you have to press the power button and then quickly press it a second time but keeping the key pressed till you hear a beep (the beep is different if you are enabling or disabling the mt32-pi). Another way of explaining it would be; do a double click on the power button as if it were your computer’s mouse, but on the second click do not release the button and keep it pressed till you hear the beep. It is easier doing it than explaining it, trust me.

Default remote control keys:

  • PLAY key: Switches between Internal MT32-Pi and external UserIO
  • 0 key: Changes mt32-pi loaded rom
  • C Key: Changes mt32-pi synthesizer
  • +/- Keys: Mt32-Pi midi volume increase/decrease
  • 8 Key: Resets the Raspberry-Pi

All this commands can be re-assigned to another remote control using the remote learning feature, this feature works as in the Ironclad board, but using the button on the Mt32-Pi PRO Hat instead to trigger it. To enter this mode, while the system is off, press the MT32-Pi PRO single button for 4 seconds and the led will start to blink while the Ironclad is waiting for the new remote key presses to learn, the order of the commands to introduce is written on the Mt32-Pi PRO Hat for your future reference, which is:

  1. Switch
  2. Rom
  3. Synth
  4. Vol+
  5. Vol-
  6. Pi Reset

Remote learning can be cancelled at any time pressing the Ironclad’s case power button, it is also cancelled automatically if no new command to learn is introduced within 30 seconds. To save the new commands the learning process must be fully completed, if the process is cancelled the previous values are restored for all buttons.

Color led modes:

Using the MT32-Pi PRO Hat button you can also choose between the 5 predefined leds color combinations, to do that, with the system ON, press the button and keep it pressed, it will start to cicle through all the color modes for as long as you keep the button pressed. When you have the color scheme you like the most release the button and the setting will be saved automatically.

Backwards compatibility mode:

This mode of operation is only for Ironclad PLUS boards versions 1.00 to 1.33. I tried my best to make the Mt32-pi PRO hat compatible with previous Ironclad Plus models, but there are hardware differences and a bios update will not help, but the basic switching functionality can be made to work, so you can use the main feature in your previous model Ironclad Plus board to switch between the internal mt32-pi and the external UserIO ports. Remote commands, leds modes, etc, will not work.

There are two pads labeled “BC” (Backwards compatibility) from below in the Mt32-Pi PRO Hat, all you have to do is wiring a ON/OFF switch to this two pads and that’s it, when the switch is off, the internal mt32-pi is enabled, and when the switch is on, the external userIO ports are enabled. Now you need to choose a good place to place the switch, for that, drilling a hole to the back i/o panel seems the best choice.

To give power to the Mt32-pi PRO hat and your Raspberry-Pi Zero 2w, if your board has the PI-CONN connector you can use the supplied 5 pins cable, if not then you have to connect from the Hat’s + and – pins to the 5 volts fan header using dupont cables, on the fan 3 pins header the + is the middle pin, and the – is the bottom pin.