Skip to the content
PCBKitNew board
2 layersMars rover navigation system, the printed circuit board in 3D

Mars rover navigation system

tjiuce/rover4

Rover Navigation Optimization System (R-NOS): An ESP32-powered autonomous robotic prototype designed for real-time environmental monitoring. It utilizes ultrasonic and thermal sensors for obstacle detection, climate analysis, and navigation.

Copper layers
2
Thickness
1.6 mm
Parts
4
Nets
71
Pads
114
Tracks, vias
0, 0
Routed
Not yet
KiCad
KiCad 8.0 (file 20240108)
Created
9 Feb 2025
Updated
3 Sep 2026

Overview

Mars rover navigation system is an open-source printed circuit board by tjiuce, from the tjiuce/rover repository on GitHub. It is a 2-layer board with 4 parts on 71 nets.

It is built around the ESP32-WROOM-32, AM2302 and BQ24090DGQR. It belongs with the robots and motor control boards and the ESP32 boards of this library.

Main components

3

README

README.md

Rover Navigation Optimization System (R-NOS) 🛰

The Rover Navigation Optimization System is a project by Tejas Gupta and Ojas Gupta developed under the guidance of Prof. Bindu Garg, HOD, CSE & CSBS, Bharati Vidyapeeth University, College of Engineering, Pune. It is a scaled-down prototype designed to explore real-time environmental monitoring and data-driven decision-making. The project focuses on collecting temperature and humidity readings to analyze climate conditions and detect anomalies that could impact autonomous navigation.

Visitors License Languages GitHub contributors GitHub last commit GitHub repo size GitHub total lines GitHub Repo stars

Table of Contents

Research Hypothesis

A scaled-down Rover prototype can effectively collect temperature and humidity data, demonstrating how real-time environmental monitoring can be used for autonomous navigation, climate analysis, and anomaly detection.

By analyzing the collected data, we aim to identify trends, evaluate sensor accuracy, and explore potential improvements in robotic exploration. This includes assessing response time, consistency, and anomalies caused by external factors like human interference or sudden environmental changes.

Objective

  • To explore potential improvements in robotic exploration through data-driven insights.
  • Collect and transmit thermal data wirelessly to a computer.
  • Detect obstacles using ultrasonic sensors.
  • Indicate path changes via buzzer and LED.
  • Safeguard navigation based on temperature and obstacles.
  • Log and analyze data on a laptop using ThingSpeak.

System Architecture & Control Loop

mermaid
flowchart TD
    subgraph Onboard Sensors
        DHT22[DHT22 Temp & Humidity Sensor]
        Ultrasonic[HC-SR04 Distance Sensor]
    end

    subgraph ESP32 Controller Loop
        DHT22 --> DataRead[Data Sampling Engine]
        Ultrasonic --> DataRead
        DataRead --> ObstacleCheck{Obstacle < 15cm?}
        DataRead --> TempCheck{Temp Spike > threshold?}
    end

    subgraph Navigation & Indicators
        ObstacleCheck -- Yes --> Alert[Buzzer & Warning LED ON]
        TempCheck -- Yes --> Alert
        ObstacleCheck -- No --> Clear[Normal Trajectory]
        TempCheck -- No --> Clear
    end

    subgraph Telemetry Pipeline
        DataRead --> WiFi[ESP32 Wi-Fi Module]
        WiFi --> ThingSpeak[ThingSpeak Cloud API]
        ThingSpeak --> Dashboard[ThingSpeak Analytics Dashboard]
    end

Setup & Firmware Guide

Prerequisites

  • Arduino IDE with ESP32 board support
  • Required Libraries: DHT sensor library, Adafruit Unified Sensor, ThingSpeak

Flashing Firmware (code/mrnos.ino)

  1. Open code/mrnos.ino in Arduino IDE.
  2. Select Board: ESP32 Dev Module.
  3. Update Wi-Fi SSID, Password, and ThingSpeak Write API Key in the script:
    cpp
    const char* ssid = "YOUR_WIFI_SSID";
    const char* password = "YOUR_WIFI_PASSWORD";
    unsigned long myChannelNumber = 2890599;
    const char * myWriteAPIKey = "YOUR_THINGSPEAK_WRITE_KEY";
  4. Connect ESP32 via USB and click Upload.

Components

CategoryComponent
Microcontroller and CommunicationESP32 / Wroom 32D
SensorsHC-SR04 Ultrasonic Sensor (Obstacle detection), DHT22 (Temperature sensor)
Circuit and IndicatorsPCB (For circuit connections), Buzzer & LED (For warnings and path indication)
Power SupplyLithium-ion battery (18650), Battery charger
DisplayOLED Display (0.96" or 1.3", SSD1306/SH1106, I2C/SPI)
Data HandlingData will be transmitted and analyzed using ThingSpeak. The Arduino API will be used for interfacing and control.

Circuit

Project Snapshots

Environmental Sensor Readings from Rover Prototype

Dataset

What the Data Shows

This dataset contains 5,400 timestamped temperature and humidity readings collected over a period of 3 hours and logged every 2 seconds by the rover’s onboard DHT22 sensor. The data highlights:

  • Gradual fluctuations in environmental conditions.
  • Notable temperature spikes (~10°C) introduced using a lighter to test sensor response.
  • Stable humidity levels with minor deviations due to air circulation or sensor drift.

Notable Findings

  • Controlled Temperature Spikes: Short bursts of heat resulted in clear temperature increases (~10°C), demonstrating the sensor's ability to detect and log transient changes.
  • Humidity Stability: Humidity levels remained within a narrow range, confirming minimal impact from applied temperature fluctuations.
  • Gradual Environmental Variations: Small temperature and humidity shifts were observed, likely due to ambient conditions and ventilation effects.

How the Data Was Gathered

  • Sensor Used: DHT22 (for temperature & humidity).
  • Data Collection Frequency: Logged every few seconds.
  • Controlled Testing: Heat spikes added using a lighter to simulate external interference.
  • Data Transmission: Logged in real-time via wireless communication to a laptop.

Data Visualised on ThingSpeak

How to Interpret and Use the Data

  • Identify Trends: Observe temperature and humidity variations over time.
  • Detect Anomalies: Locate sharp temperature spikes (~10°C increases) caused by external heating.
  • Compare Sensor Performance: Evaluate how quickly temperature normalizes after a spike.
  • Develop Predictive Models: Train machine learning models to predict environmental changes.

Potential Applications

  • Autonomous Environment Monitoring: Detecting and responding to environmental anomalies.
  • Sensor Calibration & Validation: Testing DHT22 sensor accuracy under different conditions.
  • Climate Simulation & Research: Indoor climate modeling & environmental trend analysis.
  • Robotics & AI: Training AI for automated responses to climate fluctuations.

License

This project is open-source under the CC BY 4.0.

Parts

4
QtyValueFootprintReferences
1AM2302Sensor:ASAIR_AM2302_P2.54mm_VerticalU2
1BQ24090DGQPackage_SO:HVSSOP-10-1EP_3x3mm_P0.5mm_EP1.57x1.88mm_ThermalViasU3
1ESP32-WROOM-32RF_Module:ESP32-WROOM-32U1
1OLED-128O064DDisplay:OLED-128O064DDS1

Questions

What parts does the Mars rover navigation system use?

4 parts, built around the ESP32-WROOM-32, AM2302 and BQ24090DGQR. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Mars rover navigation system KiCad files?

From the tjiuce/rover repository on GitHub, at the commit this page was made from: the board is circuit/mars_rover_navigation_system.kicad_pcb and its schematic circuit/mars_rover_navigation_system.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Mars rover navigation system design in my own project?

Its repository states no licence, so its author keeps all rights: ask tjiuce before reusing the design.

Similar boards

  • 2 layersPriject 2 ESP32 build, the printed circuit board in 3D

    Priject 2 ESP32 build

    Aanuoluwap/555blinker

    This repository contains electronics design projects created using KiCad.

    12 parts1MIT
  • 4 layers79.9 × 84.7 mmUTS PCB Dewi, the printed circuit board in 3D

    UTS PCB Dewi

    astarsD130/UTS-matkul-pcb

    55 parts
  • 4 layers77.9 × 81.6 mmLilygo, the printed circuit board in 3D

    Lilygo

    Ndambia/lilygo

    A custom 4-layer KiCad PCB design integrating an ESP32 Wi-Fi/Bluetooth microcontroller with a SIM7600G-H 4G LTE Cat-4 cellular module, comprehensive power management, GPS tracking, GPRS connectivity, USB-C charging…

    188 parts
  • 2 layers52 × 54 mmSensorNodePCB, the printed circuit board in 3D

    SensorNodePCB

    Vinay-Kumbar/SensorNode-PCB-Design

    PCB design for a multi-sensor node (ESP32, DHT22, vibration sensor) built in KiCad — schematic, layout, and manufacturing files

    8 parts
  • 2 layers182 × 105 mmPocketComputerUniversalInterface, the printed circuit board in 3D

    PocketComputerUniversalInterface

    N1UGK/PCUI_Public

    Collection of Programs and Utilities for the Pocket Computer Universal Interface

    161 parts15
  • 2 layers100 × 25 mmRechargeable 5V power bank REV 0.52, the printed circuit board in 3D

    Rechargeable 5V power bank REV 0.52

    shaharsery/5V-Power-Bank

    This is an open source hardware 5V rechargeable power bank, intended for use with 1 Li-ion / Li-Pol 3.7V rechargeable battery cell.

    69 parts9CC-BY-SA-4.0