<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openmano-mpy/drivers/sdcard, branch master</title>
<subtitle>MicroPython source and hardware configuration for OpenMano</subtitle>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/'/>
<entry>
<title>drivers/sdcard: Add sleep_ms(1) delay in SDCard.readinto sync loop.</title>
<updated>2021-04-23T13:44:37+00:00</updated>
<author>
<name>Damien George</name>
</author>
<published>2021-04-23T13:44:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/commit/?id=a1bc32d8a8fbb09bc04c2ca07b10475f7ddde8c3'/>
<id>a1bc32d8a8fbb09bc04c2ca07b10475f7ddde8c3</id>
<content type='text'>
So this driver works on faster MCUs (that run this loop fast) with older,
slower SD cards.

Fixes issue #7129.

Signed-off-by: Damien George &lt;damien@micropython.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
So this driver works on faster MCUs (that run this loop fast) with older,
slower SD cards.

Fixes issue #7129.

Signed-off-by: Damien George &lt;damien@micropython.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>all: Reformat C and Python source code with tools/codeformat.py.</title>
<updated>2020-02-27T23:33:03+00:00</updated>
<author>
<name>Damien George</name>
</author>
<published>2020-02-27T04:36:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/commit/?id=69661f3343bedf86e514337cff63d96cc42f8859'/>
<id>69661f3343bedf86e514337cff63d96cc42f8859</id>
<content type='text'>
This is run with uncrustify 0.70.1, and black 19.10b0.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is run with uncrustify 0.70.1, and black 19.10b0.
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/sdcard: Raise exception on timeout of readinto.</title>
<updated>2019-11-06T00:34:02+00:00</updated>
<author>
<name>Jeremy Herbert</name>
</author>
<published>2019-11-04T09:25:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/commit/?id=4f0f3dfb410062db4d41e42c2c7cff6c8b48f071'/>
<id>4f0f3dfb410062db4d41e42c2c7cff6c8b48f071</id>
<content type='text'>
Otherwise the code can get stuck in an infinite loop if the SD card fails
to respond to a read.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Otherwise the code can get stuck in an infinite loop if the SD card fails
to respond to a read.
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/sdcard: Remove debugging print statement in ioctl method.</title>
<updated>2018-09-20T06:54:58+00:00</updated>
<author>
<name>Peter Hinch</name>
</author>
<published>2018-09-18T05:45:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/commit/?id=40a7e8c472c5befec0649923167e12b91cf0a6d4'/>
<id>40a7e8c472c5befec0649923167e12b91cf0a6d4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/sdcard: In test use os.umount and machine module instead of pyb.</title>
<updated>2018-09-20T06:09:28+00:00</updated>
<author>
<name>Peter Hinch</name>
</author>
<published>2018-09-16T10:25:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/commit/?id=1628cd0e5920c52564e443d067d404b88704bd29'/>
<id>1628cd0e5920c52564e443d067d404b88704bd29</id>
<content type='text'>
pyb.umount(None, mountpoint) no longer works.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
pyb.umount(None, mountpoint) no longer works.
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/sdcard: Do not release CS during the middle of read operations.</title>
<updated>2018-07-05T09:39:06+00:00</updated>
<author>
<name>Mateusz Kijowski</name>
</author>
<published>2018-06-28T23:32:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/commit/?id=1751f5ac7bd48f5673791801b052487ae73d064d'/>
<id>1751f5ac7bd48f5673791801b052487ae73d064d</id>
<content type='text'>
It seems that some cards do not tolerate releasing the card (by setting CS
high) after issuing CMD17 (and 18) and raising it again before reading
data. Somehow this causes the 0xfe data start marker not being read and
SDCard.readinto() is spinning forever (or until this byte is in the data).

This seems to fix weird behviour of SDCard.readblocks() returning different
data, also solved hanging os.mount() for my case with a 16GB Infineon card.

This stackexchange answer gives more context:
https://electronics.stackexchange.com/questions/307214/sd-card-spi-interface-issue-read-operation-returns-0x3f-0xff-instead-of-0x7f-0#307268
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It seems that some cards do not tolerate releasing the card (by setting CS
high) after issuing CMD17 (and 18) and raising it again before reading
data. Somehow this causes the 0xfe data start marker not being read and
SDCard.readinto() is spinning forever (or until this byte is in the data).

This seems to fix weird behviour of SDCard.readblocks() returning different
data, also solved hanging os.mount() for my case with a 16GB Infineon card.

This stackexchange answer gives more context:
https://electronics.stackexchange.com/questions/307214/sd-card-spi-interface-issue-read-operation-returns-0x3f-0xff-instead-of-0x7f-0#307268
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/sdcard: Fix bug in computing number of sectors on SD Card.</title>
<updated>2018-06-15T08:02:40+00:00</updated>
<author>
<name>Damien George</name>
</author>
<published>2018-06-15T08:02:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/commit/?id=1747d15c3afa12672d156664eabb29e3ba3b17d7'/>
<id>1747d15c3afa12672d156664eabb29e3ba3b17d7</id>
<content type='text'>
This was a typo from the very first commit of this file.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This was a typo from the very first commit of this file.
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/sdcard: Change driver to use new block-device protocol.</title>
<updated>2018-06-15T08:01:36+00:00</updated>
<author>
<name>Damien George</name>
</author>
<published>2018-06-15T08:01:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/commit/?id=8b8c083625b15ae9e3560b96ee98408c4810544d'/>
<id>8b8c083625b15ae9e3560b96ee98408c4810544d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/sdcard: Update SD mounting example code for ESP8266.</title>
<updated>2018-02-18T12:40:54+00:00</updated>
<author>
<name>Damien George</name>
</author>
<published>2018-02-18T12:40:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/commit/?id=3759aa2cc98c96b869f3db5c4ac51778d3726669'/>
<id>3759aa2cc98c96b869f3db5c4ac51778d3726669</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>drivers/sdcard: Update doc for ESP8266 to use correct SPI number.</title>
<updated>2018-01-31T10:25:58+00:00</updated>
<author>
<name>Hemanth kumar</name>
</author>
<published>2018-01-16T20:16:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.0x7felf.com/openmano-mpy/commit/?id=a44892dd0d79e039b4a4d1ec3ec7b9a6ed829ee6'/>
<id>a44892dd0d79e039b4a4d1ec3ec7b9a6ed829ee6</id>
<content type='text'>
machine.SPI(0) results in ValueError on ESP8266.  SPI(1) is the user
hardware SPI port (or use SPI(-1) for software SPI).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
machine.SPI(0) results in ValueError on ESP8266.  SPI(1) is the user
hardware SPI port (or use SPI(-1) for software SPI).
</pre>
</div>
</content>
</entry>
</feed>
