diff --git a/CHANGELOG.md b/CHANGELOG.md index d23a163..0bd81dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -130,7 +130,6 @@ No migration needed. Existing code continues to work. To use new features: ## Future Improvements Tracked in GitHub issues: -- [ ] Add unit tests for `serial_utils.py` validation functions - [ ] Add integration tests for serial communication - [ ] Create automated memory leak testing for C++ code - [ ] Add configuration file support (YAML/JSON) for complex setups diff --git a/TROUBLESHOOTING.md b/TROUBLESHOOTING.md index 0f68ee0..b5036d7 100644 --- a/TROUBLESHOOTING.md +++ b/TROUBLESHOOTING.md @@ -7,7 +7,7 @@ #### Error: "Unknown board ID" **Symptom**: Build fails with `Error: Unknown board ID 'heltec_wifi_lora_32_V3'` -**Solution**: Update your ESP32 Expressif catalog: +**Solution**: Update your ESP32 Espressif catalog: ```bash pio pkg update -g -p espressif32 ``` diff --git a/scripts/rpi-proxy-fc.py b/scripts/rpi-proxy-fc.py index 29ea052..41a78a4 100644 --- a/scripts/rpi-proxy-fc.py +++ b/scripts/rpi-proxy-fc.py @@ -148,17 +148,21 @@ with MSPy(device=DRONE_PORT, loglevel="WARNING", baudrate=115200) as board: c16 = crc16(line, so_far) if checksum != c16: continue + + # Parse the scan result try: count, data = parse_line(line) - data.sort() - candidate = get_candidates(data) - osd_text = str2osd(f"{candidate[0]}: {candidate[1]}") - board.send_RAW_msg(INAV_KONRAD_SET_PILOT_NAME, osd_text) - heading = get_heading(board) - lora.write(f"HEADING {heading}\n".encode("utf-8")) except json.JSONDecodeError as e: print(f"Error parsing JSON: {e}") continue except Exception as e: print(f"Error processing scan result: {e}") continue + + # Process successfully parsed data + data.sort() + candidate = get_candidates(data) + osd_text = str2osd(f"{candidate[0]}: {candidate[1]}") + board.send_RAW_msg(INAV_KONRAD_SET_PILOT_NAME, osd_text) + heading = get_heading(board) + lora.write(f"HEADING {heading}\n".encode("utf-8"))