-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
SoftwareSerial is broken #6
Comments
Will look into this, hopefully sometime this weekend. |
Hi, same here "Incomplete message header". The sensor is early PMS7003. [update] |
Alas, I'm yet to find time to look into this issue.
Invalid messages are drop. The status returned should tell what was the problem. PMserial/examples/SoftwareSerial/SoftwareSerial.ino Lines 35 to 63 in 5555925
Now, I'm not sure what would be the best way to deal with thins kind of errors. |
I've just started to use this library and it does work with PMS7003 on ESP32 (hardware serial). |
Hard to say. I'm using another library but on soft serial as well, and it
works seamlessly. So that is specific combination of soft serial, this
library and ESP8266.
|
Same issue here with ESP8266, "Incomplete message header", you were mentioning the possibility to add a retry in the read, could you further explain? I can try I have activated the debug and the following is the output: 12:25:43.019 -> Booted |
Further update: I have disabled one by one all the error triggered by the library to let the SW run till the end. I can see the raw numbers changing but the calibrated numbers are never !=0: 12:35:00.747 -> PM1.0 0, PM2.5 0, PM10 0 [ug/m3] |
Looks like it goes deeper than this library Here is the PMSA003 output of the debug sketch for [env:d1_mini]
platform = espressif8266
board = d1_mini
build_flags = -D PMS_RX=D7 -D PMS_TX=D6
increasing the waiting time for a complete message from 1s to 5s deals with the timeout error,
The header is incomplete on the 1st message, but the next ones look fine. Explicitly waiting until the 32 bytes are available does not solve the incomplete message header error. But with those 2 small changes on a small version of the esp3266 framework, [env:d1_mini]
platform = espressif8266@2.3.0
board = d1_mini
build_flags = -D PMS_RX=D7 -D PMS_TX=D6
|
Looks like the failed decoding with espressif8266@2.4.0 is related to plerup/espsoftwareserial#63 ; downgrade the platform
[env:d1_mini]
platform = espressif8266@2.3.0
board = d1_mini
build_flags = -D PMS_RX=D7 -D PMS_TX=D6 ; upgrade SoftwareSerial
[env:d1_mini]
platform = espressif8266
lib_deps = EspSoftwareSerial@>=6.7.1
board = d1_mini
build_flags = -D PMS_RX=D7 -D PMS_TX=D6 |
Thanks, worked after downloading the latest SWserial and killing the one under AppData\Local\ ! |
Doesn't work with 7003 under Arduino
The text was updated successfully, but these errors were encountered: