We have rolled out a backend change today that lets devices that are not configured in the AG backend update. Somehow some end up in an update loop. We will revert the change temporarily and this should stop the loop.
Unfortunately this doesnāt seem to help. Devices running 3.3.6 continue to loop, now probably faster compared to before. We need to further investigate what has changed in the firmware.
Ok thanks for the update, please keep us posted here.
I have 3 I-9PSL-DE sensors. Should we downgrade to 3.2.0 ? My CO2 readings went dead this morning and have not come back. The display reads āCO2: āā
I had that happen soon after I got the sensor. A soft reboot (reboot via the same tool that does software upgrades and shows logs) didnāt resolve it. I had to fully unplug and re-plug to get the CO2 sensor working again.
In my case I had to downgrade to 3.2.0 in the dashboard and then stop prometheus polling the sensors http endpoint (to stop crashing in the middle of downgrade). So far 3.2.0 has been fine, seems like the team is still working through a few bugs.
I am also experiencing the same issue, just a few hours ago on 5/9/2025 ~10PM EST, my airgradient decided to start a firmware update automatically and has been stuck in an infinite reboot-reupdate loop for the past hour.
What is that latest info about this issue?
Both my devices (I-9PSL and O-1PP) are stuck in the update loop. What I have tried so far is only with the indoor unit as it is at my desk which is convenient, the outdoor unit is mounted outsideā¦
I have tried reflashing with 3.3.6, on the serial console I could see the panic and it rebooting and going into the firmware update. After reflashing and erasing data the panic appears to have stopped, but it is still in the update loop.
I flashed it with 3.1.13 but the first thing it does after booting is update itself to 3.3.6.
I donāt use the dashboard, just locally get the stats into home assistant, so when I setup the wifi after flashing I select the option to not send data and not get updates, but it still does the updateā¦
I donāt have the tooling set up to build firmware from source, so am relying on binaries of the firmware.
Issue of boot-loop started today (May 10, 2025) on my AirGradientOne.
Part of the log that seems interesting is shown below. I use it indoor, so values are not shared and I have no account (hence the 400, which was always the case).
You can see HA asking for info and from that answer (payload) you can see that firmware is already on 3.3.6
[WifiConnector] Info: Wait for configure portal
[WifiConnector] Info: WiFi Connected: WLAN IP: [redacted]
[LocalServer] Info: Init: airgradient_744dbdcb5648.local
MQTT is not configured, skipping initialization of MQTT client
[AgWifiClient] Info: Post measures to [redacted to prevent link block]hw_airgradient_com/sensors/airgradient:744dbdcb5648/measures
[AgWifiClient] Error: Failed post measures to server with response code 400
[AgWifiClient] Info: Fetch configuration from [redacted to prevent link block]hw_airgradient_com/sensors/airgradient:744dbdcb5648/one/config
[AgWifiClient] Error: Failed fetch configuration from server with return code 400
---- PAYLOAD
{ābootā:0,ābootCountā:0,āwifiā:-72,āledModeā:āco2ā,āserialnoā:ā744dbdcb5648ā,āfirmwareā:ā3.3.6ā,āmodelā:āI-9PSLā}
Display brightness: 10
Success create networking task
Firmware update startingā¦
[OTAWifi] Info: Image size 1727616 bytes
OTA progress: 2
OTA progress: 5
OTA progress: 8
OTA progress: 11
Having the same issue.
Rebooted / Re flashed and issue still exists.
Ok in offline mode.
Exactly the same situation and questions as above post from flipsideā¦
Hesitant to turn the thing off if itās constantly updating firmware
Thanks, that has fixed the loop in my airgradient one. Can the auto update be disabled? I am using HA integration
I had configured my airgradient one not to communicate with remote servers, which the configuration page implies would not allow for any automatic firmware updates. That seems to not have been the case (unless the Home Assistant integration will automatically update the firmware that Iām not aware of). Upon seemingly automatically updating to 3.3.6, the unit would repeatedly boot, check for firmware updates, the hw.airgradient API call would always return a new firmware (regardless of what was passed in as the current firmware version) and then the unit would flash and reboot. Wash, rinse, repeat. Iām using past-tense here because I flashed the ESPHome firmware in the meantime in order to restore functionality to the unit. Iām not thrilled that, even though I had it configured to not talk to remote servers, a bug in a remote server endpoint seems to have been able to effectively brick (I guess technically bootloop) my device.
Mine had the firmware update loop problem yesterday for something like half a day
I powered it on again after the rollback, and the display finally showed āup to dateā instead of ānew versionā.
Itās not connected to the ācloudā but i only use it in my local network with home assistant.
Same here. One outdoor and one indoor sensor, running FW 3.3.6. Both crashing as soon as Prometheus tries to get the metrics. Has the issue been identified?
The update loop fixed itself for my two devices. I powered them both off as it seemed a waste to constantly update. I started getting things set up to build firmware from github, but before I got through that I powered my indoor unit back on and it did not update, it remained at 3.3.6. Same for my outdoor unit.
Is there still a bug that the disableCloudConnection setting doesnāt work when set during wifi setup?
Hi @everyone,
We and other AirGradient users, identified two issues that caused the bootloop in version 3.3.6 before the server changes last night. Unfortunately, these were missed during testing. We actually had a fix ready for about a week, but delayed releasing it to ensure full stability.
The two issues are:
- Devices using Prometheus
GitHub Issue #309 - Devices with the āDisable Cloud Connectionā option enabled in the Wi-Fi web portal
GitHub Issue #312
Regarding the bootloop that occurred last night: it was triggered by server-side changes related to firmware updates for monitors that are not registered on our server but still want to have automatic firmware updates features. Our team already reverted those changes.
In summary:
If youāre not using Prometheus and havenāt enabled āDisable Cloud Connectionā in the Wi-Fi web portal, you should no longer experience any issues. For those affected by either of these two conditions, weāve just released version 3.3.7, which addresses both problems.
This update will be available today via automatic updates and will also listed on our firmware page here.
Thank you to everyone who reported these issuesāyour feedback really helps us improve. Weāre sorry for the inconvenience and appreciate your patience and support.
Hi Samuel,
Havenāt been able to get my AG One to update over the air automatically.
Also canāt find 3.3.7 on the firmware page, still showing 3.3.6