Search found 14 matches

by edf012
Thu May 26, 2022 3:46 pm
Forum: ESP32 boards
Topic: OSError(84,)
Replies: 16
Views: 5329

Re: OSError(84,)

update: There is a bug emanating from the MP HAL layer, although I do not think it is the root cause. Unfortunately I do not have time to debug this issue further. It seems there is a ring buffer between espressif IDF and MP that collects the file data. After some time (or file size), the get pointe...
by edf012
Tue May 17, 2022 10:08 pm
Forum: ESP32 boards
Topic: OSError(84,)
Replies: 16
Views: 5329

Re: OSError(84,)

Hi Marcidy, thanks for the machine.mem32 tip. I think I'll try that because I really don't feel like debugging Espressif's file system code!
by edf012
Mon May 16, 2022 8:55 pm
Forum: ESP32 boards
Topic: OSError(84,)
Replies: 16
Views: 5329

Re: OSError(84,)

Hi Marcidy, Yes writeblocks is working (as was spi_flash_write and esp_partition_write I suspect) and no, I am not satisfied that 1 block out of 768 fails. It is the file read that is giving me the OSError(84,). The partition table, the ubinvs.bin file and the NVS keys file, were created with the ap...
by edf012
Mon May 16, 2022 5:43 pm
Forum: ESP32 boards
Topic: OSError(84,)
Replies: 16
Views: 5329

Re: OSError(84,)

It seems I went down the wrong rabbit hole. It was not the writeblocks that failed. It was the file read. I "fixed it" as shown below. chunk = () import esp32 part = esp32.Partition("nvs") block_num = int(part.info()[2] / 4096) try: with open('ubinvs.bin', 'rb') as f: log.info('opened ubinvs.bin..it...
by edf012
Mon May 16, 2022 3:24 pm
Forum: ESP32 boards
Topic: OSError(84,)
Replies: 16
Views: 5329

Re: OSError(84,)

The other strange behavior is the writeblocks is in a try block. The except statement is pass. Why doesn't micropython ignore this "error"?
by edf012
Mon May 16, 2022 3:06 pm
Forum: ESP32 boards
Topic: OSError(84,)
Replies: 16
Views: 5329

Re: OSError(84,)

39:INFO:ubicell:block_num is 3597, chunk size is 4096 39:INFO:ubicell:block_num is 3598, chunk size is 4096 39:INFO:ubicell:block_num is 3599, chunk size is 4096 Traceback (most recent call last): File "main.py", line 9, in <module> File "ubicell.py", line 448, in __init__ OSError: 84 MicroPython v1...
by edf012
Mon May 16, 2022 1:10 pm
Forum: ESP32 boards
Topic: OSError(84,)
Replies: 16
Views: 5329

Re: OSError(84,)

offset = 0x0 chunk = () import esp32 part = esp32.Partition("nvs") with open('ubinvs.bin', 'rb') as f: log.info('opened ubinvs.bin..iterating through the file') while chunk := f.read(4096): log.info('part is {}, chunk size is {}, offset is {}'.format(part, len(chunk), hex(offset))) try: esp32.Partit...
by edf012
Mon May 16, 2022 10:59 am
Forum: ESP32 boards
Topic: OSError(84,)
Replies: 16
Views: 5329

Re: OSError(84,)

Hi Marcidy, If you mean, did we add some functionality to Micropython, the answer is yes. The code I showed is the code that opens the binary file and writes it to the NVS partition. This is done very early in the main application init function, i.e. right after the watchdog thread is started and so...
by edf012
Sat May 14, 2022 11:56 am
Forum: ESP32 boards
Topic: OSError(84,)
Replies: 16
Views: 5329

Re: OSError(84,)

Hi Marcidy, thanks for responding. The context is a device that is connected to the utility grid. There are occasional power outages and brownouts. Due to bad experience with those outages and file system corruption over the past few years, with no success trying various "fixes", we decided to move ...
by edf012
Fri May 13, 2022 2:59 pm
Forum: ESP32 boards
Topic: WLAN interface creation problem
Replies: 6
Views: 4982

Re: WLAN interface creation problem

Oh and don't forget to get the MP heap pointer fix.