: _err _sdcDesel ABORT" SDerr" ; ( Tight definition ahead, pre-comment. Initialize a SD card. This should be called at least 1ms after the powering up of the card. We begin by waking up the SD card. After power up, a SD card has to receive at least 74 dummy clocks with CS and DI high. We send 80. Then send cmd0 for a maximum of 10 times, success is when we get 0x01. Then comes the CMD8. We send it with a 0x01aa argument and expect a 0x01aa argument back, along with a 0x01 R1 response. After that, we need to repeatedly run CMD55+CMD41 (0x40000000) until the card goes out of idle mode, that is, when it stops sending us 0x01 response and send us 0x00 instead. Any other response means that initialization failed. )