SD card doesn't work on pysense



  • For some reason i can't get the SD card working in my pysense, i use a 16 GB microSDHC card.
    Even the example code doesn't run:

    from machine import SD
    import os

    sd = SD()
    os.mount(sd, '/sd')

    os.listdir('/sd')

    f = open('/sd/test.txt', 'w')
    f.write('Testing SD card write operations')
    f.close()

    It gives the following error;

    Traceback (most recent call last):
    File "<stdin>", line 6, in <module>
    OSError: the requested operation is not possible

    does anybody know a solution? Thanks in advance!



  • @freddy I was having a problem reading the SD card on a Pytrack and a WiPy 3.0. I formatted the card in a USB adapter on a Windows 10 machine to FAT32. Initially, the WiPy could read it just fine so I wrote sd_boot.py to the SD card. Boot.py would run sd_boot.py if the SD card is present. After a couple minutes, I could no longer read the SD card but it was still mounted. If I rebooted the WiPy, it would still find and run sd_boot.py but I could no longer FTP to /sd/ nor see it in the REPL window (os.chdir('/sd') would give an error).

    I reformatted the card while inserted into the PyTrack via the os.mkfs('/sd') command (as shown below) and now it works fine. Seems like it didn't like the way Windows 10 formatted the card.



  • @charlesdarwin I have FiPy with Expansion board 2.0 and SD mounting is fine, as long as there is a card present and it's got Fat32/Fat16 FS I only use Sandisk.



  • @henning I am getting the same error using a FiPy on a PyTrack board. This is really frustrating.



  • I tried a brand new 32GB SD card and get the same error.

    Code

    from machine import SD
    
    sd = SD()
    

    Output
    OSError: the requested operation failed
    MicroPython v1.8.6-849-83e2f7f on 2018-03-19; FiPy with ESP32

    Version:
    >>> os.uname()
    (sysname='FiPy', nodename='FiPy', release='1.17.3.b1', version='v1.8.6-849-83e2f7f on 2018-03-19', machine='FiPy with ESP32', lorawan='1.0.2', sigfox='1.0.1')

    I'm using the SD slot of the pysense board.

    Any ideas on what might cause it to crash at this early stage or how to debug the issue?



  • Thanks for your reply. The problem is that I get the error already on the sd=SD() line. Which fileystem does pycom expect or which is recommended? Currently the card is fat32 formatted.
    I'll try to get a different card to test too.
    @jmarcelino said in SD card doesn't work on pysense:

    @henning
    Please follow the format procedure I posted below:

    https://forum.pycom.io/post/19664

    If it still fails try another card.

    Thanks



  • @henning
    Please follow the format procedure I posted below:

    https://forum.pycom.io/post/19664

    If it still fails try another card.

    Thanks



  • I have the same or a similar issue. Upon sd = machine.SD() I get "OSError: the requested operation failed
    MicroPython v1.8.6-849-83e2f7f on 2018-03-19; FiPy with ESP32"

    import os
    import machine
    [...]
    ### SD Card
    sd = machine.SD()
    os.mount(sd, '/sd')
    # check the content
    os.listdir('/sd')
    # try some standard file operations
    f = open('/sd/test.txt', 'w')
    f.write('Testing SD card write operations')
    f.close()
    
    


  • @freddy
    That seems to mean the SD module hasn't been imported, did you do from machine import SD first?



  • @jmarcelino made a little bit of progress, was abble to read out the content of the card, however suddenly out of nowhere a new issue popped up, i get the following error:

    Traceback (most recent call last):
    File "<stdin>", line 13, in <module>
    NameError: name 'SD' is not defined

    Do you maybe know a fix to that?



  • @freddy
    Can you try another card please?



  • @jmarcelino tried it, i get exactly the same error



  • @freddy
    Can you try to format the SD card on the Pysense?

    import os
    from machine import SD
    sd=SD()
    os.mount(sd,'/sd')
    os.mkfs(‘/sd')
    

 

Hello World?

Pylife on Kickstarter - November 2018








Back Us On Kickstarter >

Pycom on Twitter