logo
Welcome, Guest. Please Login or Register.
29. March 2024, 05:43:47


Home Help Search Login RegisterWIKIUHSDR Download

Amateurfunk Sulingen
Diskussions- und Newsboard des DARC-Ortsverbandes I40  |  allgemeine Kategorie  |  mcHF Projekt Deutsch / English (here you can discuss everything related to mcHF) (Moderators: DF8OE, DL1PQ)  |  Topic: 12KHz issue (cause: byte shifting in I2S) <- zurück vorwärts ->
Pages: [1] 2 Go Down Print
   Author  Topic: 12KHz issue (cause: byte shifting in I2S)  (Read 3242 times)
DF8OE
Administrator
*****

Offline

Posts: 6268



Stellvertr. OVV I40, Jugend / Nachwuchsreferent

View Profile WWW
12KHz issue (cause: byte shifting in I2S)
« on: 04. September 2018, 15:15:56 »

@Chuck and François

Again for my understanding:

This fix removed your very strong birdies which you could remove by resetting codec many times?

If so:
Be happy and beg. The "twin peaks syndrom" pops up and disappear nearly by chance. Some firmware versions have a very high probility that it appears, some have a very low one. The differences in two firmwares with very high and very low probility has definitely nothing to do with the cause. it is a slightly different timing (and nobody knows where it is ctitical) that makes the difference. I remember the time I fought against this ghost. Many times I was happy because I thought I have fixed it - but a few versions later it was back again.

Frank's improvement moved birdie suppression here from "good" (> 60dB) to "perfect" (no more noticeable). I never have had birdies which are louder than 40db under the signal. The birdies I saw in the video of François
have had definitely another cause: a byte shift in the IQ data stream from codec to MCU - and the cause of this shift is not touched... So pse report immediately if the issue comes up again. And if so, try to remove it by resetting codec (possibly many times if it works).

vy 73
Andreas
Logged

Wenn der Wind des Wandels weht, nageln die einen Fenster und Türen zu und verbarrikadieren sich. Die anderen gehen nach draußen und bauen Windmühlen...
qrz.com-Seite von DF8OE
-----------------------------------------------------
>>>> Die Inhalte meiner Beiträge dürfen ohne meine explizite Erlaubnis in jedwedem Medium weiterverbreitet werden! <<<<
DJ0RG
Neuling
*

Offline

Posts: 19



Noch neu

View Profile
Re:[not solved] Receiving strong sigs 12.KHZ
« Reply #1 on: 04. September 2018, 15:27:40 »

Quote from: DD4WH on 04. September 2018, 09:50:37
There was a bug in the audio chain, formerly it was like this:

* light low pass filter with only 4 taps @48ksps sample rate
* downsampling-by-4
* heavy Hilbert lowpass filter with +45 and -45 degrees phase shift for I & Q respectively @12ksps sample rate, 199 taps

I changed it to:

* Hilbert lowpass filter with +45 and -45 degrees phase shift for I & Q respectively @48ksps sample rate, 121 taps
* light low pass filter with 4 taps
* downsampling-by-4


The Hilbert lowpass filter with 121 taps prevents the aliasing and suppresses the unwanted signals. Thats DSP standard, so its amazing that it remained unnoticed for so long. Probably my fault :-).

Quote from: DF8OE on 04. September 2018, 15:15:56
The "twin peaks syndrom" pops up and disappear nearly by chance. Some firmware versions have a very high probility that it appears, some have a very low one. The differences in two firmwares with very high and very low probility has definitely nothing to do with the cause. it is a slightly different timing (and nobody knows where it is ctitical) that makes the difference. I remember the time I fought against this ghost. Many times I was happy because I thought I have fixed it - but a few versions later it was back again.

Would it make sense to implement some configuration options for filter (pre-)settings? I think this would give some flexibility to users of different hardware and device usage. There appear to be at least two known working settings now, which could be the first two entries in a list of up to 256 filter setting sets. "If you experience strange behavior with your device, try a different filter setting".

