SDBox Mini is an open-source printed circuit board by jbilander, from the jbilander/SDBox-Mini repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 36.1 × 34 mm with 29 parts on 48 nets, routed with 322 tracks and 39 vias.
It is built around the ATMEGA328P-AU, 74AHCT1G126GV and 74LVC3G17DP, with the LM1117-3.3 among its other parts. Its parts include 9 capacitors, 6 resistors, 4 ICs, 4 connectors and 2 diodes. It belongs with the AVR (ATmega, ATtiny) boards of this library.
On the Nano V3 the pins on the ICSP-header can be utilized connected like below. There is no need to solder an ICSP-header on the mini, you can just hold the connector against the footprint while programming.
To use the Arduino Nano as ISP it first has to be flashed with the ArduinoISP-sketch which is available under File->Examples in the Arduino IDE, or you can use the attached batch-script flash_Arduino_as_ISP.bat and binary hex ArduinoISP.ino.arduino_standard.hex I have put them in a zip-file under Releases ArduinoISP.zip. Alter the com port in the script file to suit your machine and execute it from a command-prompt. Now you are ready to flash the SDBox-Mini via the Arduino.
Flash the SDBox Mini using the Arduino as ISP
This requires that you already have built the main.hex file in the avr-folder, then execute flashSDBoxMini.bat from a command prompt:
Now copy the default config file to a new file under /home/pi
text
cp /etc/avrdude.conf ~/avrdude_gpio.conf
Add this entry last in the file using your editor (vim or nano) and save the file:
text
#------------------------------------------------------------
# Linux GPIO configuration for avrdude
# Change the lines below to the GPIO pins connected to the AVR
#------------------------------------------------------------
programmer
id = "pi_1";
desc = "Use the Linux sysfs interface to bitbang GPIO lines";
type = "linuxgpio";
reset = 12;
sck = 24;
mosi = 23;
miso = 18;
;
Now cd into /home/pi and make the script-file executable:
text
chmod 755 ./flashSDBoxMini.sh
With all jumper-wires connected and main.hex built, run the script flashSDBoxMini.sh (OR type the line below and hit enter)
avrdude: Version 6.3-20171130
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "/home/pi/avrdude_gpio.conf"
User configuration file is "/root/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : unknown
Using Programmer : pi_1
AVR Part : ATmega328P
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
Caveats
One caveat to keep in mind when building and programming Rev.2A (the first revision of the Mini) is the flashing of the fw can't be done with U4 chip in place as it drives/conflicts with MISO on ICSP (In-Circuit Serial Programming). For Rev. 2B PCB use 74AHCT1G126 instead of 74LVC1G17, same package/footprint. This solves the flashing conflict problem. You put a Jumper-shunt on JP1 (on Rev 2B PCB) while flashing and remove it afterwards.
Building SDBox Mini
Start with the 16 MHz Crystal, C8, C9 and the ATMega328P.
At this point you should be able to flash the Firmware to the ATMega using either an Arduino as ISP or a Raspberry Pi.
Continue with the rest of the components on the front side, and then the back side. I usually pre-tin the C1 pads and use hot air to put the C1-Capacitor in place.
Verify the Micro USB-jack and the voltage levels...
Now it's time to drill the holes for the LEDs, begin with a 1 mm drill and then step up to 2 mm and finally 3 mm. Be very careful when drilling to get a nice clean 3mm hole, it's very easy to slip and the hole gets oval or offset.
Short video showing copying a 8 MB file from the HD to the SD-card on my A1200. +5V to power the SDBox I nicked from the floppy port DB23->microUSB (Howto make such a cable here ).
Video: https://i.imgur.com/mF9Bp4C.mp4
Amiga installation:
Download Amiga.zip from Releases.
Put latest fat95 into L: (download from Aminet)
Put SD0 and SD0.info into Devs: (from Amiga.zip)
Put spisd.device into Devs: (from Amiga.zip)
Put Mount_SDCARD and Mount_SDCARD.info anywhere on your HD or floppy disk.
Put a FAT/FAT32 formatted MicroSD-card in the card reader (Max 4 GB partitioned).
Double-click the Mount_SDCARD icon.
Disk icon should now appear on the Workbench screen.
It measures 36.1 × 34 mm and has 2 copper layers, 1.6 mm thick.
What parts does the SDBox Mini use?
29 parts, built around the ATMEGA328P-AU, 74AHCT1G126GV, 74LVC3G17DP and LM1117-3.3. 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 SDBox Mini KiCad files?
From the jbilander/SDBox-Mini repository on GitHub, at the commit this page was made from: the board is KiCad/SDBox-mini.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the SDBox Mini 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).