Keyboard Shortcuts
ctrl + shift + ? :
Show all keyboard shortcuts
ctrl + g :
Navigate to a group
ctrl + shift + f :
Find
ctrl + / :
Quick actions
esc to dismiss
Likes
Search
N8ME uBITX 6 Firmware V 0.2
After a two year hiatus, I have updated my N8ME firmware for the uBitx v6 to version 0.2. Among other things, this incorporates some of the bug fixes from the VU3GAO update.
The updated firmware can be downloaded or cloned from my github account. The repository is designed for building and installing with VSCode and the PlatformIO extension. However, the src folder contains a src.ino file that can be used to build and install the firmware with the Arduino IDE. There is an updated PDF manual in the repository that shows how to use WSJT-X to do a frequency calibration. This is released without any warranty. Please let me know of any issues. -- 73, Mark, N8ME |
Mark,
toggle quoted message
Show quoted text
Thanks for the update. I downloaded the N8ME-uBitx-master.zip file and extracted this file. I intend to update via Arduino IDE and looked at the contents of N8ME-uBitx-master\src file and it shows the src.ino has a size of 0 bytes. Is this correct? Mike N2MS On 12/13/2022 8:21 PM Mark Erbaugh <mark.election@...> wrote: |
Yes, the 0 bytes is correct.
toggle quoted message
Show quoted text
The src.ino is only needed by the Arduino IDE. The actual main program is in main.cpp Mark On Dec 14, 2022, at 10:46 AM, N2MS <mstangelo@...> wrote: --
73, Mark, N8ME |
Mark,
toggle quoted message
Show quoted text
I placed the src folder into my Arduino IDE Preference Sketchbook location. It compiled correctly. I uploaded the software. I received t upgrade was not successful messages but it did successfully upgrade. I noticed the configuration came up the TX DISABLED. Users should remember to tap CFG TX ENABLE SAVE to enable transmit. I'll continue playing with the radio. Thanks again. I archive all of my files. It would be helpful if you named the firmware with the version, such as N8ME-uBitx6-V0.2-master Mike N2MS On 12/14/2022 10:48 AM Mark Erbaugh <mark.election@...> wrote: |
Mark,
toggle quoted message
Show quoted text
My previous firmware was uBITX_6_N8ME_2_VU3GAO_Mods . I'm curious if anyone else see this after upgrading. Seems to be working fine so far. Mike N2MS On 12/14/2022 1:58 PM Mark Erbaugh <mark.election@...> wrote: |
Mike,
I do my development using VSCode & PlatformIO. I wanted to make the firmware available for people using the Arduino IDE. The src.ino name was the only way I could figure out that would working with both VSCode and the Arduino IDE. AFAIK, VSCode requires the files to be in the "src" directory. Arduino IDE requires that the directory have the same name as the .ino file, file hence the name src.ino. ?An empty src.ino keeps the Arduino IDE happy, VSCode ignores that file and finds the real main entry point in main.cpp. That said, if you want to archive the files with your naming, just rename the .ino file and directory to your "N8ME-uBitx6-V0.2-master." Alternatively, you can download the .ZIP file from github.com. It is titled "N8ME-uBitx-master.zip." It contains both versions 0.1 and 0.2, you can use the tags v1_release (v 0.1) or v2_release (v 0.2) to check out the desired version. Note that the v1_release will need an added src.ino (which is empty) to work with the Arduino IDE. -- 73, Mark, N8ME |
Mark,
toggle quoted message
Show quoted text
Thanks for the explanation. Your code is a vast improvement on the original code. I'm spending more time on the uBitX than with my $$$ radios these days. 73 Mike N2MS On 12/15/2022 2:04 PM Mark Erbaugh <mark.election@...> wrote: |
I am really impressed by N8ME's firmware. It's quite an achievement to squeeze all that functionality into <30K of flash! Thank you very much!
?
I have a slight problem though. The band selector menu automatically switches to LSB for bands below 10MHz and USB for higher bands. That's fine, it's the de-facto "ham standard" for SSB voice. However, it seems impossible to toggle to the opposite sideband with the USB/LSB button. I'm stuck with either USB/CWU or LSB/CWL depending on what sideband was selected when choosing band. Is this a bug?
?
There is at least one work-around: To get USB on 80m, for example, first choose a band above 10MHz (to get USB) and then enter an 80m frequency manually through the FINP screen.
?
My C++ knowledge is close to zero although I have been writing C code for almost 40 years. This is the first time I use the Arduino IDE.
?
By the way, I was curious why 29 bits were allocated to the frequency in struct VFO_DATA. I thought 2^25 would be enough up to 30MHz so I made this change:
?
struct VFO_DATA {
? unsigned long frequency : 25; // must be unsigned to work above 16.777MHz (2^24) ? bool usb ? ? ? : ?1; ? bool cw ? ? ? ?: ?1; ? bool attn ? ? ?: ?1; ? FREQ_STEP fs ? : ?4; }; ?
Now the entire struct fits in 32 bits. A pleasant side effect of this change is that it saves 394 bytes (!) of Flash, probably because vfo_data[] is accessed from a lot of places in the program. It seems to work well, I hope the change didn't break anything. My Arduino IDE is a fresh install of v2.3.6.
?
73
Johan SM6LKM
?
? |
to navigate to use esc to dismiss