Skip to content

bluleap-ai/telematic-esp32

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

58 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ›ฐ๏ธ Telematic Platform for Robotics, EV and IoT

๐Ÿ“‹ Overview

This open-source Telematic Platform for Robotics, EV, and IoT is designed for collecting, processing, and transmitting CAN bus data over multiple connectivity options. It enables real-time monitoring, remote control, and OTA updates for ECUs, making it ideal for robotics, electric vehicles, and IoT applications.

This project is open for contributions! If you're passionate about embedded systems, IoT, telematics, or robotics, we welcome you to collaborate, improve, and extend the platform.


๐Ÿ“‘ Table of Contents


โœจ Key Features

Feature Description
๐Ÿ”„ CAN Bus Integration Collect and transmit CAN messages to cloud servers
โš™๏ธ Remote Configuration Configure data rates, schedules, and commands remotely
๐Ÿ“ก OTA Updates Update firmware for ECUs wirelessly via CAN
๐ŸŒ GPS/GNSS Tracking Real-time geolocation support
๐ŸŽฎ Remote Command & Control Manage ECUs from the cloud
๐Ÿ“ถ Multi-Network Connectivity Supports Wi-Fi, Bluetooth, and LTE
๐Ÿ“Š IMU Sensor Integration Track vibration and environmental factors
๐Ÿšจ Safety Monitoring Fall & crash detection for accidents and system failures
๐Ÿ” Remote Diagnostics Remote fault analysis and debugging

๐Ÿ“ธ Hardware Overview

Telematic Platform Hardware

ESP32-C6 based hardware platform with CAN bus interface, multiple connectivity options, and sensor integrations


๐Ÿ”ง Technical Specifications

Core Capabilities Technical Components
๐Ÿ“ก Multi-Network Connectivity Wi-Fi 6, BLE 5.3, LTE-M via ESP32-C6
๐ŸŽ›๏ธ CAN Bus Integration ISO 15765-2 (CAN FD) with 5Mbps support
๐Ÿ”„ OTA Updates Secure A/B partitioning with Mender.io
๐Ÿ“ GNSS Tracking Multi-constellation GPS/Galileo/GLONASS
๐Ÿšจ Safety Monitoring IMU-based crash detection (MPU-6050)
๐Ÿ“Š Remote Diagnostics J1939/OBD-II protocol decoding

๐Ÿ—๏ธ Project Structure

Root Directory
โ”œโ”€โ”€ build.rs             # Build script
โ”œโ”€โ”€ Cargo.toml           # Workspace manifest
โ”œโ”€โ”€ README.md            # Project documentation
โ”œโ”€โ”€ cert/               # Certificates for secure communication
โ”œโ”€โ”€ scripts/             # Utility scripts
โ”œโ”€โ”€ src/                 # Application source code
โ”‚   โ”œโ”€โ”€ main.rs          # Entry point (init hardware, start tasks)
โ”‚   โ”œโ”€โ”€ cfg/             # Configuration modules
โ”‚   โ”œโ”€โ”€ hal/             # Hardware abstraction layer
โ”‚   โ”œโ”€โ”€ mem/             # Memory management modules
โ”‚   โ”œโ”€โ”€ net/             # Networking modules
โ”‚   โ”œโ”€โ”€ task/            # Async/concurrent tasks
โ”‚   โ””โ”€โ”€ util/            # Utility functions
โ”œโ”€โ”€ tests/               # Test workspace
โ”‚   โ”œโ”€โ”€ src/binaries     # Test sources

๐Ÿš€ Getting Started

Prerequisites

  • ๐Ÿ“ฆ Rust Toolchain (rustup)
  • ๐Ÿ›  ESP-IDF for Rust (espup)
  • ๐Ÿ”Œ ESP32 Development Board
  • ๐ŸŒ Mender Server Account (Hosted or Open Source)

Environment Configuration

Set the following environment variables (create a .env file or export them in your shell):

WIFI_SSID=your_wifi_network
WIFI_PSWD=your_wifi_password
MENDER_CLIENT_URL=your_mender_url
MENDER_CLIENT_TENANT_TOKEN=your_token  # optional

๐Ÿ”จ Installation & Setup

Install Rust for ESP32

rustup install stable
cargo install espup
espup install
cargo install espflash

Compile and Run

Without OTA

cargo run --release

With OTA

cargo run --release --features ota

Run unit tests

cargo build -p ut --bin <module_name>
# where <module_name> is the name of the test binary you want to run

๐Ÿค Community

Join the Discussion

Please join us on Discord: https://discord.gg/b7vk6fza

Demo

  • Coming Soon

๐Ÿ› ๏ธ Contributing

We welcome contributions! Please open issues or pull requests. For major changes, please open an issue first to discuss what you would like to change.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/YourFeature)
  3. Commit your changes (git commit -am 'Add new feature')
  4. Push to the branch (git push origin feature/YourFeature)
  5. Open a pull request

๐Ÿ“„ License

This project is licensed under the MIT or Apache-2.0 License. See LICENSE-MIT and LICENSE-APACHE for details.

About

An advance Telematic box for EV, Robotic....

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published