Close

TcMenu is amazing

A project log for Cyberpunk UV-5R

Hacking a Baofeng UV-5R to turn it into a cyberpunk “Arduino sdr”

taylor-hayTaylor Hay 07/10/2023 at 02:290 Comments

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