>>> Join Us in the Fight Against Air Pollution

AirGradient Forum

One V9 Compile Issue

For the web method, try the steps on the Boot Error section
https://www.airgradient.com/documentation/one-v9/#software

Thanks, I was able to get it working on the web!

I would also like to get it working through Arduino software so I could make some custom modifications. Any suggestions on things I could try?

Try grabbing the latest file from the GitHub repo as it has been modified recently, so just double checking you have the most recent

Hi I recently got a One V9 and was trying to flash the firmware so I can redirected it to a local server. However I have run into the same problems as others in the thread and there seams to be no clear solution. I currently using the latest ONE_V9.ino from the GitHub repo. I have made sure that all the libraries are on the correct versions they where tested with.
If in the board manager I select 3.0.0-alpha for esp32 I get the error class HardwareSerial' has no member named 'setTxTimeoutMs'
If I downgrade to 2.0.11 I get the error

 PMS pms1(Serial0);
          ^~~~~~~
F:\GitHub\airgradient-arduino\examples\ONE_V9\ONE_V9.ino:71:10: note: suggested alternative: 'Serial2'
 PMS pms1(Serial0);
          ^~~~~~~
          Serial2
F:\GitHub\airgradient-arduino\examples\ONE_V9\ONE_V9.ino: In function 'void setup()':
F:\GitHub\airgradient-arduino\examples\ONE_V9\ONE_V9.ino:146:12: error: 'class HardwareSerial' has no member named 'setTxTimeoutMs'; did you mean 'setRxTimeout'?
     Serial.setTxTimeoutMs(0); // <<<====== solves the delay issue
            ^~~~~~~~~~~~~~
            setRxTimeout
F:\GitHub\airgradient-arduino\examples\ONE_V9\ONE_V9.ino:154:3: error: 'Serial0' was not declared in this scope
   Serial0.begin(9600);
   ^~~~~~~
F:\GitHub\airgradient-arduino\examples\ONE_V9\ONE_V9.ino:154:3: note: suggested alternative: 'Serial2'
   Serial0.begin(9600);
   ^~~~~~~
   Serial2

exit status 1

Compilation error: 'Serial0' was not declared in this scope 

Clicking the verify button works and does compile if I select Lolin C3 Mini.
But when I plug the board in it shows up as a ESP32-S3-USB-OTG. I have also been able to flash it via the web method but as I said I am trying to change the server it messages

Is there an older version of the git repo that works since things are being redone?

Ok so I some how got it to work, My PM2.5 sensor started showing - while it was working before so I went to do the web firmware flash and then it showed up as a C3 mini in Arduino and I was able to flash it. (Though now my PM2.5 level is just changing between 0 and - and occasionally 1. I will try to re-seat the ribbon cable and hope that works.

I think you have the wrong board selected some how. You have the d1 mini selected but are using the the One_v9.ino

I dont mean to hijack this thread, but I am too trying to use local server to send my data to using prometheus. Has anyone found a way to flash One_v9.ino with such modifications?