Kyle Schwarz
8b7e2556a0
Driver: DXX: Fix ION, FIRE, ValueCAN3, & VividCAN
2025-09-10 10:11:08 -04:00
Kyle Schwarz
29dc7b345f
Driver: Switch to libredxx
...
- no more libFTDI
- no more libusb on Linux and macOS
- no more FTDI repack
- no more binary libs
- faster D2XX on Windows (no longer uses COM)
2025-08-25 11:24:03 -04:00
Kyle Schwarz
6b60804174
Device: Add com keepalive
2025-08-06 17:17:36 -04:00
Kyle Schwarz
c056e8dc2e
Driver: Servd: Toggle closing when done
2025-07-02 14:28:59 -04:00
Kyle Schwarz
5795791eac
Driver: Servd: Fix Address creation
2025-06-19 16:48:15 -04:00
Kyle Schwarz
c4e858d346
Driver: Prefer Npcap
...
Prefer Npcap over WinPcap and TCP
2025-06-04 22:14:09 -04:00
Kyle Schwarz
4dcb944d35
Driver: Add Servd
2025-05-08 11:22:42 -04:00
Kyle Schwarz
e88cd244c8
Driver: D3XX: Refactor pipe logic
2025-04-15 17:44:58 -04:00
Jonathan Schwartz
2209e348a3
CI: Add warnings & error on warnings
2025-03-28 17:35:26 +00:00
David Rebbe
f04cd16bee
Platform: Improve Windows wstring support
2025-02-06 18:43:51 +00:00
Kyle Schwarz
b624d06ca0
Driver: FTD3XX: Fix close()
2024-12-30 14:14:23 -05:00
Kyle Schwarz
40b85488dc
TCP: Add LIBICSNEO_DISABLE_TCP env option
2024-12-11 17:25:36 -05:00
Kurt Wachowski
75af3220b0
Driver: Block between read attempts
...
Driver:
* Refactored to limit accessibility of member fields;
Communication:
* readTask() now calls for a blocking wait;
2024-08-13 13:55:12 +00:00
Kyle Schwarz
387c39d3a0
Platform: TCP: Guard against negative duration
2024-07-29 22:50:16 -04:00
Kyle Schwarz
4476bd8b71
Platform: TCP: Add poll function to Socket
2024-07-30 02:09:24 +00:00
Yasser Yassine
77928dc93d
Driver: Add general predicate parameter for waitForRx
2024-05-28 18:21:22 +00:00
Yasser Yassine
659fcf633c
Communication: Add pause feature
...
Removed redirect read
2024-05-23 21:23:45 +00:00
Jonathan Schwartz
63f0516318
Replace concurrentqueue with ringbuffer
2024-04-05 17:24:53 +00:00
David Rebbe
06f6861130
Legacy: Drop deprecated APIs
...
Drop icsneoFindNeoDevices() and icsneoOpenNeoDevice() in favor of icsneoFindDevices() and icsneoOpenDevice(), respectively.
Also fixes:
- Failure to re-open a device after it has been closed with the C/legacy APIs
- NumberOfClients not being updated
- FIRE3 settings missing in icsneoGetDeviceSettingsType()
2024-03-07 19:45:46 +00:00
Jonathan Schwartz
219a5edbd8
Fixes Windows build with TCP enabled
2024-02-23 14:16:15 +00:00
Jonathan Schwartz
e0cef880f0
Firmio: Improve exit from Find loop
...
Device: Null check return from std::dynamic_pointer_cast
2023-10-03 16:24:28 +00:00
Joseph Niksa
f907d6759f
icsneolegacy: implemented getDeviceStatus in C and legacy
...
-Added missing DLL asserts for getRTC() and setRTC() in icsneoc.h
2023-05-25 16:42:38 +00:00
Jonathan Schwartz
32900ae263
Device: Add GetComponentVersions and GetSupportedFeatures commands
...
Driver: Fix re-open and failed open cases for TCP
Also enforces even length packets for the RED2, FIRE3, and FIRE3 FlexRay devices.
2023-05-08 21:07:43 +00:00
Kyle Schwarz
2f7c3a2dda
Driver: FTD3XX: Use CMake FetchContent for lib
2023-04-25 15:16:15 +00:00
Kyle Schwarz
6b0c588a46
Driver: Add FTD3XX
2023-04-20 20:42:36 +00:00
Joseph Niksa
83f6c611fe
Implemented icsneoLoadDefaultSettings to apply the default settings to the device.
2023-04-20 05:00:46 +00:00
Kyle Schwarz
cd7b0b0a7b
Driver: PCAP: Properly handle RX timeout
...
If res == 0 the header and data will not be populated because no message
was RXed.
2023-03-29 00:51:38 -04:00
Kyle Schwarz
9b46d486cb
Driver: Add TCP support
...
Device: Close Driver in heartbeat thread on disconnection
2023-03-08 18:32:26 +00:00
Kyle Schwarz
f4e4a103ad
POSIX: PCAP: Check header & data before using
2022-12-19 03:03:12 -05:00
David Rebbe
5ff1707c47
libicsneoc: Resolve DeviceCurrentlyClosed errors
2022-11-03 23:46:14 +00:00
Paul Hollinsky
407ccccedd
Drivers: Ensure serial numbers are uppercase
...
This prevents mismatches if the device sends a lowercase
serial number, which may happen due to an oversight in
production.
2022-05-28 14:41:41 -04:00
Paul Hollinsky
91abf378f8
FirmIO: Use uintptr_t for 64-bit compatibility
2022-04-15 21:35:40 -04:00
Paul Hollinsky
d45d708446
FirmIO: Stable communication
2022-03-27 23:57:44 -04:00
Paul Hollinsky
2dd91325e6
FirmIO: Initial commit
2022-03-27 18:10:24 -04:00
Paul Hollinsky
008a1620c8
Repo: Normalize source files to LF
2022-03-27 14:40:32 -04:00
Paul Hollinsky
781fc2c034
Drivers: Decouple from devices
...
This allows us to better implement alternative drivers
for devices, such as for device sharing servers or
talking to CoreMini processors within the same device.
2022-03-27 14:30:31 -04:00
Paul Hollinsky
478dfb3cb8
Platform: Windows: Create trampoline header
...
This way windows.h can be included if needed without a guard,
and we have a place to stub out defines for other platforms if
necessary.
2022-03-03 15:01:32 -05:00
Paul Hollinsky
453d3366af
Platform: Windows: Avoid windows.h
...
This way Windows.h doesn't pollute everything with random defines
2022-02-28 19:12:35 -05:00
Paul Hollinsky
4fd65d85c8
Windows: PCAP: Fix WinPCAP loading
...
Used when LIBICSNEO_NPCAP_INCLUDE_DIR is not defined
2022-02-14 19:24:46 -05:00
Paul Hollinsky
6d92b7a03a
Windows: PCAP: Fix a race which could cause transmit delays
...
If you had a chain of packets being sent all at once, the latter
section of packets could be delayed, theoretically infinitely.
If queue1 was filled and enqueued for transmit, then queue2
had packets enqueued in it while queue1 was still transmitting,
we'd try to fill queue2 further rather than waiting for queue1's
transmit to finish.
However, in that case, we wouldn't check if we could transmit
queue2 again until the next packet. If the user application
was waiting for the response from something in queue2
before pushing more packets, it could hang indefinitely.
This also fixes a subtle bug where hitting the "not safe to try
to fit any more packets in this queue" limit would cause a
packet to drop, as it would be dequeued and then tossed.
Closes GH-42
2022-02-04 01:14:08 -05:00
Paul Hollinsky
96f18dcfd6
PCAP: Don't use pthread_cancel on Linux
...
It is not necessary and can cause a crash in libunwind
2021-12-08 14:30:02 -05:00
Paul Hollinsky
ac77fe2b56
POSIX: PCAP: Use EthernetPacketizer
2021-09-23 21:31:59 -04:00
Paul Hollinsky
c847d68f3c
POSIX FTDI: Count LIBUSB_ERROR_IO as a disconnection
2021-09-20 19:30:59 -04:00
Paul Hollinsky
16b88b7787
macOS: PCAP: Fix typo
2021-07-05 23:55:22 -04:00
Paul Hollinsky
02c14aeb35
macOS: PCAP: Add code necessary for device discovery
...
You will still need chmod_bpf or similar to find devices
2021-06-17 21:07:22 -04:00
Paul Hollinsky
37d06807e4
POSIX: PCAP: Update inferface name to match Windows implementation
2021-06-15 19:09:13 -04:00
Paul Hollinsky
b13a33f0be
Windows: PCAP: Less verbose name for the interface
...
Fixing some tabs/spaces formatting here as well
2021-06-15 19:09:05 -04:00
Tomasz Ziobrowski
af2c30885b
Added support for MinGW32 - to be working with qticsneo
2021-06-15 20:15:08 +02:00
Paul Hollinsky
4b7cb28bdf
API: Legacy: Disable octal mappings for non-stubbed functions
2021-06-11 18:42:33 -04:00
Paul Hollinsky
45c879c2b6
API: Legacy: Update def file with the correct ordinals
2021-06-11 13:52:09 -04:00