salty ed1542ae11 feat: rewrite UWB firmware for DW1000 (all 3 boards)
Anchor (esp32/uwb_anchor):
- DW1000Ranging library (200m range, MODE_LONGDATA_RANGE_ACCURACY)
- Unique addresses per anchor (anchor0/anchor1 build envs)
- +RANGE output: anchor_id, tag_addr, range_mm, rssi
- ESP-NOW receiver: forwards tag packets + priority E-STOP to Jetson
- AT+ID? command

Tag with Display (esp32/uwb_tag):
- DW1000Ranging as tag, auto-discovers anchors
- SSD1306 OLED: big distance, per-anchor ranges, RSSI bars, link status
- ESP-NOW broadcast: range/heartbeat/estop packets
- E-Stop on GPIO 0 (BOOT button), 10Hz TX while held
- Display at 5Hz, ranging driven by DW1000Ranging.loop()

Shared:
- lib/DW1000/ extracted from mf_DW1000.zip (Makerfabs fork)
- lib_extra_dirs for PlatformIO to find local library
2026-03-14 12:30:26 -04:00

207 lines
2.1 KiB
Plaintext

G04 MADE WITH FRITZING*
G04 WWW.FRITZING.ORG*
G04 DOUBLE SIDED*
G04 HOLES PLATED*
G04 CONTOUR ON CENTER OF CONTOUR VECTOR*
%ASAXBY*%
%FSLAX23Y23*%
%MOIN*%
%OFA0B0*%
%SFA1.0B1.0*%
%LNPASTEMASK1*%
G90*
G70*
G36*
X334Y326D02*
X373Y326D01*
X373Y423D01*
X334Y423D01*
X334Y326D02*
G37*
D02*
G36*
X389Y326D02*
X428Y326D01*
X428Y423D01*
X389Y423D01*
X389Y326D02*
G37*
D02*
G36*
X444Y326D02*
X483Y326D01*
X483Y423D01*
X444Y423D01*
X444Y326D02*
G37*
D02*
G36*
X499Y326D02*
X539Y326D01*
X539Y423D01*
X499Y423D01*
X499Y326D02*
G37*
D02*
G36*
X554Y326D02*
X594Y326D01*
X594Y423D01*
X554Y423D01*
X554Y326D02*
G37*
D02*
G36*
X609Y326D02*
X649Y326D01*
X649Y423D01*
X609Y423D01*
X609Y326D02*
G37*
D02*
G36*
X665Y326D02*
X704Y326D01*
X704Y423D01*
X665Y423D01*
X665Y326D02*
G37*
D02*
G36*
X720Y326D02*
X759Y326D01*
X759Y423D01*
X720Y423D01*
X720Y326D02*
G37*
D02*
G36*
X250Y445D02*
X347Y445D01*
X347Y485D01*
X250Y485D01*
X250Y445D02*
G37*
D02*
G36*
X250Y500D02*
X347Y500D01*
X347Y540D01*
X250Y540D01*
X250Y500D02*
G37*
D02*
G36*
X250Y555D02*
X347Y555D01*
X347Y595D01*
X250Y595D01*
X250Y555D02*
G37*
D02*
G36*
X250Y611D02*
X347Y611D01*
X347Y650D01*
X250Y650D01*
X250Y611D02*
G37*
D02*
G36*
X250Y666D02*
X347Y666D01*
X347Y705D01*
X250Y705D01*
X250Y666D02*
G37*
D02*
G36*
X250Y721D02*
X347Y721D01*
X347Y760D01*
X250Y760D01*
X250Y721D02*
G37*
D02*
G36*
X250Y776D02*
X347Y776D01*
X347Y815D01*
X250Y815D01*
X250Y776D02*
G37*
D02*
G36*
X250Y831D02*
X347Y831D01*
X347Y870D01*
X250Y870D01*
X250Y831D02*
G37*
D02*
G36*
X746Y445D02*
X842Y445D01*
X842Y485D01*
X746Y485D01*
X746Y445D02*
G37*
D02*
G36*
X746Y500D02*
X842Y500D01*
X842Y540D01*
X746Y540D01*
X746Y500D02*
G37*
D02*
G36*
X746Y555D02*
X842Y555D01*
X842Y595D01*
X746Y595D01*
X746Y555D02*
G37*
D02*
G36*
X746Y611D02*
X842Y611D01*
X842Y650D01*
X746Y650D01*
X746Y611D02*
G37*
D02*
G36*
X746Y666D02*
X842Y666D01*
X842Y705D01*
X746Y705D01*
X746Y666D02*
G37*
D02*
G36*
X746Y721D02*
X842Y721D01*
X842Y760D01*
X746Y760D01*
X746Y721D02*
G37*
D02*
G36*
X746Y776D02*
X842Y776D01*
X842Y815D01*
X746Y815D01*
X746Y776D02*
G37*
D02*
G36*
X746Y831D02*
X842Y831D01*
X842Y870D01*
X746Y870D01*
X746Y831D02*
G37*
D02*
G04 End of PasteMask1*
M02*