Posts

WGN240 - Another Gaussian white noise generator for HF use

Image
One common approach is to use the sum of multiple LFSR sources to generate a random variable with a Gaussian distribution. The central limit theorem states that the sum of a large number of independent and identically distributed random variables (such as the outputs of independent LFSRs) tends towards a Gaussian distribution.   But what is the Central Limit Theorem? by 3Blue1Brown In this tentative design I used an Altera MAXII CPLD and an analog resistive adder. Note that the resistor ladder circuit will produce binary values that are discrete , so the resulting Gaussian noise will also be discrete rather than continuous. The central limit theorem states that the sum of a large number of independent and identically distributed random variables (such as the outputs of independent LFSRs) tends towards a Gaussian distribution. In practice, the number of LFSR sources required to achieve a good approximation of a Gaussian distribution depends on the size of the LFSRs and the desired lev

Controller host USB3.0 recovery

Image
For three years I have been using an  HP 8300 SFF  in the lab to play with BBRF013, RX888 etc. I have made many modifications to the PC. I added a second USB3.0 controller and about two weeks ago I replaced the system disk with an NVME disk. Almost every day I use BBRF103 or RX888. Suddenly yesterday I cannot connect BBRF103 to the original USB3.0 ports on the back of the PC. When I launch the application the message appears : Fortunately, I have two USB3.0 controllers installed . After trying to change cables and BBRF103 I noticed that everything worked consistently if I connected to the ports of the second USB3.0 controller. I tried resetting and switching off/on the PC several times without any success. The solution was:  - backup and make a restore point - in device management disable and uninstall the affected USB controller - shut down the PC - upon restarting the controller was detected and the driver reinstalled automatically and voila now it works again. The PC is using Win10

A hardware how to with NVMe disk

Image
I installed a new NVMe disk to the  HP 8300 SFF Thanks to Paulie for this post https://www.tachytelic.net/2022/01/hp-compaq-8300-nvme/  My comparison between the SSD disk and the NVMe disk. The gain in access speed is remarkable. I followed the directions in Ivan's comment to Paulie's post to program the bios flash without a hardware programmer. Hereafter the path I followed: 1 backup your data because by continuing you risk losing it 2 f ormat a USB pen with SystemRescue https://www.system-rescue.org/Installing-SystemRescue-on-a-USB-memory-stick/ 3 install the internal jumper to enable the flash access  see  https://www.tachytelic.net/wp-content/uploads/HP-8300-FDO-Flash-Descriptor-Override.jpg 4 b oot from the pen and select SystemRescue to be fully loaded into ram memory. This allows the USB pen to be mounted and used to exchange the files.bin with Windows 5  run:  # flashrom -p internal -c MT25QL128 -r backup.bin 6 find the USBpen dev name with #fdisk -l    my was sdb1 7 m

Down sampling more

Image
ExtIO_sddc.dll is designed for use of BBRF103 / RX888  with HDSDR . The  input stream from the ADC ( 16bit , 64 MHz real signal)  is analyzed in an overlap and save method   (overlap-scrap)   with an FFT of dimension N = 8192 . After the low pass filtering convolution an output FFT - 1   of dimension M = 256  decimates the sampling rate to 2 MHz .  64 * 256 / 8192  =  2  MHz.  Signal tuning is made with circular shift in frequency and fine tuning using a complex mixer in time. This is a simplified diagram of SDDC: If we want to use a stand alone application deeper decimation and filtering is required to match the computer audio sampling. A possible block diagram of the application is: The Base Band Digital Processor module receives an I&Q input at 2 MHz and generates an output to demodulation module at "audio" speed.. Here  some numbers. /* F INPUT   FFT        FFT        F OUT (kHz) (N)       (M)         (kHz) 2000 32000 192     12  2000 32000 384       24  20

FM band undersampling

Image
Why Use Oversampling when Undersampling Can do the Job? - Texas Instruments  :    “..If we use the sampling frequency less than twice the maximum frequency component in the signal, then it is called undersampling. Undersampling is also known as band pass sampling, harmonic sampling or super-Nyquist sampling. Nyquist-Shannon Sampling theorem, which is the modified version of the Nyquist sampling theorem, says that the sampling frequency needs to be twice the signal bandwidth and not twice the maximum frequency component, in order to be able to reconstruct the original signal perfectly from the sampled version.“ Justin Peng tweeted the result of his RX888 undersampling the FM band on  https://twitter.com/fei666888/status/1363859596784267265 At my location the FM band stations are very strong and internal HF LPF of RX888 is not enough to cancel the FM band alias. I need to add an external HF Low Pass Filter with higher attenuation of FM band. So I decided to bypass the internal filter alw

Filter in a box

Image
 In 2018 I read this paper  Band Pass Filter with Low Insertion Loss for 2m   by Dipl ing Tasić Siniša –Tasa YU1LM/QRP, I made my  PCB version for SMD components with a ground plane dimension of 50 x 20 mm so that  a  PCB of 10 x 10 cm  houses 10 filter boards . I mounted my first prototype with tin shield box and verified that the filter was fine in 2018. The point was that the  spacing of the inductors' turns requires some instrumentation to do easily the tuning. The tin shielding soldered box I made was quite laborious for me.  So the pcbs has been unused for two years. I placed the PCB gerber files and scheme in  repository   https://github.com/ik1xpv/ExtIO_sddc/tree/master/hardware/Filters Now with the very nice  SATSAGEN  by  Alberto IU1KVL the tuning of filter is fast and easy,  see  https://youtu.be/yjobY6vs4z0 .  SATSAGEN  requires  a   ADALM-Pluto    or   Pluto+    device. I used the 3D printer to make a PLA box to shield the filter  https://www.thingiverse.com/thing:4787

Another kind of bug. The thermal bug

Image
During the evolution of ExtIO_sddc code the Co-Authors and I made many  tests on different computers to verify operation.  One of the PC candidate was the laptop (Asus UX330U | 2017 | i7-7500U cpu) that I used  during early development of BBRF013 / ExtIO_sddc.dll. Starting January 2021 I noticed something very strange. The application HDSDR was on but the  audio stream was discontinuous and sometimes crashed.  I thought about some software bugs.  After some testing with different code versions and on other PCs I installed Open Hardware Monitor on this PC and I noticed that the problem was related to CPU temperature. I thought that the CPU cooling was not efficient even though the internal fan was spinning. When the CPU temperature reaches high value the CPU clock is decreased to dissipate less heat. The behavior modulates speed performance of the CPU. The PC is 4 years old so I fear dust inside, not good thermal conductivity of the heat pipe and many other nightmares. I opened the lapt