nasa-jpl / jsd

Just SOEM Drivers
Other
18 stars 17 forks source link

Fixes network communication issues with Platinum #74

Closed d-loret closed 1 year ago

d-loret commented 1 year ago

Updates JSD's initialization and write functions to use overlapping IOmap instead of the legacy IOmap. This supports both existing drivers and the new Platinum driver, making it possible to have Platinum drives in the same network as other devices. The update in JSD's initialization also comprises calling ecx_writestate only once, as opposed to each cycle, while waiting to transition into Operational state. This is done because calling it multiple times can alter the behavior of some slaves.

Test Plan: Tested on local network composed of an EL3602, and EL2124 and an Elmo Platinum motor controller. Also tested on Playground with an Elmo Gold motor controller.

d-loret commented 1 year ago

@alex-brinkman, I tested with @kwehage today on Asimov and FTS sensors and laser sensors are working fine.

d-loret commented 1 year ago

Merging since it is already tested on multiple devices.