Paul Hollinsky
bb7719d185
POSIX Drivers: Clear disconnected status when closing
...
This allows us to properly re-open if we were
previously disconnected.
2021-04-23 16:59:48 -04:00
Kyle Schwarz
a5b27a15b0
Allow disconnections to be signaled by drivers
...
This allows for disconnections to be detected quickly
where possible.
It also makes sure other driver errors aren't thrown
in the event of a disconnection.
2020-10-08 17:38:10 -04:00
Kyle Schwarz
7cd008a003
Switch to non-blocking I/O for STM32
...
STM32 can latency is not as good as it could be when it is synchronous due to read() timeouts,
so switch to asynchronous reading with select().
2020-08-25 16:14:47 -04:00
Kyle Schwarz
4cd897badd
Fix deadlock with Driver::write
...
Use a spin lock to recheck the queue size until it has room to push.
2020-08-14 16:57:52 -04:00
Paul Hollinsky
ef34959c91
STM32 device finder for Darwin
2020-02-14 23:18:34 -05:00
EricLiu2000
3358241abe
Reordered error downgrading, order of going offline, and renamed locks
2019-08-06 10:32:19 -04:00
EricLiu2000
f41b5c4a79
Removed cancellation of error downgrading after closing, was causing read access violations.
2019-08-01 14:07:42 -04:00
EricLiu2000
66126b2b61
Downgraded non-user thread errors to warnings
2019-07-24 13:22:17 -04:00
EricLiu2000
50dba62a89
Event refactor builds on Windows
2019-06-24 17:59:45 -04:00
EricLiu2000
965679c370
Added error checking and removed some redundancy from device isOpen()
2019-06-13 16:01:35 -04:00
Paul Hollinsky
0dae7d4354
STM32: Check that termios attributes are set successfully
2019-05-14 15:21:05 -04:00
Paul Hollinsky
6ffc364eba
Transmits now block when the buffer fills
2019-05-02 16:33:44 -04:00
Paul Hollinsky
8a147e2c3f
Purge read and write queues after a close succeeds
2018-11-16 18:48:28 -05:00
Paul Hollinsky
07a5dc4118
Allow threads to reopen after closing
2018-11-16 17:08:53 -05:00
Paul Hollinsky
92d98f8bd5
Remove all debugging printouts to stdout
2018-10-30 15:02:01 -04:00
Paul Hollinsky
8e6b0d0b0e
Refactor for a central include directory
2018-10-22 11:52:34 -04:00
Paul Hollinsky
2099ba9d1e
Resolve macOS warnings and standardize style
2018-09-24 19:04:20 -04:00
Paul Hollinsky
d6100f99d1
It is not necessary to set bitrate for the USB serial on POSIX
...
Additionally, this fixed build on macOS as they don't support up to `B500000` in their `termios.h` for some reason
2018-09-20 14:44:32 -04:00
Paul Hollinsky
ef8d764aa6
Move platforms around, most of POSIX will be common implementation
2018-09-20 14:40:24 -04:00