-
1Step 1
Read through how I built mine in the project description. The pictures show almost all you need to know, and the text tells you the rest. Read it carefully - there are some important details you might miss. And definitely read it all the way through first!
Build it exactly like I did with the following changes:
- Instead of a mounting plate use silicone caulk to attach the Zero to the keyboard base. Make sure that there's plenty of air circulation around the processor chip, with no caulk touching it.
- It's easier to just glue the USB socket down with silicone caulk instead of making a mounting plate.
- You can make a A-A cable by cutting two USB cables off some old keyboards, and splicing like colors together. Keep the splices short, there are high frequencies involved. Or just buy a cable, but make sure it's wired correctly. There is no standard in the USB spec for A-A cables. Or forget the whole socket thing and wire a cut off keyboard cable directly into the Zero. This locks you into USB mode however.
PRO TIP: Model Ms use a weird screw size - 5.5mm (7/32") that's in a deep recess. I had to turn down a nut driver bit to fit.
NOTE: USB color codes are pretty standard, so wire your USB socket like the picture and hope for the best. Be sure to keep the white and green wires short and the same length. Those solder pads are quite close together so be mindful of shorts. I recommend you do like I did - check the red wire polarity before soldering it. Finally, a little hot glue around the connections is a good idea.
Download this image, extract it, and copy it to an SD card using
dd
just like you'd do with a Raspbian image. Note that it's compressed with gzip so you can't do this on Windows. Any card 2G or bigger should work. After it's done load the SD card in the Zero and boot it up. Everything should work.If you want to do it the hard way, follow these steps:
As of this writing, the mainline Raspbian kernel doesn't support gadget mode. The easiest way to fix this is to download (from the files section) the
modules.tar.gz
file and extract it in/lib/modules
, and thekernel.tar.gz
file and extract it in/boot
. This will get you booting into kernel 4.4.1+, which supports gadget mode. Then download the rest of the files from the files section and place them as follows:g_hid.ko
goes in/lib/modules/4.4.1+/kernel/drivers/usb/gadget/function
matrix2pi.k
goes in/lib/modules/4.4.1+
event2hid
goes in/etc
mini-init
goes in/etc
mini-init.sh
goes in/etc
matrix2pi-overlay
goes in/boot/overlays
add
init=/etc/mini-init
to the end of the/boot/cmdline.txt
file.add
dtoverlay=dwc2
anddtoverlay=matrix2pi
to the/boot/config.txt
file.Reboot, and if I haven't forgotten anything, it should work. To get back to a usable state for troubleshooting, comment out the
tvservice
line in/etc/mini-init.sh
and remove theinit
entry in/boot/cmdline.txt
. Of course you'll have to do these by putting the SD card in another system: I call it "Doing the SD card shuffle.".Happy hacking!
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.