diff --git a/FlippR-Driver/networking/input/InputSocketHandler.cpp b/FlippR-Driver/networking/input/InputSocketHandler.cpp index 69a33b2..8576f9f 100644 --- a/FlippR-Driver/networking/input/InputSocketHandler.cpp +++ b/FlippR-Driver/networking/input/InputSocketHandler.cpp @@ -43,7 +43,7 @@ void InputSocketHandler::run() std::string str = event.getJsonString(); auto size = str.size(); - str = std::to_string(size) + std::to_string(0x02) + str; + str = std::to_string(size) + std::string(1, 0x02) + str; this->socket().sendBytes(str.c_str(), str.size()); } diff --git a/FlippR-Driver/src/utility/BlockingQueue.hpp b/FlippR-Driver/src/utility/BlockingQueue.hpp index ec955fd..8263cbd 100644 --- a/FlippR-Driver/src/utility/BlockingQueue.hpp +++ b/FlippR-Driver/src/utility/BlockingQueue.hpp @@ -43,7 +43,7 @@ public: { std::unique_lock lock(this->d_mutex); this->d_condition.wait(lock, [=] - { return !this->p_queue.empty(); }); + { return !this->p_queue.empty(); }); T rc = *this->p_queue.begin(); this->p_queue.pop(); return rc; diff --git a/FlippR-Driver/src/utility/wiringPiTesting.hpp b/FlippR-Driver/src/utility/wiringPiTesting.hpp index 3bc68cd..818e5e1 100644 --- a/FlippR-Driver/src/utility/wiringPiTesting.hpp +++ b/FlippR-Driver/src/utility/wiringPiTesting.hpp @@ -6,6 +6,7 @@ #define FLIPPR_DRIVER_WIRINGPITESTING_H #include +#include #define INPUT 0 #define OUTPUT 1 @@ -23,8 +24,8 @@ void pinMode(int pin, int mode) int digitalRead(int pin) { - //std::cout << "Reading pin " << pin << std::endl; - return 0; + //std::cout << "Reading pin " << pin << std::endl + return rand()%2 == 0 ? 1 : 0; } void digitalWrite(int pin, int value) diff --git a/cli/FlippR_Networking.py b/cli/FlippR_Networking.py index f9c836b..5c365ed 100644 --- a/cli/FlippR_Networking.py +++ b/cli/FlippR_Networking.py @@ -46,10 +46,11 @@ class Networking: self.get("/displays" + display + "/write_score/" + str(score)) def getInputEvent(self): - header = '' - while chr(2) not in header: - header += str(self.input_socket.recv(1)) + header = bytearray() + while b'\x02' not in header: + bla = self.input_socket.recv(1) + header.append(bla) - length = int(header[:-1]) + length = int(str(header[:-1])) return self.input_socket.recv(length) diff --git a/cli/main.py b/cli/main.py index 23b940d..0d3bbc8 100644 --- a/cli/main.py +++ b/cli/main.py @@ -43,11 +43,11 @@ def create_menu(): # quit = True def print_input(): + print("Starting to print incoming events:") # end_loop_handler = signal.signal(signal.SIGINT, sigint_handler) while(True): print(networking.getInputEvent()) # signal.signal(signal.SIGINT, end_loop_handler) - quit = False def create_lamps_submenu(lamps): menu = CursesMenu("Output", "Lamps")