Or is the config rack full and / or unchangeable?
Logged
DF8OE
Administrator
*****

Offline

Posts: 6268



Stellvertr. OVV I40, Jugend / Nachwuchsreferent

View Profile WWW
Re:[not solved] Receiving strong sigs 12.KHZ
« Reply #2 on: 04. September 2018, 15:43:16 »

The now choosen filter chain of Frank DD4WH is the best under all circumstances. You will not find a working condition where the old one gives better results so there is no need to change anything. It was "simply a bug" - but a bug whih has very low negative effects so it was not recognized for a longer time.

This fix has nothing to do with the "twin peaks syndrom". I am nearly sure it is just sleeping.

vy 73
Andreas
Logged

Wenn der Wind des Wandels weht, nageln die einen Fenster und Türen zu und verbarrikadieren sich. Die anderen gehen nach draußen und bauen Windmühlen...
qrz.com-Seite von DF8OE
-----------------------------------------------------
>>>> Die Inhalte meiner Beiträge dürfen ohne meine explizite Erlaubnis in jedwedem Medium weiterverbreitet werden! <<<<
S53DZ
schon länger dabei
**

Offline

Posts: 58



Ich liebe dieses Forum!

View Profile WWW E-Mail
Re:[not solved] Receiving strong sigs 12.KHZ
« Reply #3 on: 04. September 2018, 15:43:19 »

Hi all,

I am attaching the PDF with my recent measurements running the latest FW.
Please, consider these as informative.

I have used the input level as high as not to cause (too much) noticable IMD.

73 Bojan
 10M1.pdf
Logged
F4HTX
schon länger dabei
**

Offline

Posts: 66



Scotty, energize...

View Profile
Re:[not solved] Receiving strong sigs 12.KHZ
« Reply #4 on: 04. September 2018, 16:05:12 »

Hi Andreas,

This fix removed your very strong birdies which you could remove by resetting codec many times?

Yes, many meaning randomly many.

There is obviously something still lurking, but at least the receiver is usable. I'll be happy for now

About WM8731 :
Here is what the scope see on the MCLK, SCLK and SDIN pins of my WM8731.

Rise time is quite slow, I didn't had time to check in the datasheet timing diagram if it's an issue or not. Anyway, these are the measurements.

on SDIN : R21 to 50Ω doesn't change anything, removing R6 dramatically increase the rise time.

Vdd on my MCU is 3.24V

73's

François

Edit : Rise Time is 50ns/div !
 WM8731_signals05x.png
« Last Edit: 04. September 2018, 16:06:35 by F4HTX »
Logged

DB4PLE
positron
Urgestein
*****

Offline

Posts: 1278





View Profile
Re:[not solved] Receiving strong sigs 12.KHZ
« Reply #5 on: 04. September 2018, 16:17:54 »

Hello
Quote from: DJ0RG on 04. September 2018, 15:27:40
Would it make sense to implement some configuration options for filter (pre-)settings? I think this would give some flexibility to users of different hardware and device usage. There appear to be at least two known working settings now, which could be the first two entries in a list of up to 256 filter setting sets. "If you experience strange behavior with your device, try a different filter setting".

Or is the config rack full and / or unchangeable?

I have to admit I have no idea what you mean with the above statement.

What we fixed was the wrong order of certain filtering actions. It was (I have to trust Frank here, which I do without problems) that how we did this was simply wrong and nothing more than a bug. So there is here more or less only black or white here. We either do it right, or we do it wrong. And if we do it right, there is not too much need to configure the filters in question for the normal user.

Do not forget: For experimental purpose, anyone can replace the current filters, signal processing etc. by changing on the code and if it is better than before, by asking for a merge of these changes. This is part of the open source deal, not every wish can and must be realized by the core developers.

And finally, there is work in progress to change the whole audio processing to a much more flexible and powerful approach.

73
Danilo









 
Logged
DJ0RG
Neuling
*

