Refactor bridge packet handling to use common magic number and size constants

This commit is contained in:
João Brázio 2025-09-08 11:15:28 +01:00
parent 7fca20475a
commit 1d25c87c57
No known key found for this signature in database
GPG key ID: 56A1490716A324DD
6 changed files with 40 additions and 37 deletions

View file

@ -52,8 +52,8 @@ void RS232Bridge::onPacketTransmitted(mesh::Packet *packet) {
}
// Build packet header
buffer[0] = (SERIAL_PKT_MAGIC >> 8) & 0xFF; // Magic high byte
buffer[1] = SERIAL_PKT_MAGIC & 0xFF; // Magic low byte
buffer[0] = (BRIDGE_PACKET_MAGIC >> 8) & 0xFF; // Magic high byte
buffer[1] = BRIDGE_PACKET_MAGIC & 0xFF; // Magic low byte
buffer[2] = (len >> 8) & 0xFF; // Length high byte
buffer[3] = len & 0xFF; // Length low byte
@ -77,14 +77,14 @@ void RS232Bridge::loop() {
if (_rx_buffer_pos < 2) {
// Waiting for magic word
if ((_rx_buffer_pos == 0 && b == ((SERIAL_PKT_MAGIC >> 8) & 0xFF)) ||
(_rx_buffer_pos == 1 && b == (SERIAL_PKT_MAGIC & 0xFF))) {
if ((_rx_buffer_pos == 0 && b == ((BRIDGE_PACKET_MAGIC >> 8) & 0xFF)) ||
(_rx_buffer_pos == 1 && b == (BRIDGE_PACKET_MAGIC & 0xFF))) {
_rx_buffer[_rx_buffer_pos++] = b;
} else {
// Invalid magic byte, reset and start over
_rx_buffer_pos = 0;
// Check if this byte could be the start of a new magic word
if (b == ((SERIAL_PKT_MAGIC >> 8) & 0xFF)) {
if (b == ((BRIDGE_PACKET_MAGIC >> 8) & 0xFF)) {
_rx_buffer[_rx_buffer_pos++] = b;
}
}