Open gitcnd opened 1 week ago
Update; while adding b'\xff\xff\xff\xff\xff\xff' as a peer seems to stop the error - the corresponding receiver listening to broadcast traffic does not receive anything.
I'm planning to take a look at this and https://github.com/adafruit/circuitpython/issues/7903. For reference: ( https://docs.espressif.com/projects/esp-idf/en/stable/esp32/api-reference/error-codes.html )
ESP_ERR_ESPNOW_INTERNAL (0x306a): Internal error
ESP_ERR_ESPNOW_NOT_FOUND (0x3069): ESPNOW peer is not found
leave a note here if you've done (or are doing) any work on it, so no effort gets duplicated.
I was unable to get circuitpython to reliably (or in most cases - at all) communicate with micropython over espnow (packet corruption and loss mostly when it semi-worked, or nothing at all most of the time probably due to code issue in the peer address setup/handling). I was unable to work out where/how in the code to fix this, or where the issue might be (I used "printf()" in the C to emit debug info - couldn't work it out still). For now - I'm giving up on this.
CircuitPython version
Code/REPL
Behavior
Description
Change the "if 0:" to "if 1:" and this is what we see:-
The logically identical code in micropython works fine
MicroPython version:
Additional information
It also does not allow channel numbers - the below errors out:-
peer = espnow.Peer(b'\x24\xdc\xc3\x8b\xe1\xc8', channel=9)
as mentioned in https://github.com/adafruit/circuitpython/issues/7903The "receiver" side of the code does seem to semi-work (gets packets from my micro-python version) but experiences a very high number of read error exceptions
espnowclient.py