But instead, because of my debugging print, received the following:
It seems the bug is located on line 93 of SerialCmdStack.cpp.
I think there are two possible ways to solve this: the first one is verifiying all received serial data before processing it (as any of us can modify our own Bittle's code and make it print/send any kind of message), this is probably too inneficent or just unmanageable; the other solution would be making sure people know that this software is only compatible with default/official Bittle code (adding it to Readme should be enough).
· I think there should be some kind of feedback when trying to connect to Bittle through Bluetooth. I selected the default shown port, pressed "Connect" and waited for a while before realising I had chosen a wrong port number. Maybe you could add a connection timeout to let people know that connecting to Bittle wasn't achieved.
· I think its necessary to add a way to protect Bittle from sending a lot of commands in a short period of time. I tried sending many movement commands at once (pressing awsd randomly) and it caused Bittle to fail. I already faced this problem while developing the Android app and the XboxController app and the only solution I have though of so far is adding a delay to user input, but there must be better ways to prevent this.
· If you plan to allow saving the connection settings (Baud Rate, Stop Bit, etc) between sessions, it would be great if default values were listed on Readme, just in case someone modifies it by mistake and cant remember the default values. Adding a "Reset" button could be enough.
This is what I have found so far, Im sure you already have though of many of the things I listed, hope this is useful.