Disclaimer: In line with our RMA Terms & Conditions, the warranty on hardware devices shall be null and void if the product has been subject to improper installation. It is advised to carefully read the latest versions of the Ouster Documentation as well as the MTi product's Datasheet and Hardware Integration Manual (available here) before connecting your hardware.
Introduction
This article describes how to interface your GNSS/INS device with an Ouster Lidar. Ouster Lidars accept a GPS input which allows their data to be correlated with position. For this purpose a GPS 1PPS signal and a UART $GPRMC message are required. The MTi-670/680 support these outputs. This article describes how to configure your MTi in order to meet these requirements.
The MTi-670G, MTi-680G and MTi-G-710 (encased versions with internal GNSS receiver) do not offer a 3.3V UART interface. An RS232-UART converter is required for these devices.
For more information on Ouster's sensors, please visit Ouster's website at ouster.com or contact the Sales team at lidar@ouster.io.
The setup presented in this article has been tested using an Ouster OS1 Lidar.
Overview of Ouster digital lidar sensors
The Ouster Lidar comes with an Interface Box that includes a terminal with connections for Power, Ethernet, Sync, Multi Purpose, and Ground. In this article, the connections GND, SYNC_PULSE_IN, and MULTIPURPOSE_IO are used to connect to the MTi.
Figure 1: Ouster Interface Box
Setup 1: MTi-670/680-DK
Hardware Interface
The circuit diagram in Figure 3 shows how to connect your MTi-670 (or MTi-680) to the Ouster Interface Box.
-
On the external connector of the MTi-670/680 DK connect Pin 10 (SYNC_IN2) to the SYNC_PULSE_IN pin in the Ouster Interface Box.
-
On the external connector of the MTi-670/680 DK connect Pin 14 (GND) to the GND pin in the Ouster Interface Box.
-
On the external connector of the MTi-670/680 DK connect Pin 15 (UART_TX) to the MULTIPURPOSE_IO pin in the Ouster Interface Box.
-
The MTi-670/680 will need to be powered separately from the Ouster Lidar, meeting the requirements mentioned in the MTi 600-series Hardware Integration Manual. The MTi-670/680-DK can be powered by using the USB connection connected to a PC.
-
Ensure a good GNSS fix by testing in an area where the MTi-67/680-DK’s GNSS antenna has a clear view of the sky, so that the GNSS 1 PPS signal is available to be synced with the Ouster Lidar.
MTi-670/680-DK Configuration
-
Start by configuring your MTi-670/680 to output the correct NMEA string and time data. The easiest way to do this is by using our GUI, MT Manager, which is part of the MT Software Suite.
-
In MT Manager, open the Device Settings window ().
- In the Device Settings tab, set the UART Protocol to "String Output" and the UART baud rate to 115200 or 9600 bps. Click Apply.
-
In the Output Configuration tab, select the "String report mode" tab and enable "GPRMC". Select an output rate from the drop-down menu. Click Apply.
-
You may need to lower the output rate if the baud rate cannot support the selected output rate. In MT Manager this will result in data overflow warning messages shown at the bottom of the screen. At a baud rate of 115200 bps, we recommend a maximum output rate of 100 Hz. The Ouster lidar only requires data at 1 Hz.
-
-
In the Synchronization Options tab, the "Clock Bias Estimation (In)" and the "1PPS Time-pulse" features should already be present in the list of configured settings, both on line In 2.
Setup 2: MTi-670G/680G
Hardware Interface
The circuit diagram in Figure 4 shows how to connect your MTi-670G/680G to the Ouster Interface Box.
-
Connect the SYNC_OUT line (blue/white) of the MTi to the SYNC_PULSE_IN pin in the Ouster Interface Box. The SYNC_OUT line can also be accessed by opening up the Xsens USB converter dongle.
- Connect one of the GND lines (black or blue) of the MTi to the GND pin in the Ouster Interface Box, with the RS232-UART converter in between. The GND line can also be accessed by opening up the Xsens USB converter dongle.
-
Connect the RS232_TxD line (yellow) of the MTi to the MULTIPURPOSE_IO pin in the Ouster Interface Box, with the RS232-UART converter in between.
-
Connect the RS232_CTS line (orange) of the MTi to a logical high (3V-25V), for instance to your MTi power supply line. The RS232_CTS line needs to be tied to a logical high in order to make the MTi transmit its data continuously.
-
The MTi-670G/680G will need to be powered separately from the Ouster Lidar, meeting the requirements mentioned in the MTi 600-series Hardware Integration Manual. The MTi-670G/680G can be powered by using the USB dongle connected to a PC.
-
Ensure a good GNSS fix by testing in an area where the MTi-670G/680G’s GNSS antenna has a clear view of the sky, so that the GNSS 1 PPS signal is available to the device. The MTi-670G/680G will synchronize its own clock with this trigger, and output a separate 1 PPS signal to be synced with the Ouster Lidar.
MTi-670G/680G Configuration
-
Start by configuring your MTi-670G/680G to output the correct NMEA string and time data. The easiest way to do this is by using our GUI, MT Manager, which is part of the MT Software Suite.
-
In MT Manager, open the Device Settings window ().
- In the Device Settings tab, set the RS232 Protocol to "String Output" and the RS232 baud rate to 115200 or 9600 bps. Click Apply.
-
In the Output Configuration tab, select the "String report mode" tab and enable "GPRMC". Select an output rate from the drop-down menu. Click Apply.
-
You may need to lower the output rate if the baud rate cannot support the selected output rate. In MT Manager this will result in data overflow warning messages shown at the bottom of the screen. At a baud rate of 115200 bps, we recommend a maximum output rate of 100 Hz. The Ouster lidar only requires data at 1 Hz.
-
-
In the Synchronization Options tab, the "Clock Bias Estimation (In)" and the "1PPS Time-pulse" features should already be present in the list of configured settings. Click "Add", and select the Interval Transition Measurement function. Set Skip Factor to 399. Leave the other fields as is. This will create a 1 PPS signal on the SYNC_OUT line of the MTi.
Ouster Lidar Configuration
-
Start by configuring your Ouster Lidar to receive the MTi’s sync signal and NMEA data.
-
If using Ouster Studio, configure the highlighted portions of Ouster Lidar’s Advanced Config as shown below:
-
If using TCP protocol, follow these step to configure the Ouster Lidar:
Set the timestamp_mode to TIME_FROM_SYNC_PULSE_IN-
- TCP command: set_config_param timestamp_mode TIME_FROM_SYNC_PULSE_IN
-
Set the multipurpose_io_mode to INPUT_NMEA_UART
- TCP command: set_config_param multipurpose_io_mode INPUT_NMEA_UART
-
Set the polarity of the sync_pulse_in pin to match the GPS PPS polarity
- TCP command: set_config_param sync_pulse_in_polarity ACTIVE_HIGH
-
Set the polarity of the multipurpose_io pin to match the GPS NMEA UART polarity
- TCP command: set_config_param nmea_in_polarity ACTIVE_HIGH
-
Set the nmea_baud_rate to match the GPS NMEA baud rate
- TCP command: set_config_param nmea_baud_rate <BAUD_11520 or BAUD_9600>
-
Set the nmea_leap_second to match the current leap seconds as defined by TIA at this website, at time of writing this the leap seconds are 37
- TCP command: set_config_param nmea_leap_seconds 37
-
Reinitialize and write the configuration
a. TCP command: reinitialize
b. TCP command: save_config_params
-
Troubleshooting
How can I check whether the 1 PPS signal and NMEA string messages are received properly?
You can check the output from the TCP command: get_time_info
-
Verify that the sensor is locked onto the PPS signal
- ”sync_pulse_in": { "locked": 1 -
Verify that the sensor is locked on the NMEA signal
-“nmea": { “locked”: 1 -
Verify that last_read_message looks like a valid GPRMC sentence
- "decoding": {"last_read_message":"GPRMC,024041.00,A,5107.0017737,N,11402.3291611,W,0.080,323.3,020420,0.0,E,A*20" -
Verify that timestamp time has updated to a reasonable GPS time
-"timestamp": { "time": 1585881641.96139565999999, "mode": "TIME_FROM_SYNC_PULSE_IN", "time_options": { "sync_pulse_in": 1585881641
Can I configure the MTi to output other data next to the $GPRMC strings?
The MTi can be configured to also output other (NMEA) string outputs when triggered by the 1 PPS signal, as long as the 9600 bps or 115200 bps baud rate allows for it. Additionally, the MTi 600-series allows for outputting data over the UART and CAN interfaces in parallel with the RS232 interface.