Some checks failed
Continuous Integration / Rust Checks (map[args:--all -- --check --color always command:fmt]) (push) Has been cancelled
Continuous Integration / Rust Checks (map[args:--all-targets --all-features --workspace -- -D warnings command:clippy]) (push) Has been cancelled
Continuous Integration / Rust Checks (map[args:--release command:build]) (push) Has been cancelled
3.0 KiB
3.0 KiB
NEO-6M GPS Module Setup Guide
Overview
The NEO-6M is a cost-effective GPS module that provides reliable positioning data for the Aniker anchor alarm system. This guide covers the basic setup and configuration of the NEO-6M with the ESP32.
Module Features
- High sensitivity: -161 dBm tracking
- Time-To-First-Fix:
- Cold start: 27s
- Hot start: 1s
- Position accuracy: 2.5m CEP (Circular Error Probable)
- Velocity accuracy: 0.1m/s
- Operating temperature: -40°C to 85°C
Physical Setup
Power Requirements
- Input voltage: 3.3V DC
- Current consumption: ~45mA at continuous operation
- Backup power (optional): 2.0V to 3.6V for faster satellite acquisition
Pin Connections
-
Power Pins
- VCC → ESP32 3.3V
- GND → ESP32 GND
-
Communication Pins
- TX → ESP32 GPIO16 (RX)
- RX → ESP32 GPIO17 (TX)
Antenna Considerations
- The module comes with a ceramic patch antenna
- Place the antenna facing upward with clear view of the sky
- Avoid metal objects directly above the antenna
- Keep antenna away from sources of interference
Initial Testing
LED Indicators
- Power LED: Should be constantly on
- Signal LED: Will blink when receiving data from satellites
Expected Behavior
- When first powered on, the module will begin searching for satellites
- Initial position fix may take 30-60 seconds in optimal conditions
- Signal LED will begin blinking once satellites are acquired
Troubleshooting
Common Issues
-
No Power LED
- Check 3.3V power connection
- Verify ground connection
- Check for short circuits
-
No Signal Reception
- Ensure clear view of sky
- Check antenna connection
- Move away from sources of interference
- Try outdoor testing first
-
Intermittent Data
- Check wire connections
- Verify baud rate settings
- Check for interference sources
Testing Tips
- First test outdoors with clear sky view
- Allow up to 5 minutes for first fix
- Use serial monitor to verify data reception
- Verify correct UART configuration
Software Configuration
Default Settings
- Baud rate: 9600bps
- Update rate: 1Hz
- NMEA messages: GGA, RMC, GSA, GSV
Serial Communication
// Example configuration in Rust
let config = uart::config::Config {
baudrate: 9600,
data_bits: uart::config::DataBits::DataBits8,
parity: uart::config::Parity::ParityNone,
stop_bits: uart::config::StopBits::STOP1,
};
Performance Expectations
Typical Performance
- Time to first fix: 30-60 seconds
- Position accuracy: 2.5m (open sky)
- Update rate: 1Hz
- Operating temperature: -40°C to 85°C
Environmental Factors
- Performance degrades under cloud cover
- Indoor operation is not reliable
- Metal objects can cause interference
- Marine environment considerations:
- Salt spray protection needed
- Weatherproofing recommended
- Stable mounting required
Future Improvements
- Add power saving modes
- Implement faster update rates
- Add configuration interface
- Optimize for marine use