Kyle Johannes
aa77bbbc9e
first iteration cleanup
2023-11-29 17:05:08 -05:00
Kyle Johannes
ca630b4569
wip: native libusb can fetch product ID, serial, and android system FDs can be wrapped
2023-11-18 01:47:34 -05:00
Kyle Johannes
b2f67f7ce1
wip: android driver
2023-11-14 14:09:56 -05:00
Kyle Johannes
8d704b1bbb
LiveData: Initial implementation
...
Add support for live data subscription via Device::subscribeLiveData() and
Device::unsubscribeLiveData(). The live data API can be used to subscribe to
individual "signals", a full list of which can be found in LiveDataValueType.
2023-08-22 16:20:48 -04:00
Kyle Schwarz
6c93fc839b
FTD3XX: Update library to 1.0.14
...
Also tweaks FindUSB1.cmake to support a custom prefix libusb.
2023-07-17 19:03:17 +00:00
Yasser Yassine
d9c12bffe7
Device: Add device binary export support
2023-05-30 21:22:53 +00:00
Bryant Jones
f5096b879c
MDIO: Network support
2023-05-09 18:14:36 +00:00
Kyle Schwarz
0de23f2817
Driver: FTD3XX: Add Arm support
2023-05-09 16:31:49 +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
Kyle Schwarz
9b46d486cb
Driver: Add TCP support
...
Device: Close Driver in heartbeat thread on disconnection
2023-03-08 18:32:26 +00:00
Yasser Yassine
ddee1254a0
A2B: Add A2B Tx streaming support
...
A2B: Add A2BDecoder for streaming wave to A2B device
RADA2B: Add functions to configure settings
2023-03-08 18:22:14 +00:00
Kyle Johannes
539cfa511b
LIN: Network support
2023-02-03 18:27:08 +00:00
Yasser Yassine
78465e0f20
A2B: Add A2BMessage transmit support
2022-12-02 12:14:44 -05:00
Yasser Yassine
7b2544864b
A2B: Add initial WAV streaming support
2022-10-19 18:44:05 -04:00
Kyle Schwarz
7f22286838
Build: Only search for enabled drivers
2022-10-17 21:01:24 -04:00
Kyle Johannes
9817887523
I2C: Network support
2022-10-18 00:12:16 +00:00
Emily Brooks
5b14ec7246
Device: Add start/stop/clear script, script status, and preload coremini commands
2022-10-11 14:48:39 -04:00
Yasser Yassine
3b80746fb8
A2B: Add A2B message initial support
2022-10-11 11:20:04 -04:00
Kyle Schwarz
a0f73755e8
Build: Bump required C++ to 17
2022-07-21 16:22:52 -04:00
Kyle Schwarz
1a28fbf5ad
ThirdParty: FatFs: Enable PIC
...
Fixes linking with GCC by adding -fPIC
2022-07-15 12:34:07 -04:00
Paul Hollinsky
55d7d5bf17
Device: Implement allowSleep for Wireless neoVI support
2022-04-26 12:48:17 -04:00
Paul Hollinsky
2dd91325e6
FirmIO: Initial commit
2022-03-27 18:10:24 -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
f367fcecca
Disk: NeoMemory: Implement writing
2022-03-03 20:34:46 -05:00
Paul Hollinsky
8aa5bef7dc
Disk: Implement Extended Extractor Driver
...
This is the high speed driver used for RED 2, FIRE 3, and many
of the RAD-family devices.
2022-03-03 00:03:37 -05:00
Paul Hollinsky
c314417277
Device: Find the VSA offset for Disk::Access::EntireDisk
2022-02-28 15:55:16 -05:00
Paul Hollinsky
1fadb85206
ThirdParty: Add FatFs
...
R0.14b
2022-02-28 15:54:38 -05:00
Paul Hollinsky
6bcd8e5637
Disk: Read driver for Plasion
2022-02-28 03:40:44 -05:00
Paul Hollinsky
f8a46b7196
Device: Add logical disk size accessor
2022-02-28 01:49:50 -05:00
Paul Hollinsky
9d2d94d22b
Tests: Add disk driver tests
2022-02-25 01:14:57 -05:00
Paul Hollinsky
0dcd950092
Device: Add disk write driver framework
...
At the moment, no drivers are implemented, so all devices have Access::None.
2022-02-25 01:14:57 -05:00
Paul Hollinsky
f8bfb243fa
Disk: Implement NeoMemoryDiskReadDriver
2022-02-25 01:14:57 -05:00
Paul Hollinsky
fe4d5e0c15
Device: Add disk read driver framework
...
Allow access to the device's logical disk.
At the moment, no drivers are implemented, so all devices have Access::None.
2022-02-25 01:14:57 -05:00
Paul Hollinsky
6cd821be2c
Build: Don't add libusb include until after libftdi
...
This fixes GH-46 and a regression caused by 82954d9 where the project
would fail to build until configured a second time on Unix-y platforms.
LibFTDI adds libusb, so we need to make sure that's included first.
Windows does not use libusb so it does not need the include directory.
2022-02-24 16:03:02 -05:00
Kyle Johannes
2d1bb381f6
Device: Implement Ethernet PHY MDIO Communication
...
The following fixups were added during the squash/merge:
Fix formatting in EthPhyMessage and EthPhyRegPacket
Device: Use std::make_shared when creating the EthPHYControl filter
Network: Create NetID String for EthPHYControl
EthPhyRegPacket: Constants in PascalCase
2021-12-08 19:07:07 -05:00
Paul Hollinsky
78747aa899
CMake: Set CXX_STANDARD to C++11 if not set elsewhere
...
We need at least C++11.
If we're statically compiling into an application, we want to be using the same
CXX_STANDARD as it for ABI compatibility (particularly with icsneo::optional),
hence having the check around it.
2021-11-16 20:04:12 -05:00
Paul Hollinsky
0656cb568e
EthernetPacketizer: Coalesce small PC-to-device packets
2021-09-23 21:29:15 -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
Paul Hollinsky
8c9d3a5e6a
Merge branch 'master' into v0.3.0-dev
2021-06-11 15:40:42 -04:00
Sangeetha Hariharasudhan
9e70a9d51f
API: Legacy: Implement functions necessary for J2534
...
icsneoEnableNetworkComEx
icsneoGetDeviceSettingsType
icsneoGetDeviceSettings
icsneoSetDeviceSettings
icsneoGetMiniportAdapterInfo
icsneoEnableDOIPLine
icsneoGetVnetSimpleNetid
icsneoGetNetidforSlaveVNETs
icsneoSetBitRateEx
icsneoSetFDBitRate
icsneoSerialNumberFromString
icsneoJ2534Cmd
_stdcall convention added with .def file (octal support)
use NumberBytesHeader instead of NodeID in txmessagesEx
2021-06-10 16:58:11 -04:00
Paul Hollinsky
21bc4eeff2
Message: Create a type system so non-frame data can be represented
...
This change breaks existing code, hence the version bump, but it's
going to be much less error prone going forward.
2021-05-22 01:58:36 -04:00
Paul Hollinsky
595cc36545
Device: Implement version handling
2021-05-05 02:17:38 -04:00
Paul Hollinsky
8be3bbaee5
CMake: Use CMAKE_CXX_STANDARD_REQUIRED
2021-05-05 02:16:01 -04:00
Paul Hollinsky
78e3eb18df
Drivers: Rename STM32 to CDC ACM
...
This is much more descriptive of what the driver actually is
2021-05-04 22:37:16 -04:00
Paul Hollinsky
f629125e67
Build: Allow inheritance of the C++ standard
...
This fixes symbol name incompatibilities when linking with icsneo::optional
between C++ standards.
2021-04-29 18:08:01 -04:00
Paul Hollinsky
5733300de6
Extensions: Auto-add linked extensions
2021-04-27 21:12:24 -04:00
Paul Hollinsky
6c1cbc9db8
Optional: Move optional-lite to the include/third-party directory
...
This fixes the use case of adding the include folder
manually to an outside project.
2021-04-23 20:01:53 -04:00