From 24173296670dafc88f06809b7a6fd932d2162763 Mon Sep 17 00:00:00 2001 From: Shashank Agarwal <48916902+Witty-Wizard@users.noreply.github.com> Date: Thu, 5 Dec 2024 22:03:35 -0800 Subject: [PATCH 1/5] Added: Uart inversion to RP2040 code --- src/ibus/ibus.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/ibus/ibus.cpp b/src/ibus/ibus.cpp index f5f8afe..6ac0eb2 100644 --- a/src/ibus/ibus.cpp +++ b/src/ibus/ibus.cpp @@ -15,6 +15,8 @@ void ibus::begin() { #elif defined(ARDUINO_ARCH_RP2040) SerialUART *serialPort = (SerialUART *)_rxPort; serialPort->setPinout(_txPin, _rxPin); + serialPort->setInvertRX(_inverted); + serialPort->setInvertTX(_inverted); serialPort->begin(IBUS_BAUDRATE, SERIAL_8N1); #else #warning #warning "Unsupported hardware platform." From 4726ff9a367f07ba57d2e71af61681d404256415 Mon Sep 17 00:00:00 2001 From: Shashank Agarwal <48916902+Witty-Wizard@users.noreply.github.com> Date: Thu, 5 Dec 2024 22:08:14 -0800 Subject: [PATCH 2/5] Updated: Library version in properties file --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index 56c10d9..8e15f7e 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=serialIO -version=0.2.3 +version=0.2.4 category=Communication sentence=RC protocol paragraph=A common library that can decode multiple RC protocols From c07c001f97501b2918b8941f3168e38cacb8c398 Mon Sep 17 00:00:00 2001 From: Shashank Agarwal <48916902+Witty-Wizard@users.noreply.github.com> Date: Thu, 5 Dec 2024 22:15:27 -0800 Subject: [PATCH 3/5] Added: Uart Inversion code to all the protocols --- src/crsf/crsf.cpp | 2 ++ src/fport/fport.cpp | 2 ++ src/sbus/sbus.cpp | 2 ++ 3 files changed, 6 insertions(+) diff --git a/src/crsf/crsf.cpp b/src/crsf/crsf.cpp index 1daa0af..1b10e9b 100644 --- a/src/crsf/crsf.cpp +++ b/src/crsf/crsf.cpp @@ -12,6 +12,8 @@ void crsf::begin() { #elif defined(ARDUINO_ARCH_RP2040) SerialUART *serialPort = (SerialUART *)_rxPort; serialPort->setPinout(_txPin, _rxPin); + serialPort->setInvertRX(_inverted); + serialPort->setInvertTX(_inverted); serialPort->begin(CRSF_BAUDRATE, SERIAL_8N1); #else #warning #warning "Unsupported hardware platform." diff --git a/src/fport/fport.cpp b/src/fport/fport.cpp index e541978..dcbe24b 100644 --- a/src/fport/fport.cpp +++ b/src/fport/fport.cpp @@ -18,6 +18,8 @@ void fport::begin() { #elif defined(ARDUINO_ARCH_RP2040) SerialUART *serialPort = (SerialUART *)_rxPort; serialPort->setPinout(_txPin, _rxPin); + serialPort->setInvertRX(_inverted); + serialPort->setInvertTX(_inverted); serialPort->begin(FPORT_BAUDRATE, SERIAL_8N1); #else #warning "Unsupported hardware platform." diff --git a/src/sbus/sbus.cpp b/src/sbus/sbus.cpp index eafc2f4..4b874c1 100644 --- a/src/sbus/sbus.cpp +++ b/src/sbus/sbus.cpp @@ -17,6 +17,8 @@ void sbus::begin() { #elif defined(ARDUINO_ARCH_RP2040) SerialUART *serialPort = (SerialUART *)_rxPort; serialPort->setPinout(_txPin, _rxPin); + serialPort->setInvertRX(_inverted); + serialPort->setInvertTX(_inverted); serialPort->begin(SBUS_BAUDRATE, SERIAL_8E2); #else #warning "Unsupported hardware platform." From 51cabfd4d13cf6f1324f4d6bf5f4f5fe0c00967c Mon Sep 17 00:00:00 2001 From: Shashank Agarwal <48916902+Witty-Wizard@users.noreply.github.com> Date: Thu, 5 Dec 2024 22:16:16 -0800 Subject: [PATCH 4/5] Removed: Warning Typo --- src/crsf/crsf.cpp | 2 +- src/ibus/ibus.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/crsf/crsf.cpp b/src/crsf/crsf.cpp index 1b10e9b..9a5ed2f 100644 --- a/src/crsf/crsf.cpp +++ b/src/crsf/crsf.cpp @@ -16,7 +16,7 @@ void crsf::begin() { serialPort->setInvertTX(_inverted); serialPort->begin(CRSF_BAUDRATE, SERIAL_8N1); #else -#warning #warning "Unsupported hardware platform." +#warning "Unsupported hardware platform." #endif } diff --git a/src/ibus/ibus.cpp b/src/ibus/ibus.cpp index 6ac0eb2..87a25ba 100644 --- a/src/ibus/ibus.cpp +++ b/src/ibus/ibus.cpp @@ -19,7 +19,7 @@ void ibus::begin() { serialPort->setInvertTX(_inverted); serialPort->begin(IBUS_BAUDRATE, SERIAL_8N1); #else -#warning #warning "Unsupported hardware platform." +#warning "Unsupported hardware platform." #endif } From 3a8b0e1b496604193cb6fd7dd33d160eac341935 Mon Sep 17 00:00:00 2001 From: Shashank Agarwal <48916902+Witty-Wizard@users.noreply.github.com> Date: Fri, 6 Dec 2024 02:45:04 -0800 Subject: [PATCH 5/5] Fixed: Bug where the data was being --- src/ibus/ibus.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/ibus/ibus.cpp b/src/ibus/ibus.cpp index 87a25ba..1790f2a 100644 --- a/src/ibus/ibus.cpp +++ b/src/ibus/ibus.cpp @@ -28,7 +28,7 @@ void ibus::processIncoming() { _rxData[IBUS_MAX_PACKET_SIZE - 1] = _rxPort->read(); if (_rxData[0] == IBUS_HEADER1 && _rxData[1] == IBUS_HEADER2) { if (checkSum()) { - _channelData.header = (_rxData[2] << 8) | _rxData[0]; + _channelData.header = (_rxData[1] << 8) | _rxData[0]; _channelData.channel1 = (_rxData[3] << 8) | _rxData[2]; _channelData.channel2 = (_rxData[5] << 8) | _rxData[4]; _channelData.channel3 = (_rxData[7] << 8) | _rxData[6];