BLE disconnect/reconnect breaks LoRa TX/RX on companion node (reflash required)
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- c, embedded-iot
- Domain
- embedded-iot, networking
Research direction
Start by tracing BLE disconnect and reconnect handling alongside LoRa radio initialization in the firmware; the issue does not name files or tests. Reproduce the reported sequence on the Heltec WiFi LoRa 32 V4-R8, checking whether LoRa TX/RX still works after reconnecting. Done means TX and RX continue working without reflashing.
Written by the indexing model from the issue text.
Description
Firmware: MeshCore v1.17.1-d929643 (BLE Companion)
Hardware: Heltec WiFi LoRa 32 V4-R8 ESP32-S3R8
Phones tested: Two different phones, both reproduce the issue
Description
After disconnecting and reconnecting via BLE, the node stops transmitting and receiving on LoRa. BLE still connects and the LED blinks when advertising, but the node hears nothing and no one hears it. Noise floor stays at -114 dBm and no setup has changed.
Steps to Reproduce
Flash firmware and connect via BLE → TX/RX work fine.
Disconnect BLE.
Reconnect later → LoRa TX/RX no longer works.
Troubleshooting Attempted (none fixed it)
agc.reset.interval 4 + reboot
Removing BLE pairing and reconnecting
Second phone (rules out phone-side issue)
Board reset (not reflash)
What Does Fix It
Reinstalling the firmware — every time. This restores normal operation until the next BLE disconnect/reconnect.
Suspected Cause
Firmware-level BLE disconnect/reconnect bug leaving the LoRa radio uninitialized. Hardware is ruled out: first connection works perfectly, and a reflash fixes it.
- Dominant language
- C
- Stars
- 3.9k
- Forks
- 1.5k
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 24
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from meshcore-dev/MeshCore
-
Difficulty 2/5 1-3 hours Newbie friendliness 63/100
meshcore-dev/MeshCore#3622 ·
Maintainers usually reply within 1 day
-
[Feature Request] Set Australia (Mid) Preset to automatically enable 2 byte default path hash sizeOpen
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
meshcore-dev/MeshCore#3571 · 5 reactions ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
meshcore-dev/MeshCore#3567 · 1 comment ·
Maintainers usually reply within 1 day
-
RTC_RX8130CE writes and reads the one-hot WEEK register as a numberPossibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
meshcore-dev/MeshCore#3549 ·
Maintainers usually reply within 1 day
-
Repeater: CLI reply to 'setperm <key> 0' is lost when the removed ACL entry sits before the requester (stale ClientInfo* after array shift)Possibly taken A pull request linked to this issue is open or already merged. Open
Difficulty 2/5 1-3 hours Newbie friendliness 77/100
meshcore-dev/MeshCore#3513 ·
Maintainers usually reply within 1 day
All issues in meshcore-dev/MeshCore
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
colbymchenry/codegraph#2770 ·
Maintainers usually reply within 1 day
-
area/ysql kind/enhancement priority/medium status/awaiting-triage
Difficulty 2/5 1-3 hours Newbie friendliness 73/100
yugabyte/yugabyte-db#35578 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
Maintainers usually reply within 1 day
-
Bug Status: Needs Triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
interpreter-core type-feature
Difficulty 1/5 Under an hour Newbie friendliness 78/100
Maintainers usually reply within 1 day