Skip to content

Commit 9b63f67

Browse files
committed
Document Wired Detector in README and INMP441 mic option
README.md was still describing the project as "Detector or Gateway" and showing only the LoRa architecture. Update the tagline, intro, web flasher blurb, and Quick Start to also cover the Wired Detector role, and split the architecture diagram into a Wireless (LoRa) and a Wired (Ethernet/PoE + REST/OTA) block. Also correct the stale 28-byte LoRa packet figure to match the 36-byte format already used in docs/architecture.md. docs/hardware.md now lists INMP441 as a drop-in alternative to ICS-43434 on both the Heltec V3/V4 detector and the T-ETH-Lite S3 wired detector wiring tables (same pinout, same I2S protocol), with a short note on the sensitivity (-38 vs -26 dBFS) and AOP (130 vs 120 dB SPL) trade-offs so users can pick informedly between the two mics. Made-with: Cursor
1 parent b2c16bf commit 9b63f67

2 files changed

Lines changed: 40 additions & 12 deletions

File tree

README.md

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<img src="icon.png" alt="Batear Logo" width="200"/>
33

44
<h1>Batear</h1>
5-
<p><strong>An ultra-low-cost, edge-only acoustic drone detector on ESP32-S3 with encrypted LoRa alerting.</strong></p>
5+
<p><strong>An ultra-low-cost, edge-only acoustic drone detector on ESP32-S3 with encrypted LoRa or wired Ethernet/PoE alerting.</strong></p>
66

77
<p align="center">
88
<a href="https://opencollective.com/batear"><img src="https://img.shields.io/opencollective/all/batear?label=Sponsors&color=blue" alt="Sponsors"></a>
@@ -48,7 +48,7 @@ Drones are an increasing threat to homes, farms, and communities — and effecti
4848

4949
For ultra-low-cost hardware, Batear turns a tiny ESP32-S3 microcontroller and a MEMS microphone into an always-on acoustic drone detector. It runs entirely at the edge — **no cloud subscription, no internet connection, no ongoing cost.** Deploy one at a window, a fence line, or a rooftop and it will alert you the moment drone rotor harmonics are detected nearby.
5050

51-
The same codebase builds as a **Detector** (mic + LoRa TX) or a **Gateway** (LoRa RX + OLED + LED + MQTT), selectable at build time. The gateway forwards alerts to **Home Assistant** via MQTT with automatic device discovery.
51+
The same codebase builds as a **Detector** (mic + LoRa TX), a **Gateway** (LoRa RX + OLED + LED + MQTT), or a **Wired Detector** (mic + Ethernet/PoE + MQTT), selectable at build time. The gateway forwards alerts to **Home Assistant** via MQTT with automatic device discovery; the wired detector publishes directly over Ethernet — no LoRa or gateway required, ideal for permanent installations.
5252

5353
---
5454

@@ -58,7 +58,7 @@ Flash firmware directly from your browser — no toolchain needed:
5858

