S8 CO2 reading of -1

This is a lil over my head. What I think I’m understanding is that there isn’t a fix currently because the hardware serial is left open for debugging?

Sorry for maybe newbie question.
When esp32 will be ready, we can manage to swap our esp8266 with esp32 by keeping existing pcb and all other hardware?
Thanks

Yes this is the idea.

In particular, is this the candidate?

C3 Mini V2.1.0 - LOLIN WIFI Bluetooth LE BLE IOT Board ESP32-C3FH4 ESP32-C3 4MB FLASH micropyone Arduino compatibile

Yes, or alternatively the S2.

@Justin_Boyer @hanuman @ttielemans We published an update on the Arduino Library (v 2.1.0) that we believe addresses some of the -1 issues on the CO2 readings. Could the people that have issues, please try the update and let us know if it works better.

@ttielemans the issue about the shift to Response[1] is something we are currently looking into and hopefully we can fix that issue as well.

@Justin_Boyer @hanuman @ttielemans Just came across another issue. Please wait with the testing until this is fixed as well. Will let you know.

1 Like

@Justin_Boyer @hanuman @ttielemans
Version 2.2.0 has been published as Arduino library as well as on the website for direct flashing.
I am happy to report that I do not see any -1 anymore. Please have a look and report back.

@ttielemans many thanks for the shift response code. That seemed to have helped for the edge cases when we got reports of around 530ppm from the S8.

1 Like

Done my duty. Updated the code. Let’s see.

We built two of the DIY pro kits last month, and both worked briefly (approx 3 days each) and are experiencing both the -1 CO2 reading and the 65XXX issue. Tried flashing that new 2.2.0 code and the CO2 is now reading at -3 and the particulate sensor is reading persistently at 0.

Please send pictures of both sides of the boards. The 65k error indicates some issue with the soldering/connections.

How does it go so far with the new version?

The only way for me to see if there was a -1 error was to look at the OLED screen, so it is not very reliable, however since the update, I don’t remember seeing the -1 error even once. I have the device in my living room and look at it every now and then and it seems stable. Would the -1 error be recorded/sent to airgradient servers somehow? If so that would be the better way to make sure they are not happening.

We can see the -1 on our server error logs but since we have made the update we do not get these anymore.

Can this be seen on the user side of the dashboard somehow? If not then you could look at my logs on the server.

I can check this on our server logs. Please send me a PM with your sensor id.
Please also check if you use the latest example code in your sketch. Because if you use that, the -1 are not sent from the device. If you only updated the library but did not change your code, we should still receive the errors on our server.

Basically if you have this line in your code:

Function: sendToServer

+ (pm25 < 0 ? "" : ", \"pm02\":" + String(pm25))

We will not get the errors anymore.

I had updated both the library and the sketch code so I guess nothing will show.

If you remove above check and reflash I can check the server logs in a few days.

From
+ (pm25 < 0 ? "" : ", \"pm02\":" + String(pm25))
to
+ ("" : ", \"pm02\":" + String(pm25))

?

No, the whole line should be:

      + ", \"pm02\":" + String(pm25)
1 Like