Offline

Posts: 19



Noch neu

View Profile
Re:[not solved] Receiving strong sigs 12.KHZ
« Reply #6 on: 04. September 2018, 16:30:16 »

Understood and all good, I thought there would be several valid configs. My mistake!

BTW: Marvelous jobs done here, chapeau!
Logged
DF8OE
Administrator
*****

Offline

Posts: 6268



Stellvertr. OVV I40, Jugend / Nachwuchsreferent

View Profile WWW
Re:[not solved] Receiving strong sigs 12.KHZ
« Reply #7 on: 04. September 2018, 16:40:27 »

So I state:

Frank, your bugfix makes it possible to "get the last 5% out of UHSDR". It makes it perfect in this aspect.

And as a neigbour effect it reduces the probility for the occurance of the "twin peaks syndrom" for some users (temporarily).

I am quite astonished that twin peaks syndrom is "stable present" at some devices meanwhile same firmware and same config (default) leads to "stable not present" on other devices. Swapping of codec does not change anything. What for hell is the cause?? I cannot stop thinking about the root cause...

vy 73
Andreas
Logged

Wenn der Wind des Wandels weht, nageln die einen Fenster und Türen zu und verbarrikadieren sich. Die anderen gehen nach draußen und bauen Windmühlen...
qrz.com-Seite von DF8OE
-----------------------------------------------------
>>>> Die Inhalte meiner Beiträge dürfen ohne meine explizite Erlaubnis in jedwedem Medium weiterverbreitet werden! <<<<
DB4PLE
positron
Urgestein
*****

Offline

Posts: 1278





View Profile
Re:[not solved] Receiving strong sigs 12.KHZ
« Reply #8 on: 04. September 2018, 17:20:49 »

Hi Andreas, Francois,

according to my investigations AFAIR, the twin peaks issue is an internal issue IN the codec, nothing related to the externally visible I2S communication. So investigating the data lines is an interesting experience but most likely a dead end. 

And I would suggest to move this discussion to a different thread anyway, since it is not related to the 12khz issue.
And it may confuse others as much I was confused since this thread is very long already.

73
Danilo

Logged
DD4WH
positron
alter Hase
****

Offline

Posts: 462



Ich liebe dieses Forum!

View Profile
Re:[not solved] Receiving strong sigs 12.KHZ
« Reply #9 on: 04. September 2018, 17:21:22 »

@Bojan: thanks a lot for your measurement pdf! That confirms that the alias frequencies are well suppressed now. The unwanted signal at 10124kHz is the mirror that remains at 51 to 54dB below the wanted signal in your case. That specific unwanted signal is due to IQ amplitude/phase imbalance (probably you had -12kHz translate activated?). Did you have the automatic IQ activated? If not, try to adjust the IQ corrections manually, you can reach about 60-70dB rejection of the mirror.

One thing remains to be tested with the new filter setup: opposite sideband suppression

If anybody has an interest in this, you could test the following:

* inject an RF carrier at 10100.000kHz
* tune in at 10101.000kHz with LSB, listen and note the Signal level on the dBm-display
* switch to USB, listen and note the signal level again
* test with different filter bandwidths
* test with different distances to the injected carrier [eg. tune in at 10100.500kHz and switch sideband, or use 10100.250kHz or use 10102.000kHz]
-> the higher the distance of Rx freq to the carrier freq, the better the sideband suppression should be

73 Frank
Logged

-----------------------------------------
Teensy Convolution SDR
https://github.com/DD4WH/Teensy-ConvolutionSDR
DD4WH
positron
alter Hase
****

Offline

Posts: 462



Ich liebe dieses Forum!

View Profile
Re:[not solved] Receiving strong sigs 12.KHZ
« Reply #10 on: 04. September 2018, 17:31:25 »

just to add to the comment by Danilo (and to add to the confusion ;-)), I can see that we have four causes of birdies (and only the first one was causing the initial problem):

* aliasing because of insufficient lowpass filtering before the decimation --> software bug, which is fixed now

* twinpeak issue --> hardware cause in the codec

* IQ signal amplitude and phase imbalance --> this can be cured by switching the automatic IQ correction ON or properly adjusting phase and amplitude manually

* Hilbert filters performance at low audio frequencies --> this determines opposite sideband suppression

Not to mention the birdies caused by all the ocillators in/at the MCU.

Because we have at least these four causes, the search for the reasons for birdies is not really easy ;-)
Logged

-----------------------------------------
Teensy Convolution SDR
https://github.com/DD4WH/Teensy-ConvolutionSDR
DF8OE
Administrator
*****

Offline

Posts: 6268



Stellvertr. OVV I40, Jugend / Nachwuchsreferent

View Profile WWW
Re:12KHz issue (cause: byte shifting in I2S)
« Reply #11 on: 04. September 2018, 17:50:00 »

I am not 100% conform with "it is an internal hardware bug only in codec with no relation to firmware".

If so, there must exist some codecs which carry the probility of twin peaks in themself.

But swapping codec has not changed anything at François' mcHF. I have no proof for my opinion but I think:

  • There exists something in hardware (maybe in more than one part) that makes probility much higher.
  • There exists something in firmware (signal handling) that makes probility much higher, too.

The first point is supported by "not all mcHF have shown the bug - just a minority". And it is not only codec-related - swapping of codec have not chenged behaviour

The second point is supported by "the issue can be fixed to run a different firmware" - on same hardware.

Chucks and François' timing (what timing however) is already on the edge and can be killed by a slightly different timing. Most mcHFs are not on the edge and run both firmwares without showing the issue. If we would know how to push all mcHF away from the edge will be interesting. And the information, if anybody has ever seen twin peaks syndrom on OVI49 (which uses actually same codec) would be interesting, too.

vy 73
Andreas
Logged

Wenn der Wind des Wandels weht, nageln die einen Fenster und Türen zu und verbarrikadieren sich. Die anderen gehen nach draußen und bauen Windmühlen...
qrz.com-Seite von DF8OE
-----------------------------------------------------
>>>> Die Inhalte meiner Beiträge dürfen ohne meine explizite Erlaubnis in jedwedem Medium weiterverbreitet werden! <<<<
F4HTX
schon länger dabei
**

Offline

Posts: 66



Scotty, energize...

View Profile
Re:12KHz issue (cause: byte shifting in I2S)
« Reply #12 on: 06. September 2018, 08:46:11 »

Hello Andreas and team,

Me again I post in this thread, but it’s ovi40 & uhsdr related. So, I’m not sure, may be it might be moved to uhsdr zone the forum.


Short film is sometime more explicit than long emails : here are two videos with Twin Peaks on my OVI40. The two videos are with 2.9.51 firmware.

https://we.tl/t-B2tEN3u6PK

1. On the first one, I performed multiple codec reset without success. Offline I did hundreds of codec resets, hoping to find one doing something I could hear, no success so far.

2. The second one exhibits something weird I noticed : the codec reset behaviour is different with AGC on or off.
   2.1. With AGC off, reseting the codec does something you can hear, so it’s actually working, but not affecting the twin peaks.
   2.2. And weirdo : in the beginning of the shot, you will notice the audio change when invoking the menu screen : some RF coupling between MCU and LCD ? I plan to do a ribbon cable to remote the LCD, unfortunately I do not have the right connector in stock.


More vids : if you are interested, I also uploaded the ovi40 usual frequency scan around 10.100MHz with 2.9.50 & 2.9.51 (+12kHz and RX IQ on) :

https://we.tl/t-JXuVCWXKOL


Best Regards,

François
« Last Edit: 06. September 2018, 08:46:35 by F4HTX » Logged
DF8OE
Administrator
*****

Offline

Posts: 6268



Stellvertr. OVV I40, Jugend / Nachwuchsreferent

View Profile WWW
Re:12KHz issue (cause: byte shifting in I2S)
« Reply #13 on: 06. September 2018, 09:04:34 »

On OVI40 I colud not reproduce Twin-Peaks-Syndrom from the beginning on. I thought OVI40 maybe not impacted. I never could reproduce TPS - even with 50/51/52. It is always not present.

At all of my devices it does not matter if AGC is ON or OFF: Restarting the codec causes a very short timt (~50ms) "no audio" and then it comes back. During the first 500ms you can hear Auto-IQ working. AGC ON or OFF has no influence.

François: Is there another fw version where you reliable do *not* have TPS? If we have a firmware version where it occurs reliable and another where it occurs reliable not this would be a hint that it is not only by chance. There are (actually unknown) influences (timing) we cannot access directly (e.g. compiler optimizations).

EDIT:
Do you have Auto-IQ on? Same effect is when IQ is wrong or you do have hardware problem in IQ chain.

vy 73
Andreas
« Last Edit: 06. September 2018, 09:05:57 by DF8OE » Logged

Wenn der Wind des Wandels weht, nageln die einen Fenster und Türen zu und verbarrikadieren sich. Die anderen gehen nach draußen und bauen Windmühlen...
qrz.com-Seite von DF8OE
-----------------------------------------------------
>>>> Die Inhalte meiner Beiträge dürfen ohne meine explizite Erlaubnis in jedwedem Medium weiterverbreitet werden! <<<<
F4HTX
schon länger dabei
**

Offline

Posts: 66



Scotty, energize...

View Profile
Re:12KHz issue (cause: byte shifting in I2S)
« Reply #14 on: 06. September 2018, 09:31:16 »

Hello Andreas

Quote from: DF8OE on 06. September 2018, 09:04:34
François: Is there another fw version where you reliable do *not* have TPS? If we have a firmware version where it occurs reliable and another where it occurs reliable not this would be a hint that it is not only by chance. There are (actually unknown) influences (timing) we cannot access directly (e.g. compiler optimizations).
Good question : the point is I really do not know how to give a usefull answer to that. This is what I could try :
1. F1F3F5 reset of the ovi40 in 2.9.51
2. check if TPS is there with eg. Xlate -12kHz, RxIQ on, AGC on
3. downgrade and goto 1.

Any other parameter to care for ?

Quote from: DF8OE on 06. September 2018, 09:04:34
EDIT:
Do you have Auto-IQ on? Same effect is when IQ is wrong or you do have hardware problem in IQ chain.

Yes RxIQ is on.

73's

François

EDIT : no change with 2.9.52 (not surprising)
EDIT 2 : I just noticed that the twin peaks are not stable, they are moving apart (a few kHz/mn)

« Last Edit: 06. September 2018, 10:09:05 by F4HTX » Logged
Pages: [1] 2 Go Up Print 
Diskussions- und Newsboard des DARC-Ortsverbandes I40  |  allgemeine Kategorie  |  mcHF Projekt Deutsch / English (here you can discuss everything related to mcHF) (Moderators: DF8OE, DL1PQ)  |  Topic: 12KHz issue (cause: byte shifting in I2S) <- zurück vorwärts ->
Jump to: 


Login with username, password and session length

 Es wird die Verwendung von Browsern die auf der "Blink"-Engine basieren und mindestens
1024x768 Pixel Bildschirmauflösung für die beste Darstellung empfohlen
 
Amateurfunk Die Beiträge sind, sofern nicht anders vermerkt, unter der folgenden Lizenz veröffentlicht:
GNU Free Documentation License 1.3 GNU Free Documentation License 1.3
verbindet!
Powered by MySQL Powered by PHP Diskussions- und Newsboard des DARC-Ortsverbandes I40 | Powered by YaBB SE
© 2001-2004, YaBB SE Dev Team. All Rights Reserved.
- modified by Andreas Richter (DF8OE)
Impressum & Disclaimer
Valid XHTML 1.0! Valid CSS!