Is this a typo? the latest firmware on the page is still 3.0.6
Absolutely. Here is what I have if we want something to discuss on:
New Firmware 3.0.8 is available here.
- Fixed -1 readings on PM module
- Disabled reboots in offline mode
- Fixed mDNS double broadcast
- Various small bug fixes
Not (yet) included is endpoint on how to make configurations to monitor locally. We need to see what is the best approach for this (pull from monitor or push to monitor).
This update should fix the issue when people got “-” instead of PM values. Please feedback if you notice anything.
Next big thing in the pipeline is OTA capability.
Hello,
I am bit confused. My OpenAir kit just arrived and when commissioned to the Dashboard it seems to have fw 0.4.0. This fw is not listed in the Beta Firmwares at all.
Monitor Maker: AirGradient
Linked Location: Home
Firmware Version: 0.4.0
Model: O-1PS
Monitor Commissioning Date: Mar 20, 2024
It also seem that I am having issues with MQTT - I did set MQTT in the Dashboard into:
mqtt://user:pass@192.168.1.1:1883
But I do not see any connection in the tcpdump on my MQTT server originated from the sensor (except of the arp requests for itself).
Please flash the latest firmware by following the steps below.
https://www.airgradient.com/documentation/open-air-pst-kit-1-3/#firmware
This will support MQTT.
Yep, you are completely right. I was confused by fw versions, thought that 0.4.0 is 4.0.0. Seems that units are shipped with some old fw versions. Anyway flashed, fixed, MQTT is working, thank you.
Hi there, I got the DIY BASIC kit in June of 2023, soldered it, flashed it, and have been using the airgradient dashboard with it. I didn’t update it since then, until today, when I tried flashing with version 3.0.8 - I prefer not to use Chrome, I build and flash with the Arduino IDE.
Long story short, I needed this change for the device to work with the airgradient dashboard service:
--- a/examples/BASIC/BASIC.ino
+++ b/examples/BASIC/BASIC.ino
@@ -723,7 +723,9 @@ static void dispHandler() {
displayShowText(ln1, ln2, ln3);
}
-static String getDevId(void) { return getNormalizedMac(); }
+static String getDevId(void) {
+ return getNormalizedMac().substring(7,12);
+}
/**
* @brief WiFi reconnect handler
This is because when I registered by DIY BASIC monitor last year, it took the last 5 hex chars of the mac-address as the device ID. But now (the example sketch for the DIY Basic from) firmware 3.0.8 is using the full 12-char mac address as the ID. So … are devices registered now with the full 12-char ID, or is this a bug in the DIY BASIC monitor sketch example in version 3.0.8?
How I figured this out, was seeing this in the serial output:
Post payload: {"wifi":-36,"boot":0}
Post response failed code: 400
Device id: d8f15b084ea4
(I’m gonna go ahead and not worry about the security implications of revealing my device mac addr, but I do realize that this ID from the mac addr is a kinda important though fairly weak secret, maybe that’s why it was increased to full 12 chars?)
… and testing this url from the code with curl:
String uri = "http://hw.airgradient.com/sensors/airgradient:" + id + "/one/config";
… showed that the short 5-char ID I’m familiar with worked, while the long one resulted in 400 “sensor is not configured”.
If it’s not just a bug in the sketch example and/or distributed binary firmware, perhaps the server should check if there’s a registered short ID that happens to match the end of the long ID, and then auto-migrate the short-ID.
Yes that’s a good point. I will discuss it with our developers.
I have encountered an issue with reconnecting to WiFi after turning off the router for some time. After turning it on, Airgradient One with firmware 3.0.9 can’t connect to WiFi until I turn it off (unplug and plug it back in). This issue has likely been occurring since version 3.0.8.
Example: At 09:00, WiFi is disabled, and AirGradient One loses connection. At 11:00, WiFi is enabled again, but AG One can’t reconnect until I turn it off and then back on.
Thank you for reporting this. I let our firmware developer know.
I was just coming here to report this. My router is attached to an old UPS that decided it isn’t going to work anymore this morning. I swapped the UPS with another one, but the airgradients were stuck in “WiFi N/A” mode until I power cycled them.
If the AG is going to revert to the AP mode, maybe it should try to reconnect periodically. It would be nice to have a switch to disable this behavior entirely as well.
Kai
How do I tell my 3.0.9 model to use my mqtt broker, which is mosquito running on a pi3, at address 192.168.1.21. No security, default everything, nothing fancy (all very local).
Whatever I put in the mqtt field under place settings, it won’t let me proceed.
Set up MQTT parameter on the cloud UI. The AG device Will grab it from the cloud portal and use it locally
My question was more ‘what do I type in’ since just putting in the IP address of the server doesn’t work. It also ought be possible to set/reset this stuff on the local device, without relying on clouds!!
By the way, anyone using the restful .json access described back in post31 needs to adjust it since several of the items have been relabeled since then … the new data output looks like:
{“wifi”:-55,“serialno”:“xxxxx”,“rco2”:978,“pm01”:0,“pm02”:0,“pm10”:0,“pm003Count”:0,“atmp”:22.65,“rhum”:49,“tvocIndex”:130,“tvoc_raw”:30728,“noxIndex”:1,“nox_raw”:17124,“boot”:320,“ledMode”:“co2”,“firmwareVersion”:“3.0.9”,“fwMode”:“I-1PSL”}
so the underscores have been replaced and letters have changed case, in pm003Count, tvocIndex, and noxIndex.
The regex is probably too aggressive. We will fix it to allow without authentication
Yes we have a few changes to make it consistent with our general API. One of them is to move to camel case.
Please keep in mind that this is still in beta.
Ah thanks, I was not giving it the user id, on the assumption it would default to something. Will try again…
Just loaded 3.0.9 onto some new one v9 sensors and noticed that the air quality values don’t show up in the prometheus /metrics ? The values however show up on the air gradient dashboard and the device oled.
curl ag/metrics | grep -v #
airgradient_info{airgradient_serial_number="<snip>",airgradient_device_type="ONE_INDOOR",airgradient_library_version="3.0.9"} 1
airgradient_config_ok{} 1
airgradient_post_ok{} 1
airgradient_wifi_rssi_dbm{} -43
airgradient_co2_ppm{} 891
airgradient_tvoc_index{} 101
airgradient_tvoc_raw{} 29016
airgradient_nox_index{} 1
airgradient_nox_raw{} 16255
airgradient_temperature_celsius{} 27.26
airgradient_humidity_percent{} 47.00
Was there any changes lately that might cause this ?