Kyle Schwarz
a9157c82e5
Add device sharing support
2022-12-13 11:46:32 -05:00
Kyle Schwarz
e46755f120
Device: RED2: Add missing Ethernet2
2022-11-15 12:37:41 -05:00
Kyle Schwarz
0101467154
Communication: Atomic sync messages
...
If waitForMessageSync() is called in two threads for the same message
the callback for both will be invoked with the first send.
2022-10-21 14:49:03 +00:00
Kyle Schwarz
0fc676e576
A2B: Resolve warnings
2022-10-20 19:38:34 -04:00
Kyle Schwarz
7f22286838
Build: Only search for enabled drivers
2022-10-17 21:01:24 -04:00
Kyle Schwarz
643768fb6a
Device: ValueCAN3: Drop ftdi.h include
2022-10-17 21:01:24 -04:00
Kyle Schwarz
9871430288
RAD-A2B: Initial support
2022-09-15 11:13:45 -04:00
Kyle Schwarz
2e296dc8d3
ConcurrentQueue: Update to HEAD
2022-09-09 15:46:46 -04:00
Kyle Schwarz
b35fab754c
Device: ValueCAN3: Fix PID
2022-08-02 14:33:43 -04:00
Kyle Schwarz
9ef01e2d3d
Optional: nonstd to std
2022-07-22 01:27:39 -04:00
Kyle Schwarz
1bb33156f7
Device: Use lambda instead of std::bind
2022-07-22 02:47:10 +00:00
Kyle Schwarz
a0f73755e8
Build: Bump required C++ to 17
2022-07-21 16:22:52 -04:00
Kyle Schwarz
ab54697745
Device: Retain Device objects between FindAll() calls
...
FindAll() now retains a list of Devices that have already been created
and returns their existing object instead of a new one.
2022-07-15 16:03:54 -04:00
Kyle Schwarz
0d0b7f00bd
Merge branch 'master' into v0.3.0-dev
2022-07-15 13:02:26 -04:00
Kyle Schwarz
1a28fbf5ad
ThirdParty: FatFs: Enable PIC
...
Fixes linking with GCC by adding -fPIC
2022-07-15 12:34:07 -04:00
Kyle Schwarz
67c8e6a952
Build: Associate pcap include dir with icsneocpp
...
If an external project links to the icsneocpp target and pcap has
been installed in a non-standard location, the build will fail to find
pcap.h because PCAP_INCLUDE_DIR is not associated with the
target.
Closes #58
2021-09-20 21:55:56 -04:00
Kyle Schwarz
80c6816a54
Build: Associate libusb include dir with icsneocpp
...
If an external project links to the icsneocpp target and libusb has
been installed in a non-standard location, the build will fail to find
libusb.h because LIBUSB_INCLUDE_DIR is not associated with the
target.
Closes #57
2021-09-20 21:55:56 -04:00
Kyle Schwarz
c5314884ce
Build: Associate pcap include dir with icsneocpp
...
If an external project links to the icsneocpp target and pcap has
been installed in a non-standard location, the build will fail to find
pcap.h because PCAP_INCLUDE_DIR is not associated with the
target.
Closes #58
2021-09-20 21:38:34 -04:00
Kyle Schwarz
82954d9190
Build: Associate libusb include dir with icsneocpp
...
If an external project links to the icsneocpp target and libusb has
been installed in a non-standard location, the build will fail to find
libusb.h because LIBUSB_INCLUDE_DIR is not associated with the
target.
Closes #57
2021-09-20 21:31:13 -04:00
Kyle Schwarz and Paul Hollinsky
33a84bf8ce
PCAP: Switch to pcap_dispatch()
2020-11-17 15:05:14 -05:00
Kyle Schwarz
ffbb5e20c5
Add description field for messages
...
Closes https://github.com/intrepidcs/libicsneo/issues/28
2020-11-13 16:15:04 -05:00
Kyle Schwarz and Paul Hollinsky
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
12463ea2f4
Remove globs from CMake
2020-09-02 12:19:17 -04:00
Kyle Schwarz
1bb1ab7a82
Add CoreFoundation and IOKit frameworks for macOS
2020-08-28 13:34:28 -04:00
Kyle Schwarz
044c2bb86f
Detect device disconnects
...
When a device is sending any traffic, the device is considered to be connected. If no traffic if being received from the device, a status is requested. If the device fails to report the status back in a timely manner, it is considered to be disconnected.
If the device fails to reply to the status request, it is important to confirm that the device is not applying settings. While the device is applying settings, it will not be sending heartbeats or able to process a status request.
2020-08-27 13:20:48 -04:00
Kyle Schwarz
4c2cd918de
Revert "Add FindLibUSB.cmake for libftdi"
...
This reverts commit dfe5845b3c .
2020-08-27 12:22:24 -04:00
Kyle Schwarz and Paul Hollinsky
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
dfe5845b3c
Add FindLibUSB.cmake for libftdi
2020-08-20 12:44:05 -04:00
Kyle Schwarz and Paul Hollinsky
b6692d3762
Add missing C++ guards
2020-08-18 16:01:51 -04:00
Kyle Schwarz
3e4b595fe4
Resolve signedness warnings on GCC
2020-08-18 15:37:05 -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
Kyle Schwarz
afda617894
Remove trailing white-space
2020-08-11 13:42:13 -04:00
Kyle Schwarz
1d286be1e4
Switch PLUTO_MAX_MAC_CONFIG_ENTRIES to C API define
2020-08-10 15:50:29 -04:00
Kyle Schwarz
6638cf05ae
Use C++11 constexpr instead of define
2020-08-10 15:21:16 -04:00
Kyle Schwarz
d58202dfc0
Add RADPlutoSettings to initializer template call
2020-08-10 15:07:12 -04:00
Kyle Schwarz
08928c36e3
RADPluto uses HSCAN2 instead of MSCAN
2020-08-10 14:31:59 -04:00
Kyle Schwarz
4b218b3f9a
Merge branch 'master' of Lustra:InfiniteWalrus/libicsneo into radpluto
2020-08-10 13:06:14 -04:00
Kyle Schwarz
3123cbb54b
Merge branch 'master' of Lustra:InfiniteWalrus/libicsneo into radpluto
2020-08-10 11:11:38 -04:00
Kyle Schwarz
17ebba3c57
Fix line-endings and include guard
2020-08-10 10:40:40 -04:00
Kyle Schwarz
7b3782cbe7
Update concurrentqueue to 1.0.2
...
1.0.2 resolves compiler warnings for MSVC 2019 with C++17 support (https://github.com/cameron314/concurrentqueue/commit/9cfda6cc61065d016ae3f51f486ce0fae563ea87 )
2020-08-10 10:20:00 -04:00
Kyle Schwarz
f9ff4049f2
Add initial support for RADPluto settings
2020-08-07 17:13:08 -04:00