-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
20 memory slots and squelch/gate #23
Comments
Hi @Roturbo - thanks for your questions :-)
Personally, I have no plans (or right now time) to try either of these out, but if you are code capable and want to give this a try then I will of course give you any help, pointers and advice I can. Let me know if you have or are building a DSPham - I'm always interested if people build one and how it performs etc. |
Hi Graham, i know very little about programing, i was able to increase the slots to 20 and disable the Morse menus, I have notice OpenAudio library before, the problem is to insert it on the code and creating a menu to increase or decrease the And yes, i have build a DSPham, it works amazing in my case, i can tell you it is not perfect, it needs much RF filtering, not only In SSB many stations come mixed with band noise, and some of them don´t have good audio, the DSPham can clear the I´m going to read more about the Audio Library, maybe i can add it to the code and make it work. Tanks for your replay, i will keep you informed. |
Hi @Roturbo . The RF filtering and noise interference - yes, I had some of that on my initial build. Most of mine was coming from the regulator though - once I added more capacitor filtering around my 7805 a lot of my noise disappeared - but, that may not be your issue. The trick is going to be figuring out how the noise is getting into the DSPham - is it coming down the audio leads, or the power cable or USB lead. When using my DSPham with my Xiegu G90 I did put an audio isolating transformer between the G90 and the DSPham - something like https://www.aliexpress.com/item/1005001604545947.html for example. The other thing you can try is wrapping the cables through ferrites or using clip on ferrites. This is not something I can fix in the software ;-) Also, watch out for the input volume - if it is too loud for the DSPham then it starts to 'clip', and the audio starts to crackle. I added the I'm really glad the DSPham is working for you! I'm going to presume you are using the 'spectral' noise reduction. I'm currently porting that code over to the open audio library. One thing you could try to reduce the 'watery' effect during silence is to increase the I'll be offline for a week or so now - so if I don't respond right away it's not that I'm ignoring you - I'll check when I get back to my desk :-) |
Hi @Roturbo . Well, I'm back at my desk, so can try to answer any further questions you might have. I did have a thought - which I'll write here in case it is useful to you or possibly others in the future.... If you do add the squelch function, then there are two 'functions' on the rotary encoder which I think are not currently used in DSPham that could be tied to the squelch to make it easier to access from the 'normal' mode, and avoid having to always go into the menu...
Right now, when not in menu mode, I think we only use:
so you could have a long press or a double click enter a new mode - 'adjust squelch' maybe. Just a thought. It would require some programming around the |
Hello Graham. The noise is more interference sometimes from the radio in TX (RFI) other times is the I manage to attenuate the Teensy harmonics using an RC, on the 5v input i use a 3 ohm The clipping i have it controlled, i manage to add a small audio amplifier inside the box, Let me tell you, the encoder (the ones from Grove) i have to struggle to make it work, I have made some changes on code so now i can go to 0.99 on the NR-Alpha, the watery effect About your last message. Yes, i know about the long press and double click, the double click inside the menu is the BACK My programming skills are very low, i take some time reading the web to find the code to I was also able to make a second OLED 1.3" 128x64 LCD work in parallel because it uses different I really don´t plan to make a fork of your work, but i want to work with you to make And thanks, your DSP can remove most of the annoying noise from most radios, |
Hi @Roturbo - thanks for the pictures! That looks like a nice compact unit - and you have squeezed in some more features - I presume at least one of the extra rotary controls is for volume, and the switch is for power? Looking nice :-) Did you manage to make your rotary encoder function correctly, and not 'skip' and do 'double steps'? My guess is that your encoder has a different number of ticks-per-detent than mine. Somebody else saw this before (even though both encoders were labelled/sold as ky-040) - there is a note on the home page about the code you have to change to cater for different encoders - if you've not seen it, its in the section https://github.com/grahamwhaley/DSPham#hardware-choices . If you have issues with that, ping me and I'll stare at the code again. I think a change would need to be made in two places - one for the menu system and one for the 'default' screen - they use different encoder code I'm afraid. Just for reference, I don't know if you saw, but the Spectral Noise code got merged into the open audio library :-) chipaudette/OpenAudio_ArduinoLibrary#13 |
Hello Graham, This was in fact a very small case, i have add the VU leds later,,, the left button is to control the input signal , 5 or 10K, Later i have to add a 3ohm resistor and a big capacitor as a RC filter to avoid signals coming from the Teensy The rotary problem yes i have face it 2 times, at first with that encoder, and later again with other encoders About the Noise Gate, i just read the link now, tanks to tell me, at start i have many problems like @NickTheVic,, On that link you are talking about change the filter from 100-3600 to 300-2800, from my experience this But my knowledge is very limited on coding, i can change what is already made and copy parts of code from I read about the syllabic rate detector module, but did´t find any code based on this type I have made some changes inside the code that i need to find to tell you what i have made, Other option that i struggle to add was the UPDATE function without pressing the teensy button, Just remember, KIWISDR is also using spectra and LMS filters, but spectra is the best. i will be out for some days, but i will try to post pictures of the V2, i have build 3 units for my friends, For the moment i only think in make the software better with that gate to remove the "silent" parts Regards, |
Hiya,
I'm going to guess you have the missing or double steps only in the default mode, and not inside the menus. The missing step problem is very likely as I implemented some very rudimentary 'debounce' code](https://github.com/grahamwhaley/DSPham/blob/master/DSPham.ino#L520-L523) : const unsigned long debounce_gap = 250; //ms
...
if (enc_change != 0 )
{
// Are these clicks too close to the last set - if so, drop them to 'debounce'
// We could also use a state filter to do this as per https://www.best-microcontroller-projects.com/rotary-encoder.html
// state=(state<<1) | digitalRead(CLK_PIN) | 0xe000;
if (ms > last_change + debounce_gap ) {
if (enc_change > 0) { So, if a 'click' turns up before 250ms is passed, it gets ignored. That's not idea I know, but it was a quick fix to a bouncy encoder problem. The 'real' solution is to write some better debouncing code there, or to use a better encoder library :-) The decoding library used inside the menu system seems fairly robust, so we could just copy what that does :-). You could try reducing the 250ms timeout which should improve things maybe.
afaik, as long as your teensy has booted and is connected to the USB, then the teensy loader should be able to reset and reflash it without you needing to press the button. I just tried that here (with a different Sketch, but on a Teensy 4.0), and it worked. Only if your teensy is crashing and not connecting to USB should you need to press the button I think. That is part of the reason I added an external 'program' button to my DSPham box (on the back), so I could reprogram it if I crashed or corrupted it during development, without having to take the lid off :-)
Wow - you built how many!! 😄 That's amazing @Roturbo . I think that is by far the most anybody has built. I'm so glad it is working for you!
Sure. I think there are two ways that might be done:
I'm still not sure if/when I'll find time to look at that though :-( |
Hello again. I did also have problems inside the menus, i remember that at start i have to turn the encoder very slowly,, it was like
This was changed to 100ms,, but depends on type of encoder.
https://github.com/gi1mic/DSP-Speaker-Filter/blob/master/code/GI1MIC-DSP-Filter.ino Before your project i have build the one in the link,, with same encoders this one works fine, maybe
I think that i have build 1 test unit, 3 for beta testers and 10 for friends that want to have a more comfortable time
The adjustments is always a must, in any of the cases we must be able to adjust the threshold, the rising and fallowing or maybe
I will wait, and i will keep telling you the few things i have done,, for example, i have overclock the CPU, Next is the V2,, with many mistakes to correct.
|
Hello Graham, next is the final version that i made, still have some mistakes but is better than previous one. RXA and B are the inputs from 2 different radios, the upper switch chose the output direct from internal amplifier I will try to make some recording original and after DSP for comparing. |
Hi @kabidey - excellent! Ooh, with built in speakers and amplifiers! I'm glad it's working well for you! |
Hello Graham, is it possible to increase the slots to 20 ?
How about a squelch/gate to make noise floor complete silent and only voice open the audio ?
Just ideas to make it better.
Tanks for your amazing project.
The text was updated successfully, but these errors were encountered: