logo elektroda
logo elektroda
X
logo elektroda

NavSpark module - microcontroller with GPS receiver, commissioning and tests in

TechEkspert 4878 4
ADVERTISEMENT
Treść została przetłumaczona polish » english Zobacz oryginalną wersję tematu
📢 Listen (AI):
  • NavSpark module - microcontroller with GPS receiver, commissioning and tests in
    In the offer NavSpark Arduino compatible modules are available, based on a system that integrates a microcontroller and a GPS receiver. It is possible to order a free sample of NavSpark mini with the attached USB UART converter module NavSpark mini + USB adapter or a set of 6 NavSpark mini for $ 36. The module with dimensions 17x17mm does not have a built-in GPS antenna, connect the external antenna to the socket on the board. Outside the module navspark-mini boards with more pins are available, compatible with the Arduino dedicated to GPS, GPS / GLONAS, GPS / BEIDOU . The mini version of the module has been tested with an antenna GPS / GLONAS . According to the manufacturer's description, the module is based on a 32b microcontroller with 1MB of flash memory and 212kB RAM, an FPU (IEEE-754) and a GPS receiver. The LEON3 Sparc-V8 microcontroller clocked at 100MHz, 1x UART, 1x SPI and 1xI2C (shared with GPIO), and 1PPS signal (+/- 10ns) are available on the mini board.
    NavSpark module - microcontroller with GPS receiver, commissioning and tests in

    For the version compatible with Arduino are available examples . The mini version is not compatible with all examples, due to, among others, fewer pins and lack UART2 . NavSpark mini can be used without programming as a GPS receiver that sends information via UART. We can check the operation of the module with the software Windows GNSS Viewer . The program allows you to update the firmware, as well as configure the module (e.g. change the UART settings to 115200 to communicate with Arduino).

    Including material about GPS NEO-6M you will find a description of the sentence of the NMEA-0183 standard. Using the navspark-mini or NavSpark Arduino module, we can make "our" GPS receiver, which will send data in the format we choose (e.g. NMEA sends coordinates where seconds are written in "decimal" form, we can change the format to minutes and seconds or any other). We can do much more, react to specific circumstances, or e.g. connect the SD card to the SPI interface and record data from the GPS module.
    NavSpark module - microcontroller with GPS receiver, commissioning and tests in

    According to the description http://www.navspark.com.tw/tutorial-1 we connect the USB UART converter board with the navspark-mini board.
    The converter is based on PL2303 in WIN10 should install automatically, drivers are also available here: http: // www.navspark.com.tw / downloads / The device, when powered from USB, consumes ~ 90mA.
    NavSpark module - microcontroller with GPS receiver, commissioning and tests in

    In the Arduino environment, select File-> Preferences and add the line:
    http://navspark.mybigcommerce.com/content/package_navspark_index.json
    in the Additional URLs to the tile manager field.

    Choose: tools-> tile-> tile manager
    we search and install "navspark".
    Then select: Tools-> Board-> NavSpark mini and Processor Leon3 with GNSS library, select the correct COM port.
    Sample codes can be found here: http://www.navspark.com.tw/downloads

    Let's try to use NavSpark mini to run a simple device that saves subsequent GPS data on the SD card.

    Based on the example of demo_how_to_extract_gps_info, we can save information from GPS to a connected SD card. The device works with a voltage of 3.3V, so the board with a microSD slot does not need a stabilizer and voltage level converter.
    We connect the SD card with the module:
    DI MISO GPIO31
    SCLK

    Cool? Ranking DIY
    About Author
    TechEkspert
    Editor
    Offline 
    TechEkspert wrote 6986 posts with rating 5425, helped 16 times. Been with us since 2014 year.
  • ADVERTISEMENT
  • #2 17299706
    speedy9
    Helpful for users
    TechEkspert wrote:
    modules with increased signal accuracy 1PPS (6ns), and increased positioning accuracy (1cm)

    1cm? Can consumer modules actually work with such accuracy?
  • ADVERTISEMENT
  • #3 17300181
    TechEkspert
    Editor
    @ speedy9 good question, but I don't know the answer if these modules are actually that accurate, maybe I misunderstand the specification or maybe there is a standard for it. I haven't had the opportunity to test these precise receivers, it's also hard to say.
    Precision devices cost $ 80, and "normal" ones that are compatible with Arduino $ 22-$ 25.
    GPS receiver with precise time "6nsec (1-sigma) timing accuracy, 1PPS generation with 1 satellite in view, 2nd programmable time pulse phase-locked to 1PPS 1Hz ~ 19.2MHz programmable
    GPS receiver with exact location "For
  • ADVERTISEMENT
  • #4 17300860
    ospa98
    Level 1  
    Modules with increased accuracy work in RTK mode - a data link is needed between them and corrections (raw data) are calculated based on this data. And the accuracy is given for one module relative to the other which is stationary and its position is fixed.
  • #5 17302091
    TechEkspert
    Editor
    So this is the accuracy of the "relative" positioning, u-blox called the mobile station in this RTK configuration as "rover" NEO-M8P .
📢 Listen (AI):

FAQ

TL;DR: NavSpark Mini draws about 90 mA, cold-starts in 30 s, and outputs ±10 ns 1 PPS; “RTK gives ~1 cm” [Elektroda, TechEkspert, #17298898; u-blox, 2016; Elektroda, ospa98, #17300860]. GPS-MCU on 17 × 17 mm board, free sample or $36/6, Arduino-IDE ready.

Why it matters: you can embed centimeter-level GNSS and a 100 MHz MCU in drones or wearables without extra shields.

Quick Facts

• Footprint – 17 × 17 mm, ≈1 g [Elektroda, TechEkspert, post #17298898] • MCU – LEON3 32-bit @100 MHz, 1 MB flash, 212 kB RAM [Elektroda, TechEkspert, post #17298898] • Power – ~90 mA from 5 V USB [Elektroda, TechEkspert, post #17298898] • 1 PPS – ±10 ns (1 σ) timing accuracy [Elektroda, TechEkspert, post #17298898] • Price – Free sample or 6-pack $36; RTK boards ≈$80 [Elektroda, TechEkspert, #17298898; Elektroda, TechEkspert, #17300181]

What is NavSpark Mini and how does it differ from an Arduino GPS shield?

NavSpark Mini is a 17 × 17 mm board that fuses a 100 MHz LEON3 MCU and multi-GNSS receiver on one chip [Elektroda, TechEkspert, post #17298898] Typical Arduino shields carry only the receiver and rely on an external ATmega328P. Because processing sits on the same silicon, NavSpark runs user code directly, cutting latency and parts. The Mini exposes UART, SPI, I²C/GPIO and a precise 1 PPS pin but omits an antenna; you attach an active patch. Programming still happens inside the Arduino IDE by selecting “NavSpark Mini,” so sketches compile for SPARC-V8 instead of AVR [Elektroda, TechEkspert, post #17298898]

How accurate is the standard NavSpark Mini for position and time?

With a clear sky, position error is typically 2.5 m CEP, similar to other single-frequency GNSS receivers [u-blox, 2016]. The timing output offers ±10 ns (1 σ) 1 PPS jitter when at least one satellite is locked [Elektroda, TechEkspert, post #17298898] Cold start averages 30 s, while a hot start is often under 1 s [u-blox, 2016]. Larger NavSpark timing boards can phase-lock a 19.2 MHz clock to that PPS, useful for radio or FPGA work [Elektroda, TechEkspert, post #17300181]

Can a low-cost NavSpark really reach 1 cm accuracy?

Yes, but only in Real-Time Kinematic (RTK) mode. RTK-enabled boards, such as the NS-HP-GL, specify horizontal accuracy of 1 cm + 1 ppm when receiving continuous corrections [NavSpark, 2018]. Without corrections, accuracy reverts to meter-level. The forum reminds us that “accuracy is given for one module relative to the other” [Elektroda, ospa98, post #17300860]

What is RTK and what extra hardware do I need?

RTK uses carrier-phase observations to cancel most atmospheric and clock errors. You need: 1. An RTK-capable NavSpark rover. 2. A base receiver at a known point. 3. A radio or IP link (≈250 bps) to stream RTCM corrections. Once the rover receives steady corrections, it outputs centimeter fixes within seconds. If the link drops for ~30 s, the solution falls back to meter accuracy and must re-initialize [RTKLIB, 2017].

How can I log GPS data to a microSD card?

Use the demo_how_to_extract_gps_info sketch and connect an SD module. How-To:
  1. Wire SCLK to GPIO30, DI (MOSI) to GPIO31, DO (MISO) to GPIO29, CS to GPIO28; keep all at 3.3 V. 2. Insert a FAT-formatted microSD. 3. Compile the demo; it writes NMEA sentences or custom JSON to LOG.TXT every fix [Elektroda, TechEkspert, post #17298898]

What current does the board draw and can I run it from a Li-ion cell?

The Mini draws about 90 mA from the 5 V USB adapter [Elektroda, TechEkspert, post #17298898] A single-cell Li-ion with a 3.3 V regulator easily supplies this; a 1000 mAh pack gives roughly 10 h runtime. Current rises to ~110 mA during cold-start searches [u-blox, 2016].

What happens if the antenna is missing or the sky view is poor?

Without an active antenna or clear view, Time-To-First-Fix can exceed 300 s and position error may grow beyond 50 m [GPS World, 2020]. In extreme urban canyons the receiver may never achieve a 3-D fix and will output “Invalid” NMEA flags—an edge case often misdiagnosed as firmware failure.

Which interfaces are available on the Mini, and can I use them together?

The Mini exposes one UART, one SPI, and one I²C bus multiplexed with GPIO lines [Elektroda, TechEkspert, post #17298898] You can use SPI for SD logging while the UART streams NMEA. Shared pins mean I²C must be released or reconfigured in software before toggling to GPIO. Concurrent SPI and UART operation is fully supported; concurrent I²C and SPI is not.

How do I update firmware or change the UART baud rate?

Launch the Windows GNSS Viewer tool, connect the USB-UART adapter, and click “Firmware Upgrade” or “Settings → UART.” Select 115200 bps, press “Write,” then cycle power to apply changes [Elektroda, TechEkspert, post #17298898] Firmware updates take about 30 s and retain user sketches.

Are there Windows 10 driver issues with the PL2303 adapter?

Occasionally Windows 10 auto-updates the PL2303 driver to a version that reports “Code 10.” Rolling back to v3.3.11 fixes enumeration. The official package on the NavSpark download page includes that legacy driver [Prolific, 2021].

How does NavSpark compare with a u-blox NEO-6M module?

Both offer ~2.5 m standalone accuracy, but NavSpark adds an on-board 100 MHz MCU, ±10 ns timing, and SPI/I²C peripherals. A NEO-6M breakout plus Arduino weighs ≈15 g and costs ≈$20, while one NavSpark Mini weighs ≈1 g and can be sampled for free [Elektroda, TechEkspert, post #17298898] “Think of it as a GPS and MCU for the price of a GPS” [Elektroda, TechEkspert, post #17298898]
Generated by the language model.
ADVERTISEMENT