df8oe / uhsdr Goto Github PK
View Code? Open in Web Editor NEWSDR firmware and bootloader with configuration files for use with Eclipse, EmBitz and Makefile
License: Other
SDR firmware and bootloader with configuration files for use with Eclipse, EmBitz and Makefile
License: Other
It seems, the time is right to start putting a Contributing.md together. I propose to put a first rough draft into the repo, discuss and extend/revise first using this issue. And to do it quickly. Once we have a good initial one, let us then handle change requests as any other contribution following the procedure outlined in the Contributing.md :-)
Hello mcHF Community,
The displays used in the mcHF are not all the same as you may have noticed.So sometimes I use not the full brightness and would like to have the dimming level integrated into the menu instead of always having to push several times on the power button.
And it would be a good idea to use this power button function now free for a one-push display-off function.
Roger
hb9lfu
Hi all,
What do you think about following modification to UI board (yes, it'd require 21 bodge wires):
Best regards,
Jakub
Hi,
I am testing version 12.03.2016 18:44:01.
I went to Filter menu, set what I wanted to set, but now there is no way to exit Filter setup menu.
73 de Jure, S52CQ
Please it's possible to restore in the firmware the menu 207 function "lcd auto blank" that's useful when we are receiving weak signal to avoid the noise produced from the display.
It would be possible activate the lcd auto blank by a combination of buttons or by a specific area of the touch screen?
Thank you very much
Hi there,
I'm wondering about the use of PA9 pin, as it is UART1 TX for debug builds and TP_CS at the same time. As ST-Link/V2 got proper support in OpenOCD, what do you think about switching from UART to Semihosting for debug purposes?
Best regards,
Jakub
When I push and hold the TUNE button the VFO A/B turnes to text TUNE and gray.
Vy 73 de OZ8GW, Leif
There should be a menu item to set all variables stored in flash (or later in serial eeprom) to their defaults regardless of any contents to push mcHF to operable state if the memory is corrupted.
I want to implement proper remote control of the mcHF using a virtual serial port.
The current devel-DF8OE will soon contain the base functions for doing this (a working virtual serial port with an interface to the application layer).
My current plan is to implement a simple, well known CAT protocol at least for the first time. This would allow to use the mcHF with existing software without much trouble.
Since I know the FT817 protocol and is fairly simple, I would use this as a base. Implementation should allow to plug in other CAT emulation and of course at some point also a native protocol.
Choice of protocol could be handled in the config menu (reusing the existing CAT Mode Switch).
The purpose of this issue is to record the progress and to allow for these changes to be discussed.
I am going to refactor and extend the menu code to make it easier to define/change menu structures.
Planned is first to more or less provide the old menu but with new code base. From this, new menu structures can be build.
Main part of this refactoring will be to provide the ability to fold/unfold of sub menus (menu groups).
Menu definition will be more robust (introducing new items and reordering menu items will be very simple, just define and insert item.
Downside is, I would ask to refrain from larger changes to the menu code for a few days. It is no problem to work inside the existing functions, just don't reorder or move code out. Would help me a lot. Should be over or cancelled in a few days. We'll see.
It will be a good feature if regardless to mode the big numbers always show freqnency of active VFO and the small ones of the other VFO...
Hello mcHF programmers
because your devel firmwares work very nicely I have used them from very early on.
In one mcHF the display is simply just white when I go beyond firmware 219.27.4
When I return to 219.27.4 everything is all right again.
vy73s
Roger
I am currently working on getting the USB AUDIO support going. Goal is to provide audio in and audio out via the standard usb. At first this will not be coupled with CAT to keep CAT mode working as is. Once stable operation of audio channels are achieved, both will be combined, giving you (and me) the ability to run digital mode QSOs via a single thing USB cable.
See the wiki under CAT Mode to learn how to enable and use the CAT and USB functions.
See my last commit comment, there are some issues still but in general it works quite good.
Two new input modes have been added (switchable in Menu #60 and with long press on the button under encoder 3): DIGITAL (DIG) and DIG I/Q (DIQ).
Digital uses the audio from the left channel for modulation according to the set mode (SSB, AM, ... ).
Digital I/Q uses both channels to transmitt IQ data 48khz, 16 bit. The second choice is untested (which program could I use?) but should work (since it essentially just bypasses all (!) the processing).
Only when in DIG or DIG IQ the USB audio out channel is being used. Otherwise only the sound is sent to PC and of course CAT FT817 emulation is running all the time once CAT mode is enabled.
Overhead of the USB DIGITAL modes mode is roughly 1,5% (or 15uS each 1ms). So the device should be as responsive as ever.
Hi,
I am testing ver. mchf_19_03_2016_153156..bin
With comparison to previous versions I can see heavy problems with encoder reaction time. Let me point out that I did not make Touch screen mod (yet), because I have a nice enclosure with a plexiglass window.
Does the fact that I don't have touch screen mod have anything to do with encoder problems?
73 de Jure, S52CQ
No autoblank since #121. Auto blank is useful if you want to eliminate all possible rf interferences. If auto blank is enabled no data traffic should be present and backlight should be switched off.
vy 73
Andreas
Hi Clint,
if I change from 20m (where USB is selected) to 40m (where LSB is selected), the bar remains on the right side showing USB receiption (but LSB is heard correctly). I I change once to USB and then back to LSB, the bar changes correctly. It seems so that setting of the bar is only made when changing modes but must be done when changing bands, too.
vy 73
Andreas
Hi,
I have noticed in the dev. ver.0.219.27.4 a problem with encoder. It does happen quite often that encoder does not follow rotation of the main Freq. button on 100 Hz an 1 kHz setting. I did not notice that also at Volume button. Very seldom I could see freq. number displayed in Red colour if that does make sense.
There is no rule, when this happens. I may leave encoder alone and start turning the button and I can notice that encoder is not following, or I might quickly rotate Freq. button left right and suddenly I can notice that encoder is not following. Also I did not notice if this happens at low or high receive signals.
73 de Jure, S52CQ
TUNE does not work in CW mode as of 0.0.219.26
Perhaps there is my misunderstanding, but
73, Bojan
Hi,
I have one of the test versions (I wish that in the Blue menu there was Ver. No. shown) and I am testing CW. It appears that at CW mode the Monitor level (STG) is not displayed as it was - right to Volume (AFG). Now there is CMP, which has nothing to do in the CW.
Also I noted that at CW speed (WPM) near right digit there are two little dots, that can be seen at WPM set to to any number.
I presume that 2k3 filter remains ON all the time regardless setting in the Menu. Could it be turned off in the CW mode perhaps?
73 de Jure, S52CQ
As a new General Class holder, it would be nice to have two additional options in the menu.
This way, those of us who are new and are learning on our mcHF would have less chance to violate our c!ass privileges. I also believe this is mod necessary due to the portable nature of the radio and the small likelihood that one would have a band plan, or additional documentation, handy for reference.
I think it might be wise to rename the development branch firmware files. If these files are shared between mcHF users, not having a version number or labeling it as DEVELOPMENT might lead some to think that this is from the stable branch. Thoughts?
If you select 5 kc am in menue ... then pressing long on filter bw button gives you the narrow cw filters (that are useless in receiving am cause we already have narrow am filters and the cw filters are too narrow)
could a longer press sswitch to WIDER am filter instead (7.5 and 10) ??
some radio stations transmit in wideband with more high tones ... (hifi am ... grin) ... and with a long press we then could swittch to wideband am filter (maybe also useful on 10m fm wide/narrow but that would be a different story)
Hello Andreas,
Menu 230 Calibrate has too high a step value.
73
George G4ONV
Hello Programmers
I found that when I set the menu entry DSP (experimental) to ON it is OFF again after a restart.
vy73s
Roger
In the current devel-DF8OE branch a different approach for selecting filters was implemented. It was necessary to change from the current model due to the high number of added filters in some modes. The existing approach for selecting filters for use did not scale was not able to cover different filters for different modes and the same bandwith.
The newly implemented approach is very different. For each of the demodulation modes the user can either choose from the full list of applicable filters using button G4 and the encoders 2 and 3; or pick one of the filters from a predefined list of favorite filters for a demodulation mode.
That makes the filter selection both powerful (with encoder you can quickly select any applicable filter in very short time) and convenient (the quick list is defined in less than a minute for all 4 modes which have a quick list). In order to use this, the Filter button G4 operates as follows:
G4: Short press - Select next filter path from quick list.
G4: Long press - Activate encoder 3 and 2 as filter selector knobs. You will see a visual indication in the filter display (change of color). Return to normal with short press of G4.
Encoder 3 lets you go through the full list of applicable filters for a given mode
Encoder 2 lets you skip to the next/prev bandwidth and selects the first/last filter in that bandwidth
SSB, CW, AM and the new SyncAM have quick lists, FM with only 3 filters simply offers all three of them.
The quick lists are defined per mode (all bands share same quick list per mode) in the Filter Selection.
All other filter selection functions (wide filter in CW / narrow filter in SSB most notably) have been "removed" as these are no longer necessary.
We ask for your comments and collaboration in this quite radical change, especially on the following topics:
Other changes may be more difficult to implement.
If positive feedback is received, we will remove that "old handling" from the code very soon. Keeping old and new approach working in the code makes the implementation more complex and is essentially producing "dead code".
Adjustment menu 212 "Key Beep" cannot be set to off.
Work-around: Ignore it, or turn "Beep Volume" to minimum.
Side-effects of work-around: CW offset reference tone volume is also affected.
Hello mcHF community,
you have made a great job with the most recent firmware changes: a wide variety of filters, responsive encoders, well structured menu and more.
Just some trifles:
Could there be change of color for the RIT when it is not zero?
And could the MODE be displayed in white letters on a blue background for better
readability (especially for the elderly or those with impaired sight)?
vy73s
Roger
Hello mcHF community,
It would be helpful to offer two different versions of TX Inhibit. One absolute with no chance of enabling it again without using the menu and one which can be changed by pushing the TUNE button for a longer time.
vy73s
Roger
MCHF uses by default the left channel data for line in. Like in my case, the right channel would be the right channel. I would suggest to implement this as additional option in Menu 060 Mic/Line Select to be now MIC / LINE-L / LINE-R with MIC being the default. This would be 100% backward compatible but would solve my problem.
One more think for today: I'm wondering about the exact meaning of "For radio amateurs experimentation, non-commercial use only!" licence. If it's "experimentation only", it may exclude regular chit-chat usage of mcHF, as I won't consider talking to the same friend from time to time an experimentation. The same would affect my primary intended use-case of this radio - I'm interested in activating some climbing-only summits in SOTA program ;-)
What do you think about making it CC BY-NC-SA 3.0?
So it seems to be compatible, but well defined.
If in Encoder-Filter-Select-Mode (filter display orange) it would be good that one would automatically leave this mode when you enter the menu. Otherwise you can not use encoder2 and encoder3 to toggle the menu points. When leaving the menu, it would be very nice, if the Encoder-Filter-Select-Mode (filter display orange) could be switched on again automatically (if you were in it at the moment when you entered the menu) ;-)
I pulled the latest "devel" today to troubleshoot my TX power issues. When resetting the eeprom by F1-f3-f5, the device did reset properly, but while reading the informational message, the spectrum scope overlaid the lower half after a few seconds. In my opinion, there should be a "pause" in startup until the user presses a button to give slow reading users time to fully read the message.
The mcHF is tuned to different frequencies on VFO A and VFO B no matter which band. If you then switch to another band and then switch to the opposite VFO and then go back to the first band, then VFO A and VFO B is tuned to the same frequency. It must be a bug.
Vy 73 de OZ8GW, Leif.
I report another minor issue: if you check number at AFG, you will notice that when numbers are below 10 (i.e. 09, 08 etc.) the 0 number has one little vertical line on the left too much when RX to TX.. You can see that easily: set AFG to 08, press TUNE and you will see one tiny vertical white line that remains white, while the rest of the 08 number will become grey. This white line remains there also at RX until the AFG is changed to another number. Then number 0 becomes "normal" however as soon as you press TUNE, it gets this tiny vertical white line.
It's not a big problem that would disturb performance, mcHF is still functioning very good though.
73 de Jure, S52CQ
I have replaced the driver transistor DXT3150 with the BFQ18A. Now I cannot turn down enough to low output on the lower bands. Is it possible to lower the output more in the menu.
Vy 73 de OZ8GW, Leif.
As far as I can see "Wide Filt in CW Mode" does not work. No matter if it is on or off I can only choose between 300 and 500 Hz in CW-mode. Testing version 0.219.27.7.
Vy 73 de OZ8GW, Leif.
I would suggest to split ui_driver.c into several parts.
Rationale: It is way to big, several only loosely related activities are in there. Being so large, if will in future with more collaborators happen more often that they will work on the same file. While not being catastrophic, merge can be more painful.
Proposal:
One related to loading and saving configuration values. (Roughly 800 lines of code)
One related to anything truely UI (buttons, knobs, touchscreen) (many lines of code)
One related to support the RF and AUDIO (configuration of Si570, Code, filter activation etc.) (at least 2000 - 3000 lines of code).
I started marking functions for move to new rf/audio related files using TODO: comments. Work is not complete and it is not too urgent, but 10k+ lines in a single file is quite a lot to deal with.
i grabbed the idea and make a new issue here
add a function where the rig can step in coarse steps across a band (or several if not all bands) and on every step sends a short cw note (a dit should be enough)
mchf notes the swr and draws an swr sweep (or shows point of lowest swr or ...)
only inside ham bands ... and lowest power where we have a good readout (with all needed bridge modifications that has been found out)
that should be legal cause it would be similar as you would do that by hand (step in 10 kc steps... press a dit and make a note on paper) ... but it would be much faster
maybe stepping could be made coarse for bigger sweeps (and wideband antennas) ... and a bit denser for narrowbanded antennas (say a mobile whip for 40 or 80 or a mag loop)
guessing that 5, 10 and 25 steps are ok (depending on what antenna you test)
I was able to compile the master, but testing gives me this error:
[cc] C:\Users\ionut\Documents\GitStuff\df8oe\mchf-eclipse\usb\otg\src\usb_otg.c: In function 'USB_OTG_HandleConnectorIDStatusChange_ISR':
[cc] C:\Users\ionut\Documents\GitStuff\df8oe\mchf-eclipse\usb\otg\src\usb_otg.c:285:9: error: 'USB_OTG_CORE_HANDLE' has no member named 'otg'
[cc] C:\Users\ionut\Documents\GitStuff\df8oe\mchf-eclipse\usb\otg\src\usb_otg.c:292:9: error: 'USB_OTG_CORE_HANDLE' has no member named 'otg'
[cc] C:\Users\ionut\Documents\GitStuff\df8oe\mchf-eclipse\usb\otg\src\usb_otg.c: In function 'USB_OTG_GetCurrentState':
[cc] C:\Users\ionut\Documents\GitStuff\df8oe\mchf-eclipse\usb\otg\src\usb_otg.c:402:14: error: 'USB_OTG_CORE_HANDLE' has no member named 'otg'
[cc] C:\Users\ionut\Documents\GitStuff\df8oe\mchf-eclipse\usb\otg\src\usb_otg.c:403:1: warning: control reaches end of non-void function [-Wreturn-type]
BUILD FAILED
Total time: 21 seconds
using coocox 1.7.8 and 4.7 troolchain.
73's
de KC8CDQ
I build the master branch with coocox and the radio keeps flashing the splash screen. It looks like it resets itself during init. The latest one from Clint works good,
If can use the DSP CPU of MCHF to encode and decode the cw/psk/rtty/sstv mode, and displayed it on the LCD screen?
When toggling through modes and doing the step FM --> USB there is no more audio. Sometimes LCD slows and mchf is so slow you cannot push knobs. Only disconnecting power supply helps.
vy 73
Andreas
tested new version (27.5) ... i have set off set to +12 kc (means i receive on left side of display)
when i receive on 7. 000 .. there is ANOTHER centre line (i have set to green) at 8 kc above the centre line (so can be seen at 7008 ... so one of the lines that should be red (my setting for the other lines) is instead in green ...
.................................
centre line always visible...>>>>
and I wanna ask if it would be possible to draw the centre line to bottom (like it would be with no signal) and the spectrum should NOT draw over it ... means centre line ALWAYS in green (or what user has set)
all other (in my settings red) are ok to be drawn over ... but i would prefer the centre line to be always visible in full height ... (yes ... a narrow cw note would be hidden behind ... is that the reason why not drawn to bottom)
It has been requested that a menu item be added to (optionally) force the selection of a specific power level when the TUNE button is pressed. The default would be "Off" (e.g. use currently-selected power level).
"New Firmware" detect occurring on power up.
I'm about to post a updates to the mcHF code with some additional features, but I notice that between my last, posted version (0.0.219.22, I believe) and the version 0.0.219.24 posted here, the Si570 tuning code has been broken.
Here is how I can cause it to most easily show up:
When it fails, you will start hearing loud clicks. When it does this, you will find the receiver dead. On my transceiver it seems to occur in specific frequency bands, such as between approximately 6.95 and 7.13 MHz and between around 3.63 and 3.74.
It may take a minute or two of tuning around for this to start happening, and if one tunes very far outside the "broken" range, it seems to fix itself for a short time.
This would appear to be related to the "coarse retune" portion of the tuning algorithm - maybe the synthesizer not un-muting or, possibly, contention on the serial bus causing some tuning information to be lost.
Any ideas?
Thanks,
Clint
KA7OEI
It would be nice if there were another menu function to save development specific settings that aren't usually saved in eeprom write. For example; ability to save Disp. Pwr. setting when Dev. Settings variable is on. In addition, I think that if Dev. Settings variable is turned off, it should remove all development settings variables from the eeprom so that they don't interfere with normal operation. Thoughts?
A lot of times when I turn one of the encoders (for example change the frequency) the radio does not change the frequency on the first step. Sometimes even change one step to the wrong side. This also happens in the other three encoders. Therefore I guess it is a software and not an encoder issue.
Vy 73 de OZ8GW, Leif
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.