this repo has been combined into asottile/nintendo-microcontrollers
on ubuntu I needed the following packages:
sudo apt install arduino-core-avr avr-libc avrdude gcc-avr
set AVRDIR
in the makefile if yours is different
set VARIANT
in the makefile if yours is different. hint:
ls /usr/share/arduino/hardware/arduino/avr/variants/
make -j5
you have to be quick with this!
- connect the pro micro to your computer
- short
rst
tognd
twice in quick succession
sudo avrdude -v -patmega32u4 -cavr109 -P/dev/ttyACM0 -Uflash:w:main.hex
use the appropriate MCU
and serial port for your board, the pro micro uses
atmega32u4
and /dev/ttyACM0
for disassembly I followed this guide for 3ds disassembly carefull with:
- JIS screwdrivers (don't use phillips!)
- precision tweezers
- [spudgers and opening tools]
for my assembly I used:
- pro micro
- 74LVC245 level shifter (I had 0 luck with the TXS0108E)
- 32 AWG magnet wire
these are the ones I soldered to
TP1 GND
TP5 +1.8V
TP89 A
TP92 B
TP86 X
TP88 Y
TP85 up
TP87 left
TP91 down
TP90 right
TP83 L
TP82 R
TP80 start
TP81 select
TP55 home # for next time
it's quite difficult to see all of the wiring from the photo but here are the connections:
+1.8V
from the 3ds connects toDIR
,Vcc
on the74LVC245
GND
from the 3ds is tied toGND
from the microcontroller. this is also tied toGND
andOE
on the74LVC245
- digital output pins from the microcontroller are connected to
A#
pins on the74LVC245
- leads to the corresponding testpoints are connected to the
B#
pins - the datasheet recommends connecting unused
74LVC245
pins toGND