Closed rhscdn closed 3 years ago
Yes it looks like software serial and task manager are using std::atomic to provide atomic access to variables.
We test every release with ESP8266, but there must be a conflict in libraries in software serial. We'll need to try this locally to see what the incompatibility is and feed back.
Thanks, that was my interpretation as well. I'm new to TaskManagerIO and didn't dig too deep. Let me know if I can provide any other info.
recreated and fixing. We will move to the new method of using atomic, that is
We'll switch to using the direct compare and exchange function too. Should be in the repo shortly once coded up and tested.
I've committed a potential fix to master, found two issues, first the include was inside a namespace, second, we were using an older way to include atomic, fixed both potentially. Tested best I could locally, could you feed back if it works for you. I'll do a test on ESP32, AVR and MKR to get more confidence and then re-release.
Tested on ESP8266, ESP32, SAMD and AVR. Releasing.
Are there any known incompatibilities between TaskmanagerIO and SoftwareSerial in the arduino environment? I'm trying to run TaskManagerIO on a Wemos D1 Mini (R2). I'm seeing definitions clashing and unexpected behaviour.
NB: I should also say that I'm new to TaskManagerIO.
If I include TaskManagerIO.h before SoftwareSerial.h I get:
If I reverse the order and include SoftwareSerial.h before TaskManagerIO.h, the build fails: