Driver that can be used to interface newer models Septentrio GPS receivers or OEM boards via the SBF (Septentrio Binary Format) binary protocol. For example the models AsteRx2, AsteRx3, PolaRx3, PolaRx4 support this protocol.
The driver interfaces through the network (TCP/IP), through the serial port, or via USB. The Septentrio board acts as a data server. The driver connects to this server, receives its connection identification (e.g. IP11,COM3, USB1) and free stream id (1-10), and requests which packets it would like to receive. See below for the message that is used.
This driver supports beside position and time tag (for Time Synchronization) optionally heading and pitch/roll but obviously only if the GPS receiver supports it and uses multiple antennas.
The default Ethernet (network) port is 28784.
|Driver||Septentrio SBF (Binary)||Interface Type||TCP/IP/Serial||Driver Class Type||Counted|
|UTC Driver||Yes||Input / Output||Input||Executable||DrvQpsCountedTcp.exe SEPTENTRIO_SBF_ASTERX ACTIVE PPS
DrvQpsCounted.exe SEPTENTRIO_SBF_ASTERX ACTIVE PPS
Base-station, -line, -link and BaseVectorGeod(SBF v2) information are not decoded.
The Time Synchronization Timetag is decoded from the ReceiverTime Block.
The format of the Timetag message is created in the driver and has the following format:
SBF Time WNC <GPS weeknumber> TOW <GPS TimeofWeek in msec> DD-MM-YY HH:MM:SS
The date and time fields at the end are in UTC.
The Cable wiring diagrams can be found in the User Manual. Note that the serial cable should be two-way because the driver will actively request for data.
If for some reason the driver fails to connect over a serial/USB connection then you can test the connection: open the used port with a Terminal program like the QINSy I/O tester and send a couple of CR/LF's to it by pressing Enter. The driver should react with the connection Identification and a prompt character, e.g. USB1> or COM3>.
If the receiver has been switched off and on then it is possible that the communication does not start. In that case it is possible to use the option Reset System I/O from the Reset menu in the Controller. This will send the commands to enable messages to the receiver.
Multiple QINSy's can connect to the same receiver!!
If the network version of the driver is used then enter the valid IP Number of the receiver. The port number should be set to 28784.
The update rate in the Database Setup is used to tell the device at what speed it needs to operate. The update rate should be set identical for every system that is interfaced by the Septentrio driver, so not only for the positioning system!
Allowed interval values are:
- 0.050 sec (20 Hz)
- 0.100 sec (10 Hz)
- 0.200 sec (5 Hz)
- 0.500 sec (2 Hz)
- 1.000 sec (1 Hz)
Other valid interval values are whole seconds between 2 and 10 seconds.
Note that higher output rates (20 Hz) will increase the CPU Load on the GPS board. During tests it was noticed that the GPS sometimes fails to connect with higher update rates.
For more specifics see the "SetSBFOutput" command in the user manual.
Time Synchronization System
Start DbSetup, add a new Time Synchronization System, select driver, either the network or Serial variant and make sure that the same communication parameters are entered as for the positioning system. On the next page you can optionally select a Time Synchronization Adapter. The matching method should be set to "Automatic Matching".
As this is an active driver, it sends commands to the device:
After opening the port the driver will send: gso<CR><LF>. The device will reply with the gso message. This message is interpreted by the driver in order to find the stream to use.
This can either be a stream that is not used yet or the stream that it used before.
"SetSBFOutput, stream #id#, #port#,PVTGeodetic+PosCovGeodetic+DOP+BaseStation+BaseLine+ReceiverTime+ReceiverStatus+AttEuler+DiffCorrIn+BaseVectorGeod, #rate#"
#id# is replaced with the obtained available stream id, id is between 1-10.
#port# is replaced with the connection id, e.g. IP11 or COM3.
#rate# is replaced with a special string, e.g. msec100 for 10 Hz or sec1 for 1Hz.
This tells the device which blocks it needs to output, on which port and at what rate (mentioned above in the Database Setup).
This process can be re-initiated using the Reset IO from the Controller.
Drivers IO Notes
Command line parameter description for "drivers.io" file.
The driver configures the device to output certain SBF blocks which it needs, to decode the position, attitude and heading.
The driver will know that it has to boot in "Septentrio" mode.
PPS (Time Synchronization)
The driver will use the reported timetags ( but only if a Time Synchronization system is interfaced in the QINSy Template).