diff --git a/README.md b/README.md new file mode 100644 index 0000000..e0a58e7 --- /dev/null +++ b/README.md @@ -0,0 +1,30 @@ +ESP32-S3 vehicle telemetry and GPS tracker streaming location and vehicle status over Cat-M/NB-IoT cellular networks. + +![hero](docs/images/hero.jpg) + +**Status: in progress** + +### What it does +* Tracks real-time GNSS location and reports vehicle coordinates over Cat-M / NB-IoT cellular data +* Manages power and deep sleep based on car ignition status to preserve vehicle battery +* Processes remote configuration and trigger commands via SMS and HTTP polling +* Supports over-the-air (OTA) firmware updates, geofencing, and ESP-NOW local fallbacks + +### Bill of Materials +| Part | Quantity | Purpose | +| :--- | :---: | :--- | +| ESP32-S3 Development Board | 1 | Microcontroller running modular C++ telemetry firmware | +| Waveshare Pico SIM7080G Module | 1 | Cat-M / NB-IoT cellular modem & GNSS positioning engine | +| Hologram SIM Card | 1 | Global IoT cellular data connectivity | +| 12V-to-5V Buck Converter | 1 | Steps down car 12V DC power to 5V DC circuit power | +| LiPo Battery Charge Controller | 1 | Manages backup LiPo battery during vehicle power loss | + +### How it works +Firmware isolates hardware control into dedicated C++ modules (`GNSS`, `Modem`, `PowerMgr`). Cellular communication uses AT commands over UART (Serial2, 9600 baud on pins 16/17) with dedicated power control on GPIO 4. Telemetry payloads are packaged into JSON and pushed via HTTP POST to the Laravel backend. + +### What broke +* SIM7080G cold-boot PDP context attach required exact pulse timing on the PWR pin (GPIO 4) to ensure modem initialization before issuing `AT+CGNSPWR=1` for GNSS power. + +### Links +* Web Dashboard: [CAR_GPS_REACT](https://gitea.lab.audasmedia.com.au/sam/CAR_GPS_REACT) +* Backend API: [Laravel-GPS-API](https://gitea.lab.audasmedia.com.au/sam/Laravel-GPS-API) diff --git a/docs/images/README.md b/docs/images/README.md index 0caa147..1912028 100644 --- a/docs/images/README.md +++ b/docs/images/README.md @@ -1,5 +1,5 @@ -# Hardware images +# Hardware Images Manifest -`sim7080g-lte-module.jpg` — Waveshare Pico SIM7080G Cat-M / NB-IoT module, used with the -ESP32 for the cellular link in this tracker. Source: the Waveshare product page for -PICO-SIM7080G-Cat-M-NB-IoT. A product image, used to identify the part. +`hero.jpg` — Treated hero banner (1600×1000px, `#0b0d10` dark theme canvas with left gradient fade) showing the Waveshare SIM7080G Cat-M / NB-IoT cellular and GNSS hardware assembly. + +`sim7080g-lte-module.jpg` — Waveshare Pico SIM7080G Cat-M / NB-IoT module, used with the ESP32-S3 for cellular connectivity in this tracker. Source: Waveshare PICO-SIM7080G product page. diff --git a/docs/images/hero.jpg b/docs/images/hero.jpg new file mode 100644 index 0000000..4342760 Binary files /dev/null and b/docs/images/hero.jpg differ