Giter Site home page Giter Site logo

df8oe / uhsdr Goto Github PK

View Code? Open in Web Editor NEW
351.0 351.0 185.0 254.17 MB

SDR firmware and bootloader with configuration files for use with Eclipse, EmBitz and Makefile

License: Other

C 96.93% Makefile 0.13% Python 0.15% Assembly 2.77% C++ 0.01% CMake 0.01% Shell 0.01% Dockerfile 0.01%

uhsdr's People

Contributors

aknrdureegaesr avatar asbjornpettersen avatar csylvain avatar db4ple avatar dd4wh avatar df8oe avatar dl2fw avatar f4fhh avatar ffurano avatar frazierjason avatar g4iog avatar hb9ewy avatar hb9ocq avatar howard0su avatar imoldovavan avatar innattar avatar jkramarz avatar little-tesla avatar m-chichikalov avatar m0nka avatar maaberu avatar martinling avatar miek avatar pa7n avatar phaethon avatar roelandjansen avatar s53dz avatar satoryboy avatar sp9bsl avatar yo5ptd avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

uhsdr's Issues

REQUEST: development settings save

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?

BUG: Spectrum scope overlays EEPROM Reset info.

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.

Refactoring: Menu Code

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.

SSB filter in CW mode

Perhaps there is my misunderstanding, but

  • there is an option to set a CW filter in SSB mode (why?)
  • there is no option to set a SSB filter in CW mode.

73, Bojan

REQUEST: devel firmware & bootloader name change

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?

Broken Si570 code

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:

  • Select 10 kHz tuning steps.
  • Tune up and down over a 75-150 kHz range.

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

LCD auto blank broken

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

Menu entry DSP ON not stored

Hello Programmers

I found that when I set the menu entry DSP (experimental) to ON it is OFF again after a restart.

vy73s
Roger

CW, LCD, 2.3k filter

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

Project licence

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?

  • it's a quite good license with proper legal text, translated to most of languages,
  • I'd consider "non-commercial" and "for radio amateurs" redundant, as it seems there's no legal way to use it outside amateur bands - the other ones are licensed and intended for commercial use

So it seems to be compatible, but well defined.

Build failed for testing.

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

Menu Item 230

Hello Andreas,

Menu 230 Calibrate has too high a step value.

73
George G4ONV

TX Inhibit

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

Encoder

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

CAT Support via USB Virtual Com Port

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.

Output

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.

Encoders

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

Setup filter menu

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

VFO A and B

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.

Let's free the pins!

Hi all,

What do you think about following modification to UI board (yes, it'd require 21 bodge wires):

  1. unpopulate C50..C65
  2. lift one leg of S1..S16
  3. run them to new daughterboard featuring PCA8575 port expander
  4. use PB8 as interrupt input and share PB10..11 I2C interface
  5. use a compile-time flag to provide backward compatiblity, provide both precompiled firmware images
  6. make fun and profit of 15 free mCU pins
    I think there are no other easily reclaimable pins in current board iterration and I'm looking for any to support my planned extension boards.

Best regards,
Jakub

Menu

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.

horizontal bar which shows recept bandwidth does not change correct

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

Feature: Make LINEIN Channel Selection an configuration option.

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.

BUG 0.0.219.26.5

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

Restructuring: ui_driver.c

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.

0.0.219.26 - Beep function will not turn off

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.

Display error in 27.5 (centre line two times??)

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)

Stuck at splash screen.

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,

New Feature: USB Audio Support

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.

Dual use of PA9

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

White Screen when using firmwares higher than 219.27.4

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

Encoder without touch

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

Menu 207 LCD Auto blank function

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

Request for Contributing Guidelines

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 :-)

Color coded freq option

As a new General Class holder, it would be nice to have two additional options in the menu.

  1. Option to color code frequency based upon license class when frequency goes outside class privileges. {Off, Orange Yellow, etc.}
  2. Option to select current license class.

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.

CHANGE: Changed Approach for Selecting Filters

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:

  • Do you need Encoder 2 (switches to first applicable filter in next higher/lower bandwidth)?
  • Is the number of entries in the quick list sufficient (4), and if not, what number would be appropriate. Keep in mind that Encoder 3 allows to you go through all modes very, very quickly?
  • Are filters offered for a given mode missing but available in other modes?
    If there is a consensus on these which is different from the current experimental implementation, we can change any of these quickly.

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".

Color

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

LCD AFG No.

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

antenna analyzer function (swr sweeps in coarse or fine steps)

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)

Dimming Level

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

RF attenuator

I'd like to equip mcHF of a resistive attenuator with relay controlled by a FET to be inserted instead of Q2 as in the attached diagram , the activation of which is controlled by a combination of existing buttons.
Please can reactivate the command line of the Q2 gate.
iz6maf rf attenuator-model

switchoff encoder filter mode when entering menu

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) ;-)

0.219.27.5

When I push and hold the TUNE button the VFO A/B turnes to text TUNE and gray.
Vy 73 de OZ8GW, Leif

AM filter bw

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)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.