Custom serial protocol parsing and Automation

Hi, We are looking for SW/HW which can help us with product development.
Here some start points:

  • we have custom serial protocol up to 3.3mbps
  • we have to parse data per protocol definition
  • we have to measure time events
  • we have to perform automated tests

Does IO Ninja+ Serial Tap device is able to:

  • capture serial communication with up to 3.3mbps
  • add custom protocol parsing logic
  • perform time event measurement
  • be controlled by Python with ability to get parsed data, set time markers ad get time for each events

Regards,
Ivan

Hello Ivan,

capture serial communication with up to 3.3mbps

3.3 Mbps is beyond the maximum baud rate supported by Serial Tap. Baud rates <= 1 Mbps are guaranteed to be reliably captured; ~2 Mbps could work in theory, but errors are possible, and I think 3 Mbps would be outright rejected by the UART controller we use in Serial Tap.

add custom protocol parsing logic

This is possible; IO Ninja supports so called "layer" plugins that can transform original logs and add decoded protocol messages. See the Modbus Analyzer for an example of such layer plugin (it's open-source and located at /scripts/plugins/Modbus/)

perform time event measurement

Events are timestamped on the PC side -- the Serial Tap reports raw bytes and status line changes, IO Ninja adds timestamps and writes them to log.

be controlled by Python with ability to get parsed data, set time markers ad get time for each events

If you need to implement custom processing in Python, you can use ioninja-hwc (https://ioninja.com/features/hardware-client.html#cli) -- capture Serial Tap events from the command line and redirect those to a file or stdout; then implement whichever custom logic you need in Python.