Time Synchronization Interface for Precision LiDAR Mapping
This project provides a complete hardware adapter solution to interface the OxTS xNAV650 GPS/INS system with Ouster OS1 LiDAR sensors. The adapter enables precise time synchronization via PPS (Pulse Per Second) signals and NMEA data transmission, critical for accurate georeferenced point cloud generation in autonomous vehicle and mobile mapping applications.
The xNAV650 outputs RS232 signals at 3.3V logic levels, while the Ouster OS1 requires TTL 5V signals. This adapter bridges the gap by:
- Converting RS232 NMEA messages to TTL 5V logic
- Level-shifting PPS synchronization signals from 3.3V to 5V
- Providing stable 5V power regulation from 12V vehicle supply
- Offering a compact, ruggedized enclosure for field deployment
- Enabling plug-and-play operation with standard connectors
- โ RS232 to TTL Conversion - MAX3232 transceiver for NMEA data
- โ PPS Signal Buffering - 74HC125 quad buffer for 5V TTL output
- โ Power Regulation - OKI-78SR switching regulator (12V โ 3.3V, 1.5A)
- โ Compact Design - 90ร60ร30mm enclosure fits in tight spaces
- โ Standard Connectors - Micro-D 15-pin (xNAV650), RJ45 (Ouster)
- โ Visual Feedback - Power indicator LED
- โ Ethernet Pass-through - Maintains network connectivity
- โ Field-Ready - Designed for vibration and outdoor use
xNAV650-Ouster-Adapter/
โโโ hardware/
โ โโโ schematics/
โ โ โโโ XNAVOUSTER.kicad_sch # KiCad schematic
โ โโโ pcb/
โ โ โโโ XNAVOUSTER.kicad_pcb # PCB layout (if available)
โ โโโ gerbers/ # Manufacturing files
โโโ enclosure/
โ โโโ 3d-models/
โ โ โโโ bottom.stl # 3D printable base
โ โ โโโ lid.stl # 3D printable lid
โ โ โโโ complete.step # Editable CAD file
โ โโโ drilling-template.pdf # For off-the-shelf enclosures
โโโ docs/
โ โโโ BOM.md # Bill of Materials
โ โโโ assembly-guide.md # Step-by-step assembly
โ โโโ user-manual.pdf # Operation instructions
โโโ firmware/ # (Future: microcontroller config)
โโโ examples/ # Sample configurations
โโโ README.md # This file
| Parameter | Value |
|---|---|
| Input Voltage | 12V DC ยฑ10% (10.8V - 13.2V) |
| Current Draw | 200-300mA typical |
| Output Voltage | 5V TTL (Ouster), 3.3V internal logic |
| NMEA Baud Rate | 115200 bps (configurable) |
| PPS Signal | 5V TTL, 1Hz, <1ฮผs rise time |
| Connectors | Micro-D 15 (input), RJ45 (output) |
| Parameter | Value |
|---|---|
| External Dimensions | 90ร60ร30mm |
| Weight | ~120g (with PCB) |
| Enclosure Material | ABS/PETG (3D print) or polycarbonate |
| Operating Temperature | -20ยฐC to +70ยฐC |
| Mounting | 4ร M3 standoffs |
- U2 - MAX3232CPE: RS232 โ TTL transceiver
- U3 - OKI-78SR-3.3/1.5-W36-C: Buck converter (12Vโ3.3V)
- U4 - 74HC125N: Quad 3-state buffer for signal conditioning
- C1-C5 - 100ยตF electrolytic capacitors for filtering
- J1 - DC barrel jack (12V input)
- J2 - 15-pin Micro-D connector (xNAV650 interface)
- J4 - RJ45 shielded connector (Ouster interface)
Total estimated cost: $75-160 USD (prototype quantities)
| Ref | Qty | Part Number | Description | Est. Price |
|---|---|---|---|---|
| U2 | 1 | MAX3232CPE+ | RS232 Transceiver | $3-5 |
| U3 | 1 | OKI-78SR-3.3/1.5-W36-C | DC-DC Converter | $6-10 |
| U4 | 1 | 74HC125N | Quad Buffer | $0.50-1 |
| J2 | 1 | Micro-D 15-pin Female | xNAV650 Connector | $8-15 |
| J4 | 1 | RJ45 Shielded | Ouster Connector | $2-5 |
| C1-C5 | 5 | 100ยตF/16V | Electrolytic Caps | $3-5 |
| R1-R2 | 2 | 100ฮฉ | Resistors | $0.50 |
๐ Complete BOM with part numbers โ
- Mouser Electronics - https://www.mouser.com
- DigiKey - https://www.digikey.com
- Farnell - https://www.farnell.com
- LCSC (for Asia) - https://www.lcsc.com
Before starting, ensure you have:
- xNAV650 GPS/INS system with user cable
- Ouster OS1 LiDAR sensor
- 12V DC power supply (vehicle or bench supply)
- Basic soldering equipment
- Multimeter for testing
- Order Components - Use BOM to order parts from suppliers
- PCB Fabrication - Upload gerbers to PCB manufacturer (JLCPCB, PCBWay, etc.)
- Enclosure Preparation - 3D print or purchase Hammond 1591XXSSBK
- PCB Assembly - Solder all components following assembly guide
- Enclosure Integration - Mount connectors and install PCB
- Testing - Verify voltages and signal integrity
- Deployment - Connect to xNAV650 and Ouster
๐ Detailed Assembly Instructions โ
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ
โ xNAV650 โ โ Adapter โ โ Ouster OS1 โ
โ GPS/INS โโ15pinโโโถโ PCB โโโRJ45โโโถโ LiDAR โ
โ โ โ โ โ โ
โ โข RS232 TX โโโโโโโโโโถโ MAX3232 โโโโโโโโโโถโ NMEA (TTL) โ
โ โข PPS 3.3V โโโโโโโโโโถโ 74HC125 โโโโโโโโโโถโ PPS (5V) โ
โ โข Ethernet โโโโโโโโโโถโ Pass-through โโโโโโโโโโถโ Ethernet โ
โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ
โฒ
โ 12V DC
โโโโโโโดโโโโโโ
โ Vehicle โ
โ Power โ
โโโโโโโโโโโโโ
xNAV650 (J2 - Micro-D 15) โ Adapter:
- Pin 1-2, 14-15: Supply+ / Supply- (12V)
- Pin 3: Serial RX (RS232)
- Pin 4: Serial TX (RS232) โ to MAX3232
- Pin 12: PPS (3.3V isolated) โ to 74HC125
- Pin 5-8: Ethernet (ERX+/-, ETX+/-) โ pass-through
Adapter โ Ouster OS1 (J4 - RJ45):
- Pins 1-2, 3-6, 7-8: Ethernet (standard T568B)
- Pin 4-5: NMEA_TX (TTL 5V from MAX3232)
- Custom pin: SYNC_PULSE_IN (PPS 5V from 74HC125)
๐ก Tip: Refer to Ouster OS1 hardware integration guide for exact pinout
-
Enable NMEA Output:
- Open NAVconfig
- Navigate to:
Hardware Setup > LiDAR Scanner - Select: Velodyne VLP-16 (or custom)
- Set NMEA Output: Serial or Ethernet (choose serial for this adapter)
- Baud Rate: 115200 bps
-
Configure PPS Signal:
- Navigate to:
Interfaces > PPS/Triggers - PPS Active Edge: Falling (check Ouster requirements)
- PPS Source: GNSS Receiver
- Navigate to:
-
Save and Upload:
- Save configuration
- Upload to xNAV650 via ethernet
- Reboot unit
Access Ouster web interface (default: http://os1-XXXX.local/):
-
Set Time Sync Mode:
TIME_SYNC_MODE = "PTP" or "NMEA"
For this adapter, use: NMEA + PPS
-
Configure NMEA:
NMEA_IN_POLARITY = "ACTIVE_HIGH" # or ACTIVE_LOW, test both NMEA_BAUD_RATE = 115200
-
Verify Synchronization:
- Check web interface:
Status > Time Sync - Should show: "Synchronized" with GPS time
- Check web interface:
๐ Official Ouster Integration Guide
1. Power Test:
โก Connect 12V power supply
โก Verify LED illuminates (green)
โก Measure 3.3V at U3 output pin
โก Measure 5V at MAX3232 VCC pin
โก Check U3 temperature (<60ยฐC)
2. Signal Integrity Test:
โก Connect oscilloscope to PPS output
โก Verify 1Hz square wave, 5V amplitude
โก Check rise time <1ฮผs
โก Measure NMEA TX voltage: ~5V high, ~0V low
3. Communication Test:
โก Connect xNAV650 and power on
โก Use USB-TTL adapter to monitor NMEA output
โก Should see NMEA sentences at 115200 baud
โก Example: $GPRMC,123519,A,4807.038,N,01131.000,E...
4. Integration Test:
โก Connect complete system (xNAV + Adapter + Ouster)
โก Power on in sequence
โก Check Ouster web interface for sync status
โก Verify point cloud timestamps match GPS time
| Issue | Possible Cause | Solution |
|---|---|---|
| No LED | No 12V power / blown fuse | Check power supply, replace fuse |
| LED on, no NMEA | MAX3232 not configured | Check solder joints, verify xNAV config |
| NMEA works, no PPS | 74HC125 issue | Verify PPS input from xNAV, check buffer |
| Ouster not syncing | Wrong polarity | Try inverting PPS_IN_POLARITY setting |
| Intermittent operation | Loose connections | Re-solder connectors, check crimps |
Files: enclosure/3d-models/
Materials:
- PETG (recommended) - Strong, temperature resistant
- ABS - Good for outdoor use
- Nylon - Maximum durability
Print Settings:
- Layer height: 0.2mm
- Infill: 30-40%
- Supports: Yes (for mounting holes)
- Print time: ~4-6 hours
Recommended: Hammond 1591XXSSBK
- Dimensions: 85ร56ร25mm
- Material: ABS, IP54 rated
- Price: $8-12 USD
- Requires drilling holes (template provided)
๐ Drilling Template PDF โ
For production runs or harsh environments:
- Material: Aluminum 6061-T6
- Anodized finish for corrosion resistance
- Cost: $40-80 per unit (qty 10+)
- Survey vehicles with synchronized LiDAR and GPS
- Accurate georeferencing of point clouds
- Highway infrastructure inspection
- Sensor fusion with precise timing
- SLAM (Simultaneous Localization and Mapping)
- Real-time navigation systems
- Mobile robots requiring GPS/LiDAR integration
- Agricultural automation
- Warehouse and industrial AGVs
- Academic research platforms
- Algorithm development for autonomous systems
- Multi-sensor calibration studies
- Bill of Materials (BOM) - Complete component list with part numbers
- Assembly Guide - Step-by-step construction
- User Manual - Operation and maintenance
- Hardware Schematic - KiCad source
- 3D Models - STL and STEP files
- xNAV650 Hardware Manual
- Ouster OS1 Documentation
- OxTS-Ouster Integration Guide
- MAX3232 Datasheet (TI)
- OKI-78SR Datasheet (Murata)
Contributions are welcome! Here's how you can help:
- ๐ Report bugs - Open an issue with details
- ๐ก Suggest features - Share your ideas for improvements
- ๐ Improve documentation - Fix typos, add examples
- ๐ง Hardware improvements - PCB layout optimizations, component alternatives
- ๐ฆ Alternative enclosures - Share your designs
- ๐งช Testing - Validate in different environments
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-improvement) - Commit your changes (
git commit -am 'Add amazing improvement') - Push to the branch (
git push origin feature/amazing-improvement) - Open a Pull Request
Be respectful, constructive, and collaborative. This is an open-source hardware project intended to help the community.
This project is licensed under the MIT License - see LICENSE file for details.
- โ Commercial use allowed
- โ Modification allowed
- โ Distribution allowed
- โ Private use allowed
โ ๏ธ No warranty providedโ ๏ธ Author not liable
Attribution appreciated but not required!
- Issues: Open an issue on GitHub for bugs or questions
- Discussions: Use GitHub Discussions for general questions
- Email: [email protected]
- GitHub: @SoloScriptSage
- Project Website: View interactive demo โ
For custom designs, integration services, or bulk orders:
- Contact: [email protected]
- Available for consulting on similar GPS/LiDAR projects
- OxTS - xNAV650 documentation and support
- Ouster - LiDAR hardware integration guides
- Open Source Community - KiCad, FreeCAD, and related tools
- Contributors - Everyone who improves this project
- Initial schematic design
- PCB layout
- BOM compilation
- 3D enclosure design
- Assembly documentation
- Prototype testing
- Production manufacturing
- Field deployment validation
- Firmware development (future)
- Web configuration interface (future)
Current Version: 1.0 (Beta)
Last Updated: November 2025
- Onboard microcontroller - ESP32 for configuration via WiFi
- OLED display - Status information and diagnostics
- Data logging - SD card for timestamp verification
- Multiple LiDAR support - Switch between Ouster/Velodyne/Hesai
- Galvanic isolation - Full isolation for harsh environments
- Reverse power protection - TVS diodes and polarity protection
- Automotive connectors - Deutsch or Amphenol for vibration resistance
- v1.0 - Current release (basic functionality)
- v1.1 - Improved power filtering, EMI reduction
- v2.0 - Microcontroller integration, web interface
- v3.0 - Multi-LiDAR support, advanced diagnostics
Q: Can I use this with other LiDAR brands?
A: Yes, with modifications. Most LiDARs accept similar NMEA+PPS inputs. Check voltage levels and pinouts.
Q: Does this work with single-antenna xNAV systems?
A: Yes, PPS and NMEA work identically on single and dual-antenna configurations.
Q: What's the expected accuracy of time synchronization?
A: PPS provides <1ฮผs timing accuracy. Overall system accuracy depends on xNAV650 GPS lock quality.
Q: Can I power the Ouster from this adapter?
A: No, this only provides signal conversion. Ouster requires separate 12-24V power supply.
Q: Is PCB assembly service available?
A: Not officially, but you can use services like JLCPCB or PCBWay with provided gerbers.
Q: What about CE/FCC certification?
A: This is a development tool. For commercial products, you'll need proper certification.
Coming soon: Photos of assembled units, field deployments, and point cloud results
โญ If this project helps you, please consider starring the repository!
Made with โก by Vladyslav Hirchuk
Open Hardware for the Robotics Community