|
ProtoCore v0.0.1
Deterministic, zero-heap network stack for embedded targets
|
HiSLIP (High-Speed LAN Instrument Protocol) message codec (PC_ENABLE_HISLIP) - a zero-heap codec for the IVI Foundation's modern LXI instrument transport (IVI-6.1, HiSLIP 2.0) on TCP port 4880, the successor to VXI-11 that carries SCPI at higher throughput. More...
#include "protocore_config.h"Go to the source code of this file.
HiSLIP (High-Speed LAN Instrument Protocol) message codec (PC_ENABLE_HISLIP) - a zero-heap codec for the IVI Foundation's modern LXI instrument transport (IVI-6.1, HiSLIP 2.0) on TCP port 4880, the successor to VXI-11 that carries SCPI at higher throughput.
A HiSLIP session runs over TWO TCP connections to the same port 4880 - a synchronous channel (the ordered SCPI command/response stream: Data / DataEND, Trigger, device-clear) and an asynchronous channel (out-of-band control: lock, status/SRQ, remote-local, interrupt) - bound by a 16-bit SessionID negotiated in the handshake.
Every message is a fixed 16-byte header optionally followed by a payload:
This codec builds + parses that header (pc_hislip_build_header / pc_hislip_parse_header), the Initialize / AsyncInitialize handshake (the MessageParameter carries the protocol version + vendor id, then the negotiated version + SessionID), and the Data / DataEND messages that carry a SCPI payload keyed by a MessageID. Pairs with PC_ENABLE_SCPI (the payload). Pure codec, host-tested; the two TCP connections are the application's.
Reference: IVI-6.1 "IVI High-Speed LAN Instrument Protocol (HiSLIP)" v2.0 (2020-04-23).
Definition in file hislip.h.