Hacking 3DS unbricking progress

krisztian1997

Well-Known Member
OP
Member
Joined
Dec 14, 2013
Messages
370
Trophies
0
Age
27
XP
300
Country
Romania
krisztian1997

Can you, please, post the connection diagram for that SD Shield to Arduino UNO?
I'm a little confused. The CS connection (DAT3) is the SDCD in the Shield? Thx
You ordered the shield what i recommended yestetday ? I am at school now and I dont have an image of it, but that should be the line.
On the SD shield (http://cdn.instructables.com/F6V/F1OJ/H5ENQ08B/F6VF1OJH5ENQ08B.MEDIUM.jpg) there is that CS line thats where you have to connect it, if you ordered a diffent one PM me with the model
 

mvmiranda

Well-Known Member
Member
Joined
Oct 29, 2013
Messages
1,457
Trophies
1
Location
Brazil, Sao Paulo
Website
www.gamemod.com.br
XP
1,673
Country
Brazil
You ordered the shield what i recommended yestetday ? I am at school now and I dont have an image of it, but that should be the line.
On the SD shield (http://cdn.instructables.com/F6V/F1OJ/H5ENQ08B/F6VF1OJH5ENQ08B.MEDIUM.jpg) there is that CS line thats where you have to connect it, if you ordered a diffent one PM me with the model


That's the one. The only difference is that the CS is called SDCS for me (https://www.dropbox.com/s/xkiyj7ljki00p9a/2014-01-29 08.51.23.jpg)
This should be really straight forward then.

Thx!
 

pizzatime

Active Member
Newcomer
Joined
Jan 28, 2014
Messages
38
Trophies
0
XP
123
Country
Italy
I've built the SD voltage divider in an arduino shield form but no luck.

Trying to unbrick a blue 3DS XL with an Arduino Duemilanove (the code is not valid for Arduino leonardo).

With SD everything work as it should.
With 3DS I'm not able to go to the menu.

But... I've noticed that if I boot the arduino again after that I've removed the 3DS-SD... The program go to the menù and recognise the MMC as "unlocked". But in fact there is nothing on the SD slot.
This happens only when I remove the 3DS eMMC from Arduino SD slot.

I've tried to hotplug the eMMC-SD adapter when the program arrives to the menù, but again, it doesn't work. eMMC is recognised as "Locked" after the "x" command.
Trying to send "e" command (erase) it gives the error: IMPOSIBLE TO SET_BLOCKLEN to 1 byte.

IMG_20140129_220417.jpg
 

krisztian1997

Well-Known Member
OP
Member
Joined
Dec 14, 2013
Messages
370
Trophies
0
Age
27
XP
300
Country
Romania
I've built the SD voltage divider in an arduino shield form but no luck.

Trying to unbrick a blue 3DS XL with an Arduino 2009 (the code is not valid for Arduino leonardo).

With SD everything work as it should.
With 3DS I'm not able to go to the menu.

But... I've noticed that if I boot the arduino again after that I've removed the 3DS-SD... The program go to the menù and recognise the MMC as "unlocked". But in fact there is nothing on the SD slot.
This happens only when I remove the 3DS eMMC from Arduino SD slot.

I've tried to hotplug the eMMC-SD adapter when the program arrives to the menù, but again, it doesn't work. eMMC is recognised as "Locked" after the "x" command.
Trying to send "e" command (erase) it gives the error: IMPOSIBLE TO SET_BLOCKLEN to 1 byte.

You cant hotplug it in because it needs to initialize first... so if it doesnt reacher the menu, it freezes somewhere for some reasons... interesting. Can you tell me what appears on the screen before freezing ?
 

pizzatime

Active Member
Newcomer
Joined
Jan 28, 2014
Messages
38
Trophies
0
XP
123
Country
Italy
Here you have the serial monitor log. (3DS eMMC plugged in)
Code:
Enabled outputs/inputs
Initialized SPI with 400khz frequency
Waiting for the cart to start 
Card is awake, selecting it
Selected card, reseting
Card reseted but no IDLE answer
Initialization failed
Retrying...
Enabled outputs/inputs
Initialized SPI with 400khz frequency
Waiting for the cart to start 
Card is awake, selecting it
Selected card, reseting
Card reseted but no IDLE answer
Initialization failed
Retrying...
 
Initialization failed after several retries

After Arduino reboot (no card inserted) serial monitor output:
Code:
Enabled outputs/inputs
Initialized SPI with 400khz frequency
Waiting for the cart to start
Card is awake, selecting it
Selected card, reseting
Card reseted sucesfully
MMC card
ReadCardStatus = 0,0
Password status: unlocked
 
 
----SD LOCKER MENU----
Programmed by Krisztian and Ryuga
Thanks Coto for your awesome CRC16 algorithm
This program is dedicated to crazyace2011 [USER=3107]gbatemp[/USER]
----------------------
u - UNLOCK
l - LOCK
e - ERASE
x - TERMINATE EXECUTION
----------------------
 

mvmiranda

Well-Known Member
Member
Joined
Oct 29, 2013
Messages
1,457
Trophies
1
Location
Brazil, Sao Paulo
Website
www.gamemod.com.br
XP
1,673
Country
Brazil
Oh, completely forgot about posting in this thread, too.

Official release of the Raspberry Pi 3DS unbricker, guide at https://github.com/bkifft/RPU/blob/master/RPU_guide.txt.

Good luck. :)


Awesome!
I still haven't tried any of the methods but I already have mine set up for Arduino. I'd wanna take a shot with yours as well. Have you done a "connections pins" picture for Rasp as krisztian1997 did for Arduino (I've never messed around with Raps)?

Pretty awesome work, I must say again.

Cheers!
 

JohnnyBlaze1986

FUCK GBATEMP!
Banned
Joined
Aug 10, 2009
Messages
308
Trophies
0
Location
Your mother's bedroom
Website
www.gbatempsucks.com
XP
145
Country
United States
I ve a little question.
Why do we need a raspberry pi to run your commands ?
Is there a way to do the same on a standard pc ?


I'm going to take a shot in the dark here from my little knowledge of the device from looking into it for an emulation machine, but Raspberry Pi has its own OS that heavily command based. It's easier to program for that rather than for Windows.
 

khalaan

Well-Known Member
Newcomer
Joined
Jan 25, 2014
Messages
64
Trophies
0
Age
39
Location
Minnesota
XP
147
Country
United States
Well RASPi is linux based, so really you could make the same kernel modifications to any installed LINUX distro and compile the same code, but RASPi is just easier to manage was the core point I believe.
 

hamido123

Member
Newcomer
Joined
Nov 28, 2013
Messages
10
Trophies
0
Age
44
XP
57
Country
Gambia, The
Okay thats a major point but....
It should be possible on win too,or not?
So its pretty plausible that time will bring a method without extra hardware to delete nand
I read alot theses days about bricking etc
So here is what i think
Nand is a pice of hardware with I and 0's so why couldnt a pc just write down 0 to the nand and just ignore the storage index?
Cauz i think the lock is inside the index
 

bkifft

avowed Cuthwaldian
Member
Joined
Jun 10, 2010
Messages
613
Trophies
0
XP
625
Country
Gambia, The
I ve a little question.
Why do we need a raspberry pi to run your commands ?
Is there a way to do the same on a standard pc ?

because on the pi i have easy access to the SD interface on a really low level (in other words i can talk to the card directly).

SD readers (for sure those running via USB, not absolute sure about those running on PCI or PCMCIA) pretend not to be a SD card but a "regular" external drive (like an USB stick or harddrive) towards the OS and translate all the communication from OS to SD and SD to OS.

best way to see this is on linux: the SD slot on the pi (when using a default kernel containing the required drivers) sees a SD/(e)MMC as /dev/mmcblk0 (MMC blockdevice 0) and the same SD/(e)MMC in an USB adapter as /dev/sda(SCSI device a (don't mind the SCSI here, there are historical reasons for it. short version: coders are lazy.)) like a regular drive.


But you don't need an Raspberry Pi or an Arduino specifically: you just need a way to switch three or four (in each case with one common ground) electrical signals on and off with a frequency of 100 - 400 kHz. COM or LPT might work too for example (although regular computers sadly don't offer those ports anymore, it's always just USB).

Microcontrollers (like the chip driving the Arduino) are predestined for that job: do a small task involving some signals fast enough. Beefier SoCs (System on a chip, the microcontrollers big brother) like the Raspberry get even bored while doing it and dig their nose on the side.

Oh, and unlike dedicated unlocking hardware (I look at you, PS3 downgraders!) you can for sure find a use for the Raspberry (want a nice mediaplayer? a low energy downloaderclient? etc) or even for the Arduino (granted some more assembly required, but with Arduinos its quite easy to build nice clocks or lightcubes).

edit: 17 minute double ninjad! (sorry tired and drunk)
 

khalaan

Well-Known Member
Newcomer
Joined
Jan 25, 2014
Messages
64
Trophies
0
Age
39
Location
Minnesota
XP
147
Country
United States
Well, I would IMAGINE, possible... but it may involve a custom driver for the sdcard from windows. Also windows doesn't have, currently, the ability to send those commands. One could certainly try building around it but I'd be sorely mistaken if I said I had the time to see what the windows drivers will let me get away with
 

misterb98

Moral Gateway User. Wat.
Member
Joined
Aug 24, 2010
Messages
449
Trophies
0
XP
290
Country
United States
bkifft, I assume based on your instructions that the unbrick only requires GND, CMD, CLK, and DAT0 to work?
 

bkifft

avowed Cuthwaldian
Member
Joined
Jun 10, 2010
Messages
613
Trophies
0
XP
625
Country
Gambia, The
bkifft, I assume based on your instructions that the unbrick only requires GND, CMD, CLK, and DAT0 to work?
If you use the "default" MMC communication style (the way the lines get toggled on and of) yes, if you want to use SPI you need a fifth wire (fourth signal) CS.

I chose the Raspberry for two reasons:

a) i got one ;)

and (foremost) b) it uses the default 4 wire communication style, thus enabling those who already have the NAND dump mod to use it without having to reopen/resolder the 3DS
 
  • Like
Reactions: misterb98

misterb98

Moral Gateway User. Wat.
Member
Joined
Aug 24, 2010
Messages
449
Trophies
0
XP
290
Country
United States
If you use the "default" MMC communication style (the way the lines get toggled on and of) yes, if you want to use SPI you need a fifth wire (fourth signal) CS.

I chose the Raspberry for two reasons:

a) i got one ;)

and (foremost) b) it uses the default 4 wire communication style, thus enabling those who already have the NAND dump mod to use it without having to reopen/resolder the 3DS
Thanks a lot! Now I don't need to worry about finding a 5 pin connector, and I already own a pi! :)

My 3ds isn't bricked, but I like to have the ability to fix it if it does!
 

bkifft

avowed Cuthwaldian
Member
Joined
Jun 10, 2010
Messages
613
Trophies
0
XP
625
Country
Gambia, The
Awesome!
I still haven't tried any of the methods but I already have mine set up for Arduino. I'd wanna take a shot with yours as well. Have you done a "connections pins" picture for Rasp as krisztian1997 did for Arduino (I've never messed around with Raps)?

Pretty awesome work, I must say again.

Cheers!

dang. sorry, hadn't noticed your post (as said drunk and tired, mea culpa)

it uses the Pi's SD slot, so just follow the hookup from the NAND dump thread.
edit: in other words turn the 3DS in a fake SD card.


@thread
Oh, and let me use this post to make one thing clear: I'm not 1337, uberskillzor, or some type of guru. I'm just interested enough in technics electronics and a few other topics to sit down, read stuff, tinker with stuff, take stuff apart and put it together again. In the classical (not this new age facebook ridden times) definition I'm a hacker: someone who wants to know how stuff works (in case someone disagrees: look it up in http://tools.ietf.org/rfc/rfc1392.txt).

I don't have a brick (not even a hardmodded 3DS, as my soldering skills suck monkeyballs), nevertheless I joined the discussion about what technical reason this brick might have, voiced theories (none pulled out of my arse, all logically founded), analyzed and gave feedback to the ideas of others and got f-ing pissed when one certain person "joined" said discussion giving all of us the verbal finger. That was the point where i said to myself "bkifft, we're gonna show this poopyhead that we can do it!" and so I did with the help of a big bunch of nice tempers. And in all honesty (not even false modesty) once we had a good idea what exactly was happening it was easy to fix, required then as always just some testing and fine tuning. Nothing special, great ore awesome about it. Just about 16 hours of time to spare and a strong enough motivation to reach a goal.

ok, i'm babbling now, the point i wanted to make: if you are interested in this stuff and have some spare time: try to do something. if you like the result (or the journey to reach it) try more. like everything this hobby has it's ups and downs. but i like it. and so might you.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: @BigOnYa, it was maybe funny the third or fourth time companies did it +1