I struggled with the UI for this for some time. I was going to try using this legend's process - by making all the screens in photoshop, however I remembered some good advice from ADHD superstar Zack Freedman, and I aimed to avoid scope creep and make a real MVP before taking all my attention span building gorgeous UI's.
Somehow I stumbled upon TcMenu - which is exactly what I was looking for! Similar projects were higher on the duckduckgo results for some reason, but few I found run well on OSX or Linux, (besides an embarrassing Windows7 VM I dont have any Microsoft in my life)
TcMenu seems perfect - and is advanced enough to allow a rotary encoder to enter 6 digit numbers (perfect for tuning to a custom frequency) and capable of deeply nested menus. To allow me to quickly tune to any one of the 80x UHF frequencies, 60x VHF frequencies, and however many other frequencies I program in, I'm thinking of using a structure like the following - and would love to hear any feedback or suggestions for more features!!
(forgive the odd highlighting...)
UHF_CH
UHF_01-40
UHF_01
UHF_02
UHF_03
...
UHF_41-80
UHF_41
UHF_42
UHF_43
...
SCAN // sets radio to channel mode, channel 1, and then scans through the 127 channels in memory (not sure how to exclude VHF channels)
VHF_CH
VHF_01-30
VHF_01
VHF_02
VHF_03
...
VHF_31-60
VHF_31
VHF_32
VHF_33
...
SCAN // sets radio to channel mode, channel 80, and then scans through the 127 channels in memory (not sure how to exclude UHF channels)
FM_TUNE
000.000 // user can set any frq
SET_FRQ // tunes to above frq
FM_SCAN // macro which sets UV-5R to FM, and then presses scanner button
CONFIG
MANUAL_CONT // allows for doing any function on the UV-5R that one might need to do by exposing the buttons directly
UP_BTN
DWN_BTN
MENU_BTN
EXIT_BTN
01_BTN
02_BTN
...
SQLCH
03 // user settable number
SET_SQLCH
But next step is to go out this arvo and buy a rotary encoder with a button, as I had to strip one out of an old LED work light to get this far
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.