@@ -39,7 +39,10 @@ void btReadTask(void *e)
39
39
{
40
40
// Ignore this escape character, passing along to output
41
41
if (USE_I2C_GNSS)
42
- serialGNSS.write (incoming);
42
+ {
43
+ // serialGNSS.write(incoming);
44
+ theGNSS.pushRawData (&incoming, 1 );
45
+ }
43
46
else
44
47
theGNSS.pushRawData (&incoming, 1 );
45
48
}
@@ -50,7 +53,11 @@ void btReadTask(void *e)
50
53
while (btEscapeCharsReceived-- > 0 )
51
54
{
52
55
if (USE_I2C_GNSS)
53
- serialGNSS.write (btEscapeCharacter);
56
+ {
57
+ // serialGNSS.write(btEscapeCharacter);
58
+ uint8_t escChar = btEscapeCharacter;
59
+ theGNSS.pushRawData (&escChar, 1 );
60
+ }
54
61
else
55
62
{
56
63
uint8_t escChar = btEscapeCharacter;
@@ -61,7 +68,12 @@ void btReadTask(void *e)
61
68
// Pass byte to GNSS receiver or to system
62
69
// TODO - control if this RTCM source should be listened to or not
63
70
if (USE_I2C_GNSS)
64
- serialGNSS.write (incoming);
71
+ {
72
+ // UART RX can be corrupted by UART TX
73
+ // See issue: https://github.com/sparkfun/SparkFun_RTK_Firmware/issues/469
74
+ // serialGNSS.write(incoming);
75
+ theGNSS.pushRawData (&incoming, 1 );
76
+ }
65
77
else
66
78
theGNSS.pushRawData (&incoming, 1 );
67
79
0 commit comments