Hacking 3DS unbricking progress

gamesquest1

Nabnut
Former Staff
Joined
Sep 23, 2013
Messages
15,153
Trophies
2
XP
12,247
Hi sorry if i have posted in the wrong place,but i have a 3ds and r4i gold deluxe edition card bought them last november,they where working fine for a couple of days and then it bricked and i dont have a copy of my nand.

Can anyone recommend anyone from the uk who can unbrick my 3ds please?

I live near middlesbrough.
i do the unbricking in uk, not seen any others offering it in the uk tbh, i will pm
 

Mr.1999

Member
Newcomer
Joined
Jun 2, 2014
Messages
8
Trophies
0
Age
24
XP
62
Country
Swaziland
Hi folk!
Here is my first post, but before I can start it's need a premise.
I'm sorry for my slight OT.
I don't want to hijack the discussion but only retrieve some informations and understand better some things.
I found the forum looking for informations about Arduino, I haven't any video game console, I found the discussion
interesting though.
I read whole thread, very interesting under all aspects.
I like how all you, expecially Krisztian, Ryuga, bkifft and Coto, have been able to settle the matter, excellent job guys!
As already stated in the thread by someone, in my opinion the same results could be reached using serial converters
interface which allow for SPI communication.
Knowing the exact sequence of commands and parameters of each single menu item it would surely possible to
replicate their behaviour using serial converters instead of Arduino or RaspberryPi.
The other side of the coin is that perhaps the job would be more hard because you need to send manually each
single command if you can't send them by a script, namely you don't know Python or any other scripting language.
Indeed the strength of your solution is based on the ability to delegate the whole job to the Arduino or
RaspberryPi which they automatically perform it.
That said, here you go my questions.
I'm pretty new with Arduino and I'm trying to understand some things.
The Arduino side of your job is perfect for me in order to assimilate some technics about the Arduino programming.
Due the fact I haven't any logic analyzer I need to know some particulars about your sketch.
Particulars which I guess Krisztian, Ryuga and bkifft can easily provide.
I have tested all the menu items and I noted some issues which I go to explain.

1)Seems to me "u - UNLOCK" function doesn't works, what is it supposed to do?
I guess it perform CMD42 with BIT2 in the BYTE0 setted to 0 for unlock the card, but I'm not sure due the fact
that for me it doesn't work.
In fact I can lock the card using "l - LOCK" (I guess it perform CMD42 with BIT2 in the BYTE0 setted to 1) but
then I'm unable to unlock using "u - UNLOCK", even after "x - TERMINATE EXECUTION" and power on reset.

2)I saw that in the Raspberry Pi solution the terminal show the hexadecimal string of CID and CSD which is good.
Indeed in a generic scenario, not only bricked console, you could have the necessity to prior know if the card can be
unlocked or not, and one way to know it is to parse the CSD register looking for the supported command classes.
Cards which doesn't support command class 7 can't be lock/unlock or force erased.
This is the reason why somebody in the thread complains about the inability to operate on some cards.
Now I'm pretty sure that both Arduino and RaspberryPi retrieve CSD and CID string, only the last one show them
easily for the user, but surely they retrieve both CSD that CID though.

Please understand me.
All what I wrote doesn't mean that there are flaws, it's only in order to improve my my knowledge about the
matter, don't for criticize.
Honestly I would have so many other things to ask but I know here isn't the right place, I'm already to much OT
here.
Apologize me again for the OT and the long message.
Thanks in advance for any possible answer.
Regards.
Bob
 

ryuga93

Well-Known Member
Newcomer
Joined
Mar 8, 2011
Messages
96
Trophies
0
XP
159
Country
Malaysia
Seems to me "u - UNLOCK" function doesn't works, what is it supposed to do?
I guess it perform CMD42 with BIT2 in the BYTE0 setted to 0 for unlock the card, but I'm not sure due the fact
that for me it doesn't work.
In fact I can lock the card using "l - LOCK" (I guess it perform CMD42 with BIT2 in the BYTE0 setted to 1) but
then I'm unable to unlock using "u - UNLOCK", even after "x - TERMINATE EXECUTION" and power on reset.

May I know which arduino you are using? How about try to remove the card after locking then reinsert and do the unlock again.
 

Mr.1999

Member
Newcomer
Joined
Jun 2, 2014
Messages
8
Trophies
0
Age
24
XP
62
Country
Swaziland
Hi folks!

gamesquest1
Hi gamesquest1.
Thanks for the hint.
Surely I will do it, honestly I already know those links.
The problem is I'm not accustomed to use Arduino and still less RaspberryPi which I haven't.
Truthfully speaking I'm a newbie with all those things.

ryuga93
Hi Ryuga and thanks for your answer.

ryuga93 wrote:
>May I know which arduino you are using?

Mine is Mega 2560.

>How about try to remove the card after locking then reinsert and do the unlock again.

It's exactly the way I use cause I know in some case MMC/SD needs power reset as mandatory.
Sadly it doesn't works expecially with MMC.
Maybe I need to slow down SPI frequency.

Thanks a lot at all you two guys!

Regards.

Bob
 

bkifft

avowed Cuthwaldian
Member
Joined
Jun 10, 2010
Messages
613
Trophies
0
XP
625
Country
Gambia, The
Maybe I need to slow down SPI frequency.

Specified initialization frequency is 400kHZ, but most SD/(e)MMC devices don't really care as long as the frequency isn't to high. Only really important part is to give them a long enough delay after powerup in order to get their internal init done (usually 80ish clock cycles).

Oh, and try to get a MMC card, they are cheap on ebay (4€ ish), are pin compatible to SD cards and behave for all intends and purposes exactly like the 3DS eMMC unlike SD cards (which require a different init command sequence).
 

Mr.1999

Member
Newcomer
Joined
Jun 2, 2014
Messages
8
Trophies
0
Age
24
XP
62
Country
Swaziland
Hi bkifft, thanks for your reply.
Yes I know about the 74 cycles of clock needed in order to wake up the card.
Also me usually I use 80 or more of them, but normally I use 250kHz as SPI's frequency.
Course I know there is a limit downward beyond which the cards doesn't allow SPI communications.
This limit is determined by reference datasheet.
Anyway in practice, I don't ever go down below 125kHz.
Talking about the MMCs I guess you are meaning MMC Plus because normal MMC seems to me aren't supported anymore nor produced.
I know the initialization is different among the various kinds of cards.
Due the lack in sophistications inside of the MMC cards their initialization is less complex compared to SD cards.
Sadly though for what I know Arduino manages SD better than MMC.
Here is why I have found you and this forum, because here there is one solution in order to allow Arduino to manage MMC and not only SD as it's explained almost everywhere in the net.
Indeed my purpose is precisely to be able to manage with Arduino the greatest possible number of kinds of cards, MMC included.
Thank you again.
Regards.

Bob
 

bkifft

avowed Cuthwaldian
Member
Joined
Jun 10, 2010
Messages
613
Trophies
0
XP
625
Country
Gambia, The

Mr.1999

Member
Newcomer
Joined
Jun 2, 2014
Messages
8
Trophies
0
Age
24
XP
62
Country
Swaziland
Hi bkifft.
Well, here where I'm MMC are very hard to find while MMC Plus are more easy.
Anyway I have a bunch of MMC, so there is no problem for me.
Coming back to topic.
Due the fact you anymore don't need backup in order to debrick 3DS, maybe something like ezSD Ghost (please use any search engine) can save the day.
I haven't it nor the console, but perhaps it might work.
It's only an idea though.
Regards.

Bob
 

gamesquest1

Nabnut
Former Staff
Joined
Sep 23, 2013
Messages
15,153
Trophies
2
XP
12,247
Hi bkifft.
Well, here where I'm MMC are very hard to find while MMC Plus are more easy.
Anyway I have a bunch of MMC, so there is no problem for me.
Coming back to topic.
Due the fact you anymore don't need backup in order to debrick 3DS, maybe something like ezSD Ghost (please use any search engine) can save the day.
I haven't it nor the console, but perhaps it might work.
It's only an idea though.
Regards.

Bob
that device is the equivalent of a force erase, so you would still then need a nand backup to restore, also i think it would only function on SD cards, there's no mention of it being mmc compatible, i think at this point pretty much everyone has either been unbricked, or smashed their 3ds up in rage before the unbricking methods where released....hopefully the bricking just ends up a dark reminder of how things can go wrong, and there is no future need for the unbricking methods :P
 

everlast6996

Member
Newcomer
Joined
May 21, 2008
Messages
9
Trophies
0
XP
161
Country
United States
This is what I get when I try to unluck the 3dsxl
 

Attachments

  • 20140604_222640.jpg
    20140604_222640.jpg
    92.7 KB · Views: 312
  • 20140604_222637.jpg
    20140604_222637.jpg
    76.2 KB · Views: 289

Mr.1999

Member
Newcomer
Joined
Jun 2, 2014
Messages
8
Trophies
0
Age
24
XP
62
Country
Swaziland
Hi gamesquest1.
Ok, ok, mine was only an idea.
Surely unbrick as explain in the forum is the better and safety manner, no way!
About the fact that kind of device allow force erase only on SD I'm not so sure because in the past I already have seen a similar device which was able to unlock both MMC and SD.
That was many years ago and the device whose I'm writing was already old at that time.
So wouldn't surprise me that nowadays the ezSD Ghost (and any similar and related devices) which I've posted it can be capable to handle either MMC or SD.
Anyway I haven't never tried it so I can't be sure.
Regards.

Bob
 

ryuga93

Well-Known Member
Newcomer
Joined
Mar 8, 2011
Messages
96
Trophies
0
XP
159
Country
Malaysia
Here u go

May I know what device you are using to interface the 3ds and arduino? An IC or SD card shield? And what arduino you are using? The init is fine but the read CID operation is not functioning. Try input x (terminate execution) and get the output log. (It will show the MMC info)
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    Xdqwerty @ Xdqwerty: damn wifi