From 427998e3506be484caeec94ab720cefbfebf35f2 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Wed, 25 Jan 2017 02:50:39 +0100 Subject: wip --- car/common.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'car/common.cpp') diff --git a/car/common.cpp b/car/common.cpp index 90f08d2..7b5522f 100644 --- a/car/common.cpp +++ b/car/common.cpp @@ -3,31 +3,36 @@ #include "pb_encode.h" #include "pb_decode.h" +#define MAXSZ 32 + bool write_callback(pb_ostream_t *stream, const uint8_t *buf, size_t count) { - return Serial.write(buf, count) == count; + int result = Serial.write(buf, count); +// Serial.flush(); + return result == count; } bool read_callback(pb_istream_t *stream, uint8_t *buf, size_t count) { int result = Serial.readBytes(buf, count); - if (result <= 0) + if (result == 0) { stream->bytes_left = 0; // EOF + } return result == count; } pb_ostream_t pb_ostream_from_serial() { - pb_ostream_t stream = {&write_callback, NULL, SIZE_MAX, 0}; + pb_ostream_t stream = {write_callback, NULL, MAXSZ, 0}; return stream; } pb_istream_t pb_istream_from_serial() { - pb_istream_t stream = {&read_callback, NULL, SIZE_MAX}; + pb_istream_t stream = {read_callback, NULL, MAXSZ}; return stream; } -- cgit v1.2.3