Skip to content
This repository has been archived by the owner on Sep 27, 2023. It is now read-only.

Latest commit

 

History

History
106 lines (75 loc) · 2.35 KB

README.md

File metadata and controls

106 lines (75 loc) · 2.35 KB

MIGRATED

this repo has been combined into asottile/nintendo-microcontrollers


3ds-microcontroller

setup

on ubuntu I needed the following packages:

sudo apt install arduino-core-avr avr-libc avrdude gcc-avr

configure

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/

build

make -j5

flashing

you have to be quick with this!

  • connect the pro micro to your computer
  • short rst to gnd 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

parts

for disassembly I followed this guide for 3ds disassembly carefull with:

for my assembly I used:

3ds testpoints

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

wiring diagram

it's quite difficult to see all of the wiring from the photo but here are the connections:

  • +1.8V from the 3ds connects to DIR, Vcc on the 74LVC245
  • GND from the 3ds is tied to GND from the microcontroller. this is also tied to GND and OE on the 74LVC245
  • digital output pins from the microcontroller are connected to A# pins on the 74LVC245
  • leads to the corresponding testpoints are connected to the B# pins
  • the datasheet recommends connecting unused 74LVC245 pins to GND