Firmware update breaking PA-II

Does support actually exist? I’ve e-mailed about issues with my PA-II on three separate occasions and never received a reply. I’ve talked to Adrian Dybwad in the Facebook group, but never gotten any followup on my issues.

To repeat the issue here:

I have been talking with Adrian Dybwad on the PurpleAir Facebook group about my older outdoor PA-II that appears to be failing. It looks like it works fine until the firmware updates, then it goes south and I get gibberish (wrong baud rate?) when I try and connect to it with a USB cable and the PurpleAir app on my Mac.

Since I can’t flash the firmware with the PurpleAir app since it relies on Python 2 which no longer exists on the Mac, I have been using esptool as follows:

❯ esptool.py --port /dev/cu.usbserial-83340 write_flash 0 /Applications/PurpleAir.app/Contents/Java/firmware/SensorFirmware6.02f.bin
esptool.py v4.5
Serial port /dev/cu.usbserial-83340
Connecting....
Detecting chip type... Unsupported detection protocol, switching and trying again...
Connecting....
Detecting chip type... ESP8266
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: 5c:cf:7f:5c:9c:d6
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Flash will be erased from 0x00000000 to 0x00074fff...
Compressed 479152 bytes to 335218...
Wrote 479152 bytes (335218 compressed) at 0x00000000 in 32.4 seconds (effective 118.3 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...

Once I do this, I can then connect to the PA-II with the app and see the logs. I have attached the logs from a couple of connection attempts. In it you can see the first few connection attempts where I get gibberish. Eventually you will see valid text after I flashed it to 6.0.2f, followed by the PA-II contacting the update server and updating the firmware. From there we’re back to gibberish. A little further on you can see where I again flashed to 6.0.2f and this time the update failed. From there I get what appears to be valid data. At this point the web page is also responding at the correct IP.

However, as I was typing this I just saw it successfully download a new firmware version… and now I’m back to the state where it isn’t responding to ping, the serial output in the app is unreadable, and the fallback AP isn’t showing up why I try and connect that way. I just tried power-cycling it and I never see a request come into my DHCP logs.

Short of blocking the request to the update server at my firewall (which is what I have done for now), where do we go from here? Is there something in this new firmware that doesn’t play will with older PA-II devices? Is it possible to get the new firmware file so I can try uploading it by hand and see if that makes any difference? Is there any hope of an updated Mac client that can read the console output and doesn’t have a dependency on python version 2 so it can write firmware updates?

1 Like