From 6b106eeb3841ad394bed0ef56aab918184dd4ba8 Mon Sep 17 00:00:00 2001 From: ununnilio Date: Wed, 14 Aug 2024 23:23:43 +0200 Subject: [PATCH] made it work correctly with inverse logic d ^= 511; // toggle using binary mask 111111111 instead of d = ~d; used in the original library SoftwareSerial --- src/SoftwareSerial9.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/SoftwareSerial9.cpp b/src/SoftwareSerial9.cpp index 1930c8d..78da2cc 100644 --- a/src/SoftwareSerial9.cpp +++ b/src/SoftwareSerial9.cpp @@ -165,7 +165,7 @@ void SoftwareSerial9::recv() } if (_inverse_logic) - d = ~d; + d ^= 511; // toggle using binary mask 111111111 // if buffer full, set the overflow flag and return uint8_t next = (_receive_buffer_tail + 1) % _SS_MAX_RX_BUFF;