Background first, if you please:
RadStudio 12.2, in C++ on Windows 11.
Monitors status information from up to 4 microprocessor nodes using TTL to USB converters. Each node is a separate board with its own interface.
Ideally, I use a serial port package in C++ which (non-blocking) reads a package and updates a data panel on the display. Decoding the packet is no problem, getting it, is.
Communication is in ASCII encoded packets to avoid premature terminating zeros, so string reads will work.
Tried the APRO interface, but documentation seems to be lacking, with lots of features in the packages I don't need and no basic startup information.
Tried the BOOST rabbit hole, which I somewhat got to work (gotta love the documentation (if any)). and then lost the solution. It seems to be blocking only, which I could tolerate if I could create a task.
I could do this with a microprocessor, it would simply mirror the drivers in the hardware, using FreeRTOS tasks to read each port (one task = 1 port), and tasks can be blocking without a problem.
Anybody know of a well documented serial package that can do non-blocking reads, C++ compatible? Then I need to do multiple threads, haven't looked at that yet in C++.
I don't really have a problem with C++, but the add-ons are a problem. Got the UI (more or less customizable) up and running, custom buttons (made from panels) can be enabled/disabled with different text for pressed, different colors when active.
so the C++ is not a problem.
Thanks in advance
Harvey