Some upload script environment user interface issues
Small issues:
- Input does not appear until enter is pressed. It would be nice to see what is typed in case there is an error that needs reviewing, or I change my mind.
- It may help if menus appeared upon entering, and not just the help message, maybe every time an action completes.
- After a small delay, maybe 5 seconds, at least on my platform, I receive the message
Thanks for using SerialUI! Goodbye.. Of course the program runs in sort of a loop, but the current state is lost, which is annoying, and I did not want to exit yet. I understand if this phenomenon is not completely under this project's control, but would appreciate any help in determining why it is happening.
Upon starting the monitor part of the Makefile:
~/P/C/badge (master ⚡→↩☡=) make monitor
<Arduino environment header>
<terminal clear>
Transmitting at 915 Mhz...
RFM69_ATC Enabled (Auto Transmission Control)
It will stay like this until key press. Then this will appear:
+++ Welcome to CarolinaCon 13 +++
Enter '?' for options.
>
The input you type will not appear until you press Enter. Then it will look like this:
+++ Welcome to CarolinaCon 13 +++
Enter '?' for options.
> ?
*** Help for: TOP
+ schedule Print the schedule
+ flashy Flashy flashy
+ radio Radio Properties
* quit Exit SerialUI
* ? List available menu items
>
More examples:
> radio
radio
radio>
> radio
radio
radio> ?
*** Help for: radio
* temp Print Radio Temperature
* .. Move up to parent menu
* ? List available menu items
radio>
<delay of several seconds>
Thanks for using SerialUI! Goodbye.
Note no input was typed or sent, and the sudden disconnection occurred.
Answers to small issues :)
- Echoing over Serial is not trivial. If you have code for it, please send it along.
- Having the current menu print after each command might be doable, let me look into it.
- That is a property of SerialUI. Have to look to see if there is a way to either extend the timeout or turn it off.
- Seems to imply something is possible, and it resides somewhere in this project. I can look into it later, but if you have at least the path and section address of the area to look at.
- Cool, and same as above if you can't get to it, maybe I can look at later as well.
- Would it not be possible from what you know to use the library and have a constant ping-pong (doesn't SSH do this?) communication until quit is sent or the connection is broken by say, the computer sleeping?
Again, thanks for the project to work on. I can look into more details as I have time, but thought you would be able to at least add some quick and useful comments with the issue opened earleir on, and I can just track the issues this way for others to see as well.
For issue 3, looks like you need to edit the following in badge/BadgeSettings.h:
+// serial_maxidle_ms -- how long before we consider the user +// gone, for lack of activity (milliseconds) +#define serial_maxidle_ms 30000 + +// serial_readtimeout_ms -- timeout when we're expecting input +// for a specific request/read (milliseconds) +#define serial_readtimeout_ms 20000