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