Please note, that the USB power pads of a Pi Zero without WiFi will not match.
Ultimate
Lite
For the lite version you can skip all steps involving ENC28J60.
Hardware
- Raspberry Pi Zero /w (works for both)
- ENC28J60 mini module (you have to desolder the pin header)
- An USB A plug (I ripped one from an old cable)
- Thin electric wires (old IDE cable works great)
- 11 Pogo pins (L 9mm, D 2mm)
Note: two of them need to be filed down for D+ and D-
- Some M2,5 screws
Housing
Download and print my 3D design:
Ultimate:
https://pinshape.com/items/39162-3d-printed-pi-zero-ultimate-housing
Lite (USB only):
https://pinshape.com/3d-printed-object/6321-pi-zero-lite-housing
Assemble
Solder the wires to the pogo pins and don’t forget to reduce the bottom diameter of two pins to fit into the holes for the USB data lines.
Yes, everything has a real tight fit!
USB connection
ENC28J60 connection
VCC(3.3V) -> 3V3 (Pin 1)
GND -> GND (Pin 6)
SI -> MOSI (Pin 19)
SO -> MISO (Pin 21)
INT/IRQ -> GPIO25 (Pin 22)
SCK -> SCKL (Pin 23)
CS -> CE0 (Pin 24)
To make good contact you should put some solder into the pin header holes of your PI’s SPI IOs and power supply.
Software (headless setup)
To have good performance, I used the Raspbian stretch lite: https://www.raspberrypi.org/downloads/raspbian/
After burning the image to a micro SD following files on the boot partition have to be adapted:
Add those two lines to the bottom of config.txt:
dtoverlay=dwc2
dtoverlay=enc28j60
Add this after rootwait to cmdline.txt:
modules-load=dwc2,g_ether
Enable SSH by placing an empty file named ssh to the boot partition.
Boot up and ssh into your pi zero:
ssh pi@raspberrypi.local
If you have a Windows machine, you need to install Bonjour to resolve the *.local suffix. Mac and Linux normally can handle this.
Final step
Enable SPI via raspi-config -> Interfacing Options
Reboot and enjoy real (but slow) Ethernet and Ethernet over USB!
Experiencing a boot loop? Try it again with an additional micro USB cable. It seems your computer doesn’t provide enough current.