When trying to do some (debug) logging over syslog I ran into issues CYW43 SoC (or driver?) apparently crashing.
Symptoms "[CYW43] Bus error condition detected" error messages flooding console output, and radio stopping working (cannot ping the device anymore and cannot toggle LED on Pico W anymore either).
Problem appeared after sending moderate amount Syslog UDP packets (less than 10 packets/second).
(If slowing down rate of UDP packets being sent issue seems to go away...)
Errors observed on Pico W console output:
...
[CYW43] Bus error condition detected 0xffff
[CYW43] Bus error condition detected 0xffff
[CYW43] Bus error condition detected 0xffff
[CYW43] Bus error condition detected 0xf0
[CYW43] Bus error condition detected 0xffff
[CYW43] Bus error condition detected 0xe0ff
[CYW43] Bus error condition detected 0xff
[CYW43] Bus error condition detected 0xffff
[CYW43] Bus error condition detected 0xffff
[CYW43] Bus error condition detected 0xffff
[CYW43] Bus error condition detected 0xe0
...
More details here: https://forums.raspberrypi.com/viewtopic.php?t=340605
Issue seems reproducible with FanPico firmware on a standalone Pico W.
To reproduce checkout the "cyw43_buserror" branch: https://github.com/tjko/fanpico/tree/cyw43_buserror
$ git clone https://github.com/tjko/fanpico.git
$ cd fanpico
$ git submodule update --init
$ git checkout cyw43_buserror
$ mkdir build
$ cd build
$ cmake -DPICO_BOARD=pico_w -DFANPICO_BOARD=0804D ..
$ make
After loading fanpico.uf2 (or fanpico.elf) to Pico W, connect to console (USB or TTL Serial).
Firmware uses SCPI like command set, so check that unit responds by issuing SCPI command:
Then configure WiFi and syslog server (no need to configure syslog server if DHCP provides it) and save to flash:
SYS:ECHO 1
SYS:WIFI:SSID myssid
SYS:WIFI:PASSWD mypassword
SYS:WIFI:SYSLOG 192.168.1.100
SYS:LOG 7
SYS:SYSLOG 7
CONF:SAVE
*RST
Unit should now reboot and connect to WiFi network. For this to work DHCP would need to provide NTP server so that Pico can get time (for syslog messages) and there be a syslog server (or at least some device that doesn't generate any ICMP responses on received UDP packets on syslog port...)
I've observed CYW43 driver to start producing Bus errors anywhere from 100-600 seconds...
Attached is sample console log captured (where 'crash' seems to occur around 184 second mark).
picow-cyw43-crash.log
When trying to do some (debug) logging over syslog I ran into issues CYW43 SoC (or driver?) apparently crashing.
Symptoms "[CYW43] Bus error condition detected" error messages flooding console output, and radio stopping working (cannot ping the device anymore and cannot toggle LED on Pico W anymore either).
Problem appeared after sending moderate amount Syslog UDP packets (less than 10 packets/second).
(If slowing down rate of UDP packets being sent issue seems to go away...)
Errors observed on Pico W console output:
More details here: https://forums.raspberrypi.com/viewtopic.php?t=340605
Issue seems reproducible with FanPico firmware on a standalone Pico W.
To reproduce checkout the "cyw43_buserror" branch: https://github.com/tjko/fanpico/tree/cyw43_buserror
After loading fanpico.uf2 (or fanpico.elf) to Pico W, connect to console (USB or TTL Serial).
Firmware uses SCPI like command set, so check that unit responds by issuing SCPI command:
Then configure WiFi and syslog server (no need to configure syslog server if DHCP provides it) and save to flash:
Unit should now reboot and connect to WiFi network. For this to work DHCP would need to provide NTP server so that Pico can get time (for syslog messages) and there be a syslog server (or at least some device that doesn't generate any ICMP responses on received UDP packets on syslog port...)
I've observed CYW43 driver to start producing Bus errors anywhere from 100-600 seconds...
Attached is sample console log captured (where 'crash' seems to occur around 184 second mark).
picow-cyw43-crash.log