5959
**[Open Web Flasher](https://docs.batear.io/flasher/)**
6060

61-
> Requires Chrome or Edge on desktop. Just connect your Heltec V3 or V4 via USB-C and click Install.
61+
> Requires Chrome or Edge on desktop. Connect a Heltec V3/V4 (Detector or Gateway) or a LILYGO T-ETH-Lite S3 (Wired Detector) via USB-C and click Install.
6262
6363
---
6464

@@ -96,11 +96,15 @@ Full documentation is available at **[batear.io](https://docs.batear.io)**.
9696

9797
## 🏗️ System Architecture
9898

99+
Batear supports two deployment models — pick whichever fits the site:
100+
101+
### Wireless (LoRa Detector → Gateway → MQTT)
102+
99103
```
100104
┌──────────────────────┐ LoRa 915 MHz ┌──────────────────────┐
101105
│ DETECTOR (×N) │ ───────────────────────────► │ GATEWAY (×1) │
102106
│ │ AES-128-GCM encrypted │ │
103-
│ ICS-43434 mic │ 28-byte packets │ SSD1306 OLED display│
107+
│ ICS-43434 mic │ 36-byte packets │ SSD1306 OLED display│
104108
│ FFT harmonic detect │ │ LED alarm indicator │
105109
│ SX1262 LoRa TX │ │ SX1262 LoRa RX │
106110
└──────────────────────┘ │ WiFi + MQTT TX │
@@ -114,6 +118,19 @@ Full documentation is available at **[batear.io](https://docs.batear.io)**.
114118
└──────────────────────┘
115119
```
116120

121+
### Wired (Ethernet/PoE Detector → MQTT, no gateway)
122+
123+
```
124+
┌──────────────────────┐
125+
│ WIRED DETECTOR (×N) │ Ethernet (PoE)
126+
│ │ ───────────────────────────► ┌──────────────────────┐
127+
│ ICS-43434 mic │ MQTT / JSON │ HOME ASSISTANT │
128+
│ FFT harmonic detect │ + REST API / OTA │ (auto-discovery) │
129+
│ W5500 Ethernet │ └──────────────────────┘
130+
└──────────────────────┘
131+
LILYGO T-ETH-Lite S3
132+
```
133+
117134
---
118135

119136
## ⚡ Quick Start (Build from Source)
@@ -122,7 +139,8 @@ Full documentation is available at **[batear.io](https://docs.batear.io)**.
122139
# Clone
123140
git clone https://github.com/batear-io/batear.git && cd batear
124141

125-
# Build detector
142+
# Build detector (swap sdkconfig.detector → sdkconfig.gateway or
143+
# sdkconfig.wired_detector for the other roles)
126144
idf.py -B build_detector \
127145
-DSDKCONFIG=build_detector/sdkconfig \
128146
-DSDKCONFIG_DEFAULTS="sdkconfig.defaults;sdkconfig.detector" \
@@ -133,7 +151,7 @@ idf.py -B build_detector -DSDKCONFIG=build_detector/sdkconfig build
133151
idf.py -B build_detector -DSDKCONFIG=build_detector/sdkconfig -p PORT flash monitor
134152
```
135153

136-
See the [full build guide](https://docs.batear.io/build-flash/) for gateway setup and detailed instructions.
154+
See the [full build guide](https://docs.batear.io/build-flash/) for gateway and wired-detector setup and detailed instructions.
137155

138156
---
139157

docs/hardware.md

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@
55
| Component | Notes |
66
|:---|:---|
77
| Heltec WiFi LoRa 32 V3 / V4 | ESP32-S3 + SX1262 on-board |
8-
| ICS-43434 I2S MEMS microphone | 3.3 V, L/R → GND (left channel) |
8+
| ICS-43434 **or** INMP441 I2S MEMS microphone | 3.3 V, L/R → GND (left channel) |
99

10-
### Wiring (ICS-43434 → Heltec V3 / V4)
10+
### Wiring (ICS-43434 / INMP441 → Heltec V3 / V4)
1111

12-
| ICS-43434 | GPIO | Function |
12+
| Mic pin | GPIO | Function |
1313
|:---|:---|:---|
1414
| VDD | 3.3V | Power |
1515
| GND | GND | Ground |
@@ -18,6 +18,13 @@
1818
| SD | 6 | I2S data input (DIN) |
1919
| L/R | GND | Left channel select |
2020

21+
!!! note "ICS-43434 vs INMP441"
22+
Both mics share the same pinout and I2S protocol, so they're drop-in
23+
interchangeable on this wiring. ICS-43434 is preferred for drone detection
24+
(higher sensitivity at −38 dBFS, 130 dB SPL AOP); INMP441 is cheaper and
25+
easier to source, but has lower sensitivity (−26 dBFS) and a 120 dB SPL
26+
AOP, which can clip on close, loud sources.
27+
2128
### Battery monitoring (optional)
2229

2330
Heltec V3 / V4 ship with an on-board LiPo jack, charger, and a resistor divider that taps VBAT onto **GPIO1 (ADC1_CH0)**, gated by **GPIO37 (ADC_Ctrl, active low)**. The firmware drives the gate low only during a ~2 ms measurement window on every LoRa TX, so the divider's ~100 µA current drain is effectively eliminated between reads.
@@ -29,11 +36,11 @@ No extra wiring is required — plug a 1S LiPo into the JST connector and the de
2936
| Component | Notes |
3037
|:---|:---|
3138
| LILYGO T-ETH-Lite S3 | ESP32-S3 + W5500 Ethernet on-board, optional PoE expansion |
32-
| ICS-43434 I2S MEMS microphone | 3.3 V, L/R → GND (left channel) |
39+
| ICS-43434 **or** INMP441 I2S MEMS microphone | 3.3 V, L/R → GND (left channel) |
3340

34-
### Wiring (ICS-43434 → T-ETH-Lite S3)
41+
### Wiring (ICS-43434 / INMP441 → T-ETH-Lite S3)
3542

36-
| ICS-43434 | GPIO | Function |
43+
| Mic pin | GPIO | Function |
3744
|:---|:---|:---|
3845
| VDD | 3.3V | Power |
3946
| GND | GND | Ground |
@@ -42,6 +49,9 @@ No extra wiring is required — plug a 1S LiPo into the JST connector and the de
4249
| SD | 40 | I2S data input (DIN) |
4350
| L/R | GND | Left channel select |
4451

52+
See the [ICS-43434 vs INMP441 note above](#detector) for sensitivity / AOP
53+
differences when choosing between the two mics.
54+
4555
!!! tip
4656
GPIO 38/39/40 are on the extension headers of the T-ETH-Lite S3. These pins avoid conflicts with the on-board W5500 Ethernet (GPIO 9–14) and SD card (GPIO 5–7, 42).
4757

0 commit comments

Comments
 (0)