Are you over 18 and want to see adult content?
More Annotations
Poolpowershop-Forum / Poolforum, Schwimmbadforum, Saunaforum, Whirlpoolforum, Softubforum - News
Are you over 18 and want to see adult content?
Chez Monsieur Maurice
Are you over 18 and want to see adult content?
CTRM - Center of Excellence in Composites and Aerospace | DRB Hicom
Are you over 18 and want to see adult content?
American Express - Production - Sign In
Are you over 18 and want to see adult content?
CDN | Superfast Global Content Delivery Network
Are you over 18 and want to see adult content?
Meteoropatico | In genere mi sento come si sente il cielo.
Are you over 18 and want to see adult content?
Favourite Annotations
A complete backup of subscriptionboxramblings.com
Are you over 18 and want to see adult content?
A complete backup of caliberhomeloans.com
Are you over 18 and want to see adult content?
A complete backup of chopperexchange.com
Are you over 18 and want to see adult content?
A complete backup of sosenskoe-omsu.ru
Are you over 18 and want to see adult content?
Text
RPITX AND 2FSK
So here are the command lines that generate 600 seconds (10 minutes) of 100 bit/s 2FSK test frames, and transmit them out of rpitx, using a 7.177 MHz carrier frequency: On the receive side I used my FT-817 connected to FreeDV to sample the signal as a wave file, then fed the signal into C and Octave versions of the demodulator. CODEC2 AND FREEDV UPDATE Quite a lot of Codec2/FreeDV development going on this year, so much that I have been neglecting the blog! Here is an update.. Github,Travis, and STM32
URBAN HF NOISE
The Octave script impulse_noise.m was used to generate the plots in this post. Here is a plot of some PWM impulse samples (top), and the HF spectrum. I’ve injected a “wanted” signal at 1MHz for comparison. Given a switcher frequency of 255kHz, with 0.1V impulse amplitude, the noise floor is -90dBV down, or about 10uV. HIGH SPEED BALLOON DATA LINK The data rate of the link is Rs=115.2 kbit/s, which is sampled by the demodulator at Fs = 115200*8 = 921.6 kHz. However to the modem it just looks like an 8 times oversampled signal. So here is 10 seconds of the modem signal replayed at Fs=9600 Hz. You can hear the packets startingby the sound of
OPEN SOURCE ECHO CANCELLER PART 1 Introduction. For the Free Telephony Project I have an embedded version of Asterisk running on hardware that supports several FXO and FXS ports. I need a line echo canceller that can handle echo on typical FXO and FXS ports. As a starting point I am using the echo canceller software included in the Zaptel device driver package.. However on my FXS and especially FXO ports, this echo canceller FREEDV 2020 FIRST ON AIR TESTS FreeDV 2020 First On Air Tests. Brad (AC0ZJ), Richard (KF5OIM) and I have been putting the pieces required for the new FreeDV 2020 mode, which uses LPCNet Neural Net speech synthesis technology developed by Jean-Marc Valin. The goal of this mode is 8kHz audio bandwidth in just 1600 Hz of RF bandwidth. FreeDV 2020 is designed for HF channels VDSL VERSUS HF RADIO This is simply a 5uH inductor in series with a 100pF capacitor, connected across the VDSL phone line. This has a few hundred ohms of Xc above resonance, which results in just a few dB attenuation at 8-12 MHz. This obtained 38 Mbps downstream. Upstream was the same (24 Mbps) as with no filter. Good enough. FREEDV 700E AND COMPRESSION FreeDV 700E and Compression. FreeDV 700D is built around an OFDM modem and powerful LDPC codes, and was released in mid 2018. Since then our real world experience has shown that it struggles with fast fading channels. Much to my surprise, the earlier FreeDV 700C mode actually works better on fast fading channels. SNR AND EB/NO WORKED EXAMPLE SNR (dB) = Eb/No (dB) + 10log10 (Rb/B) So for FreeDV 700B, the bit rate Rb = 700, B = 3000 Hz (for SNR in a 3000Hz bandwidth) so we get: SNR = Eb/No – 6.3. Now, say we need a BER of 2% or 0.02 for speech, the lower Blue curve says we need an Eb/No = 4dB, so we get: SNR = 4 – 6.3 = -2.3dB. So if the modem is working down to “just” 0dB we BAND PASS FILTER AND POWER AMPLIFIER FOR SIMPLE HF DATA Band Pass Filter. The RTL-SDR samples at 28.8 MHz, capturing a broad chunk of spectrum. In direct mode we just sample the Q-channel, so any energy above 14.4 MHz will be aliased into our passband; e.g. both 21 and 7 MHz will appear as a 7 MHz sampled signal. In the previous post we determined the ADC overloads at -30dBm, so we want to removeRPITX AND 2FSK
So here are the command lines that generate 600 seconds (10 minutes) of 100 bit/s 2FSK test frames, and transmit them out of rpitx, using a 7.177 MHz carrier frequency: On the receive side I used my FT-817 connected to FreeDV to sample the signal as a wave file, then fed the signal into C and Octave versions of the demodulator. CODEC2 AND FREEDV UPDATE Quite a lot of Codec2/FreeDV development going on this year, so much that I have been neglecting the blog! Here is an update.. Github,Travis, and STM32
URBAN HF NOISE
The Octave script impulse_noise.m was used to generate the plots in this post. Here is a plot of some PWM impulse samples (top), and the HF spectrum. I’ve injected a “wanted” signal at 1MHz for comparison. Given a switcher frequency of 255kHz, with 0.1V impulse amplitude, the noise floor is -90dBV down, or about 10uV. HIGH SPEED BALLOON DATA LINK The data rate of the link is Rs=115.2 kbit/s, which is sampled by the demodulator at Fs = 115200*8 = 921.6 kHz. However to the modem it just looks like an 8 times oversampled signal. So here is 10 seconds of the modem signal replayed at Fs=9600 Hz. You can hear the packets startingby the sound of
ROWETEL – OPEN TELEPHONY SOFTWARE, HARDWARE, CRITICAL THINKING FSK_LDPC can scale to any bit rate you like. The ratio of the sample rate to symbol rate Fs/Rs = 8000/1000 (8kHz, 1000 bits/s) is the same as Fs/Rs = 800000/100000 (800kHz, 100k bits/s), so it’s the same thing to the modem. I’ve tried FSK_LDPC between 5 and 40k bit/s sofar.
FREEDV 2020 OVER THE QO-100 SATELLITE FreeDV 2020 over the QO-100 Satellite. Gerhard (OE3GBB), Steve (K5OKC) and I have been working on FreeDV 2020 over the Es’hail 2/QO-100 satellite. This satellite is in geosynchronous orbit and has a linear transponder. It’s designed for SSB so has a narrow bandwidth which rules out most digital voice modes – RTLSDR STRONG SIGNALS AND NOISE FIGURE Airspy and RTLSDR. The Airspy uses the same tuner chip so I tested it and found about the same strong signal results, i.e. it overloads at the same signal levels as the RTLSDR at max gain. Guess this is no surprise if it’s the same tuner. I once again measured the Airspy noise figure at about 7dB, slightly higher than the 6dB of theRTLSDR.
RESONANT FEED LINE ANTENNA FOR 40M Resonant Feed Line Antenna for 40m. After my success with the Flower Pot antenna on 2m I was inspired to try the same antenna design on the 40m (7MHz) Ham band. At HF frequencies, my ARRL handbook calls this design a Resonant FeeD line (RFD) antenna. I used the dipole formula of antenna length equals 143/f meters where f is the frequency in MHz. DAVID – PAGE 16 – ROWETEL Shortly after I published the first post on a simple VHF SDR, Brady KC9TPA started making suggestions about optimising the code.So I encouraged him to have a look into the transmit side. How can we take a baseband modem signal (like GMSK) and convert it up to a HF IF frequency like 10.7 MHz using the STM32F4 DAC? BAND PASS FILTER AND POWER AMPLIFIER FOR SIMPLE HF DATA Band Pass Filter. The RTL-SDR samples at 28.8 MHz, capturing a broad chunk of spectrum. In direct mode we just sample the Q-channel, so any energy above 14.4 MHz will be aliased into our passband; e.g. both 21 and 7 MHz will appear as a 7 MHz sampled signal. In the previous post we determined the ADC overloads at -30dBm, so we want to remove TRELLIS DECODING FOR CODEC 2 Hear are some samples that compare trellis based decoding to simple hard decision decoding, when applied to Codec2 at 700 bit/s on a AWGN channel using PSK. Only the 6 LSP parameters are tested (short term spectrum), no errors or correction are applied to the excitation parameters (voicing, pitch, energy). Eb/No (dB)RPITX AND 2FSK
So here are the command lines that generate 600 seconds (10 minutes) of 100 bit/s 2FSK test frames, and transmit them out of rpitx, using a 7.177 MHz carrier frequency: On the receive side I used my FT-817 connected to FreeDV to sample the signal as a wave file, then fed the signal into C and Octave versions of the demodulator. CODEC 2 700C EQUALISER The two right hand columns show the results (variance after 2nd stage) without and with the equaliser, using the Codec 2 700C VQ (which I have labelled train_120 in the source code). On some samples it has quite an effect (cq_ref, cq_freedv_8k), less so on others. After the equaliser, most of the samples are in the 8dB^2 range. HORUS 37 – HIGH SPEED SSTV IMAGES – ROWETEL Horus 37 – High Speed SSTV Images. Today I was part of the AREG team that flew Horus 37 – a High Altitude Balloon flight. The payload included hardware sending Slow Scan TV (SSTV) images at 115 kbit/s, based on the work Mark and I documented in this blog post from earlier this year. It worked! FREEDV 2020 FIRST ON AIR TESTS FreeDV 2020 First On Air Tests. Brad (AC0ZJ), Richard (KF5OIM) and I have been putting the pieces required for the new FreeDV 2020 mode, which uses LPCNet Neural Net speech synthesis technology developed by Jean-Marc Valin. The goal of this mode is 8kHz audio bandwidth in just 1600 Hz of RF bandwidth. FreeDV 2020 is designed for HF channels VDSL VERSUS HF RADIO This is simply a 5uH inductor in series with a 100pF capacitor, connected across the VDSL phone line. This has a few hundred ohms of Xc above resonance, which results in just a few dB attenuation at 8-12 MHz. This obtained 38 Mbps downstream. Upstream was the same (24 Mbps) as with no filter. Good enough. OSLEC ECHO CANCELLER Oslec is an open source high performance line echo canceller. When used with Asterisk it works well on lines where the built-in Zaptel echo canceller fails. No tweaks like rxgain/txgain or fxotrain are required. Oslec is supplied as GPL licensed C source code and is free as in speech. Oslec partially complies with the G168 standard and runsin
RTLSDR STRONG SIGNALS AND NOISE FIGURE Airspy and RTLSDR. The Airspy uses the same tuner chip so I tested it and found about the same strong signal results, i.e. it overloads at the same signal levels as the RTLSDR at max gain. Guess this is no surprise if it’s the same tuner. I once again measured the Airspy noise figure at about 7dB, slightly higher than the 6dB of theRTLSDR.
CODEC 2 – ROWETELSEE MORE ON ROWETEL.COMSM1000 V2 FIRMWARE
SM1000 V2 Firmware. After a year of development we have released version 2 of the SM1000 firmware. Major new features include: FreeDV 700D (thanks Don W7DMR) A Morse menu system (thanks Stuart VK4MSL) The SM1000 Manual which tells you how to upgrade to the new firmware. I’d also like to thanks Steve (K5OKC) for his fine work on the OFDMmodem
CODEC2 AND FREEDV UPDATE Quite a lot of Codec2/FreeDV development going on this year, so much that I have been neglecting the blog! Here is an update.. Github,Travis, and STM32
FREEDV 700E AND COMPRESSION FreeDV 700E and Compression. FreeDV 700D is built around an OFDM modem and powerful LDPC codes, and was released in mid 2018. Since then our real world experience has shown that it struggles with fast fading channels. Much to my surprise, the earlier FreeDV 700C mode actually works better on fast fading channels.URBAN HF NOISE
The Octave script impulse_noise.m was used to generate the plots in this post. Here is a plot of some PWM impulse samples (top), and the HF spectrum. I’ve injected a “wanted” signal at 1MHz for comparison. Given a switcher frequency of 255kHz, with 0.1V impulse amplitude, the noise floor is -90dBV down, or about 10uV. MODEMS FOR HF DIGITAL VOICE PART 2 In the previous post I argued that pushing bits through a HF channel involves much wailing and gnashing of teeth. Now we shall apply numbers and graphs to the problem, which is – in a nutshell – Engineering. QPSK Modem Simulation. I have worked up a GNU Octave modem simulation called hf_modem_curves.m.This operates at 1 sample/symbol, i.e. the sample rate is the symbol rate. FREEDV 2020 FIRST ON AIR TESTS FreeDV 2020 First On Air Tests. Brad (AC0ZJ), Richard (KF5OIM) and I have been putting the pieces required for the new FreeDV 2020 mode, which uses LPCNet Neural Net speech synthesis technology developed by Jean-Marc Valin. The goal of this mode is 8kHz audio bandwidth in just 1600 Hz of RF bandwidth. FreeDV 2020 is designed for HF channels VDSL VERSUS HF RADIO This is simply a 5uH inductor in series with a 100pF capacitor, connected across the VDSL phone line. This has a few hundred ohms of Xc above resonance, which results in just a few dB attenuation at 8-12 MHz. This obtained 38 Mbps downstream. Upstream was the same (24 Mbps) as with no filter. Good enough. OSLEC ECHO CANCELLER Oslec is an open source high performance line echo canceller. When used with Asterisk it works well on lines where the built-in Zaptel echo canceller fails. No tweaks like rxgain/txgain or fxotrain are required. Oslec is supplied as GPL licensed C source code and is free as in speech. Oslec partially complies with the G168 standard and runsin
RTLSDR STRONG SIGNALS AND NOISE FIGURE Airspy and RTLSDR. The Airspy uses the same tuner chip so I tested it and found about the same strong signal results, i.e. it overloads at the same signal levels as the RTLSDR at max gain. Guess this is no surprise if it’s the same tuner. I once again measured the Airspy noise figure at about 7dB, slightly higher than the 6dB of theRTLSDR.
CODEC 2 – ROWETELSEE MORE ON ROWETEL.COMSM1000 V2 FIRMWARE
SM1000 V2 Firmware. After a year of development we have released version 2 of the SM1000 firmware. Major new features include: FreeDV 700D (thanks Don W7DMR) A Morse menu system (thanks Stuart VK4MSL) The SM1000 Manual which tells you how to upgrade to the new firmware. I’d also like to thanks Steve (K5OKC) for his fine work on the OFDMmodem
CODEC2 AND FREEDV UPDATE Quite a lot of Codec2/FreeDV development going on this year, so much that I have been neglecting the blog! Here is an update.. Github,Travis, and STM32
FREEDV 700E AND COMPRESSION FreeDV 700E and Compression. FreeDV 700D is built around an OFDM modem and powerful LDPC codes, and was released in mid 2018. Since then our real world experience has shown that it struggles with fast fading channels. Much to my surprise, the earlier FreeDV 700C mode actually works better on fast fading channels.URBAN HF NOISE
The Octave script impulse_noise.m was used to generate the plots in this post. Here is a plot of some PWM impulse samples (top), and the HF spectrum. I’ve injected a “wanted” signal at 1MHz for comparison. Given a switcher frequency of 255kHz, with 0.1V impulse amplitude, the noise floor is -90dBV down, or about 10uV. MODEMS FOR HF DIGITAL VOICE PART 2 In the previous post I argued that pushing bits through a HF channel involves much wailing and gnashing of teeth. Now we shall apply numbers and graphs to the problem, which is – in a nutshell – Engineering. QPSK Modem Simulation. I have worked up a GNU Octave modem simulation called hf_modem_curves.m.This operates at 1 sample/symbol, i.e. the sample rate is the symbol rate. FREEDV 700E AND COMPRESSION FreeDV 700E and Compression. FreeDV 700D is built around an OFDM modem and powerful LDPC codes, and was released in mid 2018. Since then our real world experience has shown that it struggles with fast fading channels. Much to my surprise, the earlier FreeDV 700C mode actually works better on fast fading channels.SM1000 V2 FIRMWARE
SM1000 V2 Firmware. After a year of development we have released version 2 of the SM1000 firmware. Major new features include: FreeDV 700D (thanks Don W7DMR) A Morse menu system (thanks Stuart VK4MSL) The SM1000 Manual which tells you how to upgrade to the new firmware. I’d also like to thanks Steve (K5OKC) for his fine work on the OFDMmodem
OPEN SOURCE LOW RATE SPEECH CODEC PART 1 Open Source Low Rate Speech Codec Part 1. I have decided to start working on a free (as in speech) low bit rate speech codec. The initial target is 2400 bit/s communications quality speech. Communications quality means something between synthetic, robotic sounding speech and a mobile phone. The application is voice over lowbandwidth digital
BINARY TELEMETRY PROTOCOL The lower lines starting with “1” from the new binary protocol. The binary protocol was delivering packets at Eb/No as low as 6dB (SNR in 3000Hz of -9dB) at 100 bit/s. Here are some packets from the very end of the flight, from a sample provided by VK5EI in Adelaide: HORUS,2513,07:19:41,-35.12791,140.72295,7992,50,9,-14,1393 CRC OK. GMSK MODEM SIMULATION The lower plot is the cumulative power, and 99% of the power is at the 2460 Hz point, making 4920 Hz bandwidth total. This gives a BW/Rs ratio of 1.02, close to the 1.04 expected for BT=0.5 GMSK at Rs=4800Hz. Nice. Here is the “eye diagram” of the non-coherent demod: This explains why the non coherent demod struggles. OPEN IP OVER VHF/UHF 3 Open IP over VHF/UHF 3. The goal of this project is to develop a “100 kbit/s IP link” for VHF/UHF using just a Pi and RTLSDR hardware, and open source signal processing software . Since the last post, I’ve integrated a bunch of components and now have a half duplex radio data system running over the bench. The Tx and Rx signal CODEC 2 700C EQUALISER The two right hand columns show the results (variance after 2nd stage) without and with the equaliser, using the Codec 2 700C VQ (which I have labelled train_120 in the source code). On some samples it has quite an effect (cq_ref, cq_freedv_8k), less so on others. After the equaliser, most of the samples are in the 8dB^2 range.RPITX AND 2FSK
So here are the command lines that generate 600 seconds (10 minutes) of 100 bit/s 2FSK test frames, and transmit them out of rpitx, using a 7.177 MHz carrier frequency: On the receive side I used my FT-817 connected to FreeDV to sample the signal as a wave file, then fed the signal into C and Octave versions of the demodulator. SNR AND EB/NO WORKED EXAMPLE Hmm, the 700 bits/s is confusing though, as the modem receives (14 carriers at 2-bits each) 28-bits at 75 baud, or 2100 bit/s. Wouldn’t that be 10 * log10(2100/3000) or -1.55, and 4 OQPSK MODEM SIMULATION A friend of mine is developing a commercial OQPSK modem and was a bit stuck. I’m not surprised as I’ve had problems with OQPSK in thepast as well.
Skip to content
ROWETEL
open telephony software, hardware, critical thinkingMenu and widgets
QUICK LINKS
* Archive
* Codec 2
* Patreon
* Donate
* FreeDV
* SM1000
* Contact
POPULAR POSTS
* Codec 2
* SM1000
* AMBE+2 and MELPe 600 Compared to Codec 2 * FreeDV 700D Released * Codec 2 at 450 bit/s * SNR and Eb/No Worked Example * LPCNet Quantiser – wideband speech at 1700 bits/s* FDMDV Modem
* FreeDV 2020 over the QO-100 Satellite* Codec 2 and TWELP
* Archive
* Codec 2 700C
* FreeDV Beacon
* FreeDV between Argentina and the UK * Codec 2 at 3200 bit/sRECENT POSTS
* MicroHams 2020
* FreeDV Beacon Maintenance * COVID-19 and Appreciation * COVID-19 Time Series Analysis * Visualing Phase NoiseRECENT COMMENTS
* Mike N7MSD on COVID-19 Time Series Analysis * Steve on COVID-19 Time Series Analysis * david on COVID-19 Time Series Analysis * Steve on COVID-19 Time Series Analysis * Bill Cowley on COVID-19 Time Series AnalysisBLOG CATEGORIES
* Blackfin
* Critical Thinking
* Electric Vehicles
* Hardware
* News
* Radio
* Renewables
* Telephony
* The Next Wave
* Uncategorized
SITE MAP
* Archive
* Codec 2
* Contact
* Media
* Projects
* Electric Vehicles
* FDMDV Modem
* IP04 IP-PBX
* BAPS Build System
* IP0X Bugs
* IP0X How To
* Mini Asterisk GUI
* Open Hardware
* Oslec Echo Canceller * Village Telco and Mesh Potato* SM1000
* Store
META
* Log in
* Entries RSS
* Comments RSS
* WordPress.org
MICROHAMS 2020
On May 9 2020 (PST) I had the pleasure of speaking at the MicroHams 2020 conference. Due to COVID-19 presenters attended via Zoom, and the conference was live streamed over YouTube. Thanks to hard work of the organisers, this worked really well! Looking at the conference program, I noticed the standard of the presenters was very high. The organisers I worked with (Scott N7SS, and Grant KB7WSD) explained that a side effect of making the conference virtual was casting a much wider net on presenters – making the conference even better than IRL (In Real Life)! The YouTube streaming stats showed 300-500 people “attending” – also veryhigh.
My door to door travel time to West Coast USA is about 20 hours. So a remote presentation makes life much easier for me. It takes me a week to prepare, means 1-2 weeks away from home, and a week to recover from the jetlag. As a single parent I need to find a carer for my 14 yearold.
Vickie, KD7LAW, ran a break out room for after talk chat which worked well. It was nice to “meet” several people that I usually just have email contact with. All from the comfort of my home on a Sunday morning in Adelaide (Saturday afternoon PST). The MicoHams 2020 talks have been now been published on YouTube . Here is my talk, which is a good update (May 2020) of Codec 2 and FreeDV, including: * The new FreeDV 2020 mode using the LPCNet neural net vocoder * Embedded FreeDV 700D running on the SM1000 * FreeDV over the QO-100 geosynchronous satellite and KiwiSDRs * Introducing some of the good people contributing to FreeDV The conference has me interested in applying the open source modems we have developed for digital voice to Amateur Radio packet and HF data. So I’m reading up on Winlink , Pat, Direwolf
and friends.
Thanks Scott, Grant, and Vickie and the MicroHams club! Posted on May 17, 2020May 17, 2020Author david
Categories Radio
, Telephony
, The Next Wave
Leave a comment on MicroHams 2020 FREEDV BEACON MAINTENANCE There’s been some recent interest in the FreeDV Beacon project, originally developed back in 2015. A FreeDV beacon was operating in Sunbury, VK3, for several years and was very useful fortesting FreeDV.
After being approach by John (VK3IC) and Bob (VK4YA), I decided to dust off the software and bring it across to a GitHub repo. It’s now running on my laptop happily and I hope John and Bob will soon have some beaconsrunning on the air.
I’ve added support for FreeDV 700C and 700D modes, finding a tricky bug in the process. I really should read the instructions for my ownAPI!
Thanks also to Richard (KF5OIM) for help with the Cmake build system. Posted on April 24, 2020April 24, 2020Author david
Categories Uncategorized Leave a comment on FreeDV BeaconMaintenance
COVID-19 AND APPRECIATION So I’m going near people just once a week to shop. Once a day I go outside on my bike (but nowhere near people) to maintain my mental and physical health. It helps that we live in sparsely populated suburbs. I shop at my local Woolworths (Findon, South Australia), and was very impressed what I saw today. Crosses on the floor positioning us 2m apart and a bouncer regulating the flow and keeping store numbers low. Same thing on the checkout, and in front of the Deli counter. While I was queuing, a young lady wiped down the trolley handle and offered mehand sanitiser.
The EFTPOS limit has been raised, so no need to use my fingers to enter a PIN number at the checkout. That’s good – I now regard that keypad as an efficient means to distribute a viral payload. Just wave my card 20mm above the machine and I have groceries to sustain my son and I for a week. It costs what I earn with just 1 hour of mylabour.
In the middle of the biggest crisis to hit the World since WW2, I can buy just about anything I want. I could gain weight if I wanted too. Our power went off in a storm last night, and with it the Broadband Internet. However I still had my phone, a hotspot, and a laptop connected to the Internet, friends and loved ones. I immediately received a text from the power company telling me the power would be restored in 2 hours. They did it in 1. In the middle of COVID-19. At night, in the rain. While waiting my son and I cooked a nice BBQ outside in the twilight using gas. My part time day job is secure, my pay keeps coming, and we have transitioned to WFH and are working well. My shares have been smashed but I can live with that – they are still good companies and I am a long term investor. My son is being home schooled and his teachers at Findon High are working hard on online content and remote teaching. The Australian COVID-19 new case numbers are dropping and recoveries picking up. Many people are not going to die. The Australian population are working together to beat this. We are well informed by our public broadcaster the ABC , our media is uncensored, and I can choose to do my own analysis using open source data sets. What a fantastic world we live in, that can supply a surplus of food, and keep all our institutions running at a time like this. Well done to the Australian government and people. I feel very grateful. Posted on April 4, 2020April 4, 2020Author david
Categories Critical Thinking Leave a comment on COVID-19 andAppreciation
COVID-19 TIME SERIES ANALYSIS On Friday 13 March I started looking at the COVID-19 time series case data. The first step was to fit a simple exponential model. The model lets us work out the number of cases t days in the future N(t), given N(0) cases today, and a doubling time of Td days: N(t) = N(0)*2^(t/Td) To work out how many days (t) to a number of cases N(t), you canre-arrange to get:
t = Td*log2(N(t)/N(0)) At the time I had some US travel planned for late March. So I plugged in some numbers to see how long it would take the US to get to 70,000 cases (China’s cases at the time): t = 3*log2(70,000/1600) = 16.4 days Wow. It slowly dawned on me that international travel was going to be a problem. The human mind just struggles to cope with the power of exponential growth. Five days seems a long time ago now…. I immediately grounded my parents – they are an at risk demographic and in a few weeks the hospitals will not be able to help them if they get sick. I estimate my home city of Adelaide (30 cases on March 18) will struggle with 1000 cases (a proportion of which will needIntensive Care):
t = 4*log2(1000/30) = 20 days The low number of cases today is not important, the exponential growth is the critical factor. Since then I’ve been messing with a customised covid19.py Python script to generate some plots useful to me. It is based on some code I found from MohammadAshhad
.
You might find it useful too, it’s easy to customise to other countries. I’d also appreciate a review of the script and math inthis post.
I find that analysing the data gives me a small sense of control over the situation. And a useful crystal ball in this science fiction life we have suddenly started living. Here are some plots from the last 14 days: I find the second, log plot much more helpful. A constant positive slope on a log plot indicates exponential growth which is bad. We want the log plot to flatten out to a horizontal line. Doubling time is the key metric. Here is a smoothed (3 day window) estimate. A low doubling time (e.g. a few days) is bad, our target is a high doubling time: It’s a bit noisey at the moment. I’m interested in Spain and Italy as they have locked down. There will be a time lag as infections prior to lock down flow through to cases, but I expect (and sincerely hope) to see the doubling time of those countries improve, and new casestapering off.
I’m working from home and hoping Australia will lock down soon. I will update the plots above daily. All the best to everyone. UPDATE – MARCH 26 2020 It’s been one week since I first published this post and I have been updating the graphs every day. My models are simplistic and I am not an epidemiologist. However I am sorry to say that exponential growth for Australia and the US has proceeded at the same rate or faster than the simple models above predicted. Italy is showing a clear trend to an improved doubling time. The top plot show an almost linear growth. This is welcome news and will hopefully soon lead to a decreased load on their hospitals. This is encouraging to me as it shows lock down can work! A small positive trend for Spain, who have also locked down; however Australia and the US still doubling every 3-4 days. It’s clear from the second, log plot, that US cases will soon be the highest in theworld.
Any changes we make in behaviour today will take 1-2 weeks to flow through. So this is a window into behavioural changes 1-2 weeks ago, and an estimate of the doubling rate for the next 1-2 weeks. A daily case increase of 10% is a doubling time of 7.3 days (1 week). This intuitively feels like a good first milestone, and something expanding health systems have some chance of dealing with. It’s also easy to calculate in your head when looking at day by day statistics. A daily increase of 20% is a 3.8 day doubling time and very bad news. Australia still doesn’t have a strong lock down, and many people are not staying at home. I hope our government acts decisively soon. UPDATE – APRIL 3 2020 Another week has passed since my last update – a long time in the Coronavirus saga. A few days after my last update, I noticed the Australian new cases were constant at around 350 for a few days, then started to drop. The doubling time has shot up too, and the top graph looks almost linear now. Australia is now at about 5% new cases/day (300 new/5000 existing cases). We can handle that. This means out hospitals are not going to break. Good news indeed. My theory on this reduction is the time delayed effect of the Australian population starting to take Corona seriously, and good management by our state and federal governments. Several states have a lock down but the effect hasn’t flowed through to cases yet. I think we are now entering a “whack a mole” stage, like China, Japan, and South Korea. We’ll have to remain vigilant, stay at home, and smash small outbreaks as they spring up in the community. Recoveries will eventually start to pick up and the number of active cases decline. The current numbers are a 0.5% fatality rate and 2% ICUadmission rate.
Despite the appalling number of deaths in Italy and Spain, they clearly have new cases under control through lock down. The log curves are flat, and doubling times steadily increasing. The situation is very bad in the US, and many other countries. I am particularly concerned for the developing world. I note the doubling rate curve for for Spain and Australia is the same, Australia is just much further down the curve. Even my septuagenarian parents are behaving – mostly “staying home”. Doing my own analysis has been really useful – I basically ignore the headlines (anyone sick of the word “surge”?) as I can look at the data and drill down to what matters. I’m picking trends a few days before they are reported. Still a few things to ponder, like a model for how ICU cases track reported cases. Best wishes to everyone.LINKS
John Hopkins CSSE COVID-19 DashboardSource Data
Our World in Data Coronavirus Statistics and Research Posted on March 18, 2020April 4, 2020Author david
Categories Uncategorized 14 Comments on COVID-19 Time SeriesAnalysis
VISUALING PHASE NOISE A few months ago I was helping Gerhard, OE3GBB, track down some FreeDV 2020 sync issues over the QO-100satellite.
Along the way, we investigated the phase noise of the QO-100 channel (including Gerhards Tx and Rx) by sending a carrier signal over the link, then running it through a GNU Octave phase_noise.m script to generate some interesting plots. Fig 1 shows the spectrum of the carrier, some band pass noise in the SSB channel, and the single sinewave line at about 1500 Hz: Fig 2 is a close up, where we have shifted the 1500 Hz tone down to 0 Hz. It’s not really a single frequency, but has a noise likespectra:
Figure 3 is polar plot or the I and Q (real and imag) against time. A perfect oscillator with a small frequency offset would trace a neat spiral, but due to the noise is wanders all over the place. Fig3A shows a close up of the first 5 seconds, where it reverses a few times, like a wheel rotating forwards and backwards at random: Figure 4 is the “unwrapped phase” in radians. Unwrapping means if we get to -pi we just keep going, rather than wrapping around to pi. A constant slope suggests a constant frequency segment, for example in the first 5 seconds it wanders downwards -15 radians which suggests a frequency of -15/5 = -3 rads/sec or -3/(2*pi) = -0.5 Hz. The upwards slope from about 8 seconds is a positive frequency segment. Figure 5 is the rate of change phase, in other words the instantaneous frequency offset, which is about -0.5 Hz at 8 seconds, then swings positive for a while: Why does all this matter? Well phase shift keyed modems like QPSK have to track this phase. We were concerned about the ability of the FreeDV 2020 QPSK modem to track phase over QO-100. You also get similar meandering phase tracks over HF channels. Turns out the GPS locking on one of the oscillators wasn’t working quite right, leading to step changes in the oscillator phase. So in this case, a hardware problem rather than the QPSK modem.LINKS
QO-100 Sync Pull Request (with lots of notes) FreeDV 2020 over the QO-100 Satellite Digital Voice Transmission via QO-100 with FreeDV Mode 2020 (LimeMicro article)
Posted on February 7, 2020February 7, 2020Author david
Categories Uncategorized 3 Comments on Visualing Phase Noise FREEDV BETWEEN ARGENTINA AND THE UK Jose (LU5DKI) has been in daily contact with a group of UK Hams including Eric (GW8LJJ) Cess (GW3OAJ) Steve (G7HZI). They are using FreeDV 700D over a novel combination of HF radio channels and theInternet via SDRs.
Jose transmits from his station in Argentina to a KiwiSDR in Santiago, Chile, around 1500km away. The UK hams listen to this SDR over the Internet. To receive, Jose listens to a KiwiSDR in the UK. The combination of the Internet and HF radio gives them reliable communications at a time where long distance band conditions are poor. Thanks Jose for the video. You can see the “barber pole” HF fading on the signal from the UK. Several of the UK Hams are using SM1000s running the new v2 firmware that includes FreeDV 700D. Good to see that working well inthe field.
FreeDV 1.4 includes 700C/700D improvements, and the new FreeDV 2020 mode. I hope to release FreeDV 1.4 later this year. However it’s already working quite well (just a few small issues to go), so if you would like to try a Windows development version of FreeDV 1.4, please contact me. For Linux users, it’s quite easy to compile from source.
Posted on October 27, 2019October 27, 2019Author david
Categories Radio
, Telephony
FREEDV 2020 OVER THE QO-100 SATELLITE Gerhard (OE3GBB), Steve (K5OKC) and I have been working on FreeDV 2020 over the Es’hail 2/QO-100 satellite . This satellite is in geosynchronous orbit and has a linear transponder. It’s designed for SSB so has a narrow bandwidth which rules out most digital voice modes – except FreeDV. For example FreeDV 2020 can send 8 kHz wide speech over just 1600 Hz of RF bandwidth, A linear amplifier also means the OFDM waveforms used by FreeDV will pass OK, as long as your transmitsystem is linear.
MODEM MODS
Gerhard’s initial experiments showed that FreeDV 1600 worked well, but FreeDV 2020 was breaking up and losing sync. We guessed that this was due to significant phase noise on the channel, from the many up and down conversion steps and the transponder itself. Fortunately theSNR was quite high.
Steve and I modified the OFDM modem used for FreeDV 2020 to handle this. This modem had been designed for coherent demodulation on very low SNR HF fading channels. The phase tracking was designed for HF channels with a bandwidth of a few Hz. As a first step we added a high bandwidth option, then moved to differential demodulation. This allows us to handle faster phase shifts (i.e. more phase noise), at the expense of reduced low SNR performance. This is an acceptable trade off for this channel as we have plenty of SNR. Gerhard also had some set-up problems getting everything to run on one machine – FreeDV 2020 likes a powerful, modern CPU due to the LPCNetcodec.
I now have the rather complex Windows build process for FreeDV fully scripted (thanks Richard and Danilo). This means I can develop on Linux, then run a Docker script that rebuilds everything for Windows, packages it in an installer, and pops it up on my web site. Remarkably, it then produces the same results as the Linux version. This take a a lot of pain out of my life, and makes it easy for others to test innovations rapidly. Here is a sample of the decoded audio, from a QSO between Gerhard andDani (EA4GPZ):
Audio Player
/downloads/oe3gbb_qo100/qso_ea4gpz_mode_2020_qo100.wav00:00
00:00
00:00
Use Up/Down Arrow keys to increase or decrease volume. The quality is quite high, and through a nice set of speakers the wide, 8kHz audio bandwidth is very pleasant. However I can hear some frame rate modulation, and I’ve heard similar on some other 2020 samples over HF channels from the US test team. I’ll explore that atsome stage.
GERHARD’S QO100 STATIONTEAM WORK
I am enjoying working with Gerhard and Steve on this project. We are roughly equi-distant around the globe but the time zone shift allows us to bounce new software versions around for testing on 12 hour cycles. Working as a team, we investigated the problem and greatly improved the performance of FreeDV 2020 over the QO-100 satellite. We worked very carefully, debugging tricky problems, collecting and comparing samples, and discussing our results via email. We have applied new speech coding technology (the neural net/machine learning based LPCNet), modified and optimised a HF modem, and sent our signals through a new satellite transponder. This is realexperimental radio!
Our next step is to look at improving modem acquisition, which is also likely to require tuning for this channel.READING FURTHER
Digital Voice Transmission via QO-100 with FreeDV Mode 2020 (LimeMicro article)
Es’hail 2/QO-100 satellite WebSDR for QO-100 satellite FreeDV 2020 First On Air Tests Steve Ports an OFDM modem from Octave to C Posted on September 16, 2019February 7, 2020Author david
Categories Radio
, Telephony
2 Comments on FreeDV 2020 over theQO-100 Satellite
VDSL VERSUS HF RADIO I’m putting up a 40M dipole. When I Tx on 40m (50W peak) my Internet drops out. Sometimes it comes back, other times the modem loses sync. The dipole has a balun, and is nicely tuned. I tried some ferrites with several turns on the modem VDSL and power cables which improved the situation a little. But I still get a momentary drop out of Internet on PTT, and if I try hard enough I can still lose sync on the modem. Now I have NBN (Australian National Broadband Network) with a VDSL link over traditional copper phone lines to a “node” several hundred metres away. Turns out VDSL uses bandwidth up to 30 MHz … so I guess I’m getting right into it’s pass band. Old school ADSL only used a few MHz. The phone line used for this service is 50 years old and has significant differential to common mode conversion. It’s not much of a transmission line. But probably a pretty good antenna! I build a little jig with a transformer to couple the differential signal to my spectrum analyser and take a look: Lotsa turns on the primary, one turn on the secondary, some core I found in the junk box. I adjusted the coupling capacitors in line with both arms of the primary so that the modem didn’t lose sync when I plugged it in (about 5pF). Also in this photo is the series LC circuit, but disconnected (open) at this stage. Sure enough, I could see Rx energy from the node to my modem at around 7MHz, and other energy out to 12MHz. In the 7MHz region, I could see the Rx signal from the “node” at -60dBm. When I Tx SSB on 7.18 MHz my SSB signal was -30dBm. No wonder the modem is choking. After some experimentation, I came up with a 7MHz LC series resonant circuit connected across the phone line. When the modem does it’s training thing, it sees a short circuit around 7MHz and ignores that region as no good. So when I transmit in that region, there is no modem signal to interfere with. I started with a 800nH/600pF filter. Xc and Xl is a rather low 37 ohms reactance at resonance, and just a bit higher than that above resonance (e.g. at 8-12 MHz), attenuating a lot of the HF energy. So it was basically a LPF, killing anything above 6 MHz. This stopped the drop outs, but my Internet downstream bandwidth dropped from 55 to 24Mbps.
FINAL DESIGN
After some fiddling with a spreadsheet I came up with a 5uH/100pF series LC notch filter. This is simply a 5uH inductor in series with a 100pF capacitor, connected across the VDSL phone line. This has a few hundred ohms of Xc above resonance, which results in just a few dB attenuation at 8-12 MHz. This obtained 38 Mbps downstream. Upstream was the same (24 Mbps) as with no filter. Goodenough.
The inductor is 9 turns on a F37-61 core. Make sure you use a material suitable for high Q inductors. I initially used the wrong core material and couldn’t get a decent notch. I recommend you check the tuning – it should have a deep notch at around your operatingfrequency.
Here is a sweep of my filter: I put 560 ohm resistors in series with the tracking generator output and spectrum analyser input to approximate the line impedance usingthis jig:
Here is a plot of the system in action: The yellow plot is the original, unfiltered VDSL signal. At the same time I’m transmitting SSB. You can see my SSB signal on 7.18 MHz (yellow peak above the “1”). Purple is with the series LC notch filter installed. You can see the notch left of the “1” at 7MHz. The “node” has worked out 7-8MHz is a dud band so isn’t sending any information. So nothing to interfere with when I PTT SSB. I’m not sending a SSB signal in thisplot.
Note also the 8-12 MHz purple (filtered) is just a few dB lower than the yellow (unfiltered). So the notch filter isn’t wiping out the HFsignals.
These plots show a mixture of Tx (-10dBm) from my modem, and Rx (underlying gentle downwards slope) – the signal from the “node”. I assume it’s full duplex, we just can’t see the Rx signal most of the time. I am sampling the combined signal next to the modem, so Tx dominates. You can see the Rx signal better when themodem is training.
For some reason my modem doesn’t Tx in the 6-8MHz band. Probably agood thing for RFI.
RESULTS
Without the filter I get immediate interruptions pings and loss of modem sync after 20 seconds. With the filter I’ve hammered it for the last few weeks with SSB and FreeDV signals but no interruptions in pings or the received audio and waterfall from a local KiwiSDR. There is a hit on my downstream bandwidth, but it’s not significant for me. Much nicer to be able to transmit on 40m and not have theInternet break!
Here is the finished filter, installed near the modem in some heatshrink:
I’d be interested to see if this idea will work at other sites. Due to the random nature of the phone lines no two VDSL installations arethe same.
The design is simply a 5uH inductor in series with a 100pF capacitor, connected across the VDSL phone lines. You need a high Q inductor, I used 9 turns on a F37-61 core. If possible, carefully check the tuning of the notch filter. I’ve also seen suggestions of using a quarter wave stub (about 10m of phone cable) to get the same effect. This is a neat idea, as you could just buy a 10m phone extension lead, and plug it in parallel with your VDSL line. However once again – carefully check the tuning of the stub – phone cable is messy, uncalibrated stuff! This was an interesting little project, with a satisfying result. I quite like learning about RF, and (re) learnt about the trade-offs around reactance at resonance, transmission lines, and inductor corematerial.
Thanks for help and useful comments from AREG members on their mailing list. Several other AREG members are also suffering from the same problem, so I imagine it’s wide spread in other countries that use VDSL. Posted on September 15, 2019December 2, 2019Author david
Categories Hardware
, Radio
5 Comments on VDSL versus HF Radio CODEC 2 700C EQUALISER PART 2 This post extends the work of Part 1 . I’ve developed a new Equaliser (EQ) algorithm, and ported it to C.EQ IN FRONT OF VQ
After several days of experimentation I moved the EQ in front of the VQ. The algorithm used in Part 1 included the VQ in the loop (top), however I found this had problems removing large amounts of low frequency energy. I’m not sure why – with the VQ in the loop the operation is complex. The new algorithm (bottom) is rather simple; we compare the average spectrum of the input speech to an ideal “mask”. The difference between the two are the equaliser weights. However, like many DSP algorithms, it took several days of careful experimentation, trial and error, listening tests, and a many backwards step to get the results I wanted. I coded and tested a bunch of candidate algorithms invq_700c_eq.m
The input spectrum is averaged using a IIR filter, so it takes about asecond to adapt.
This plot shows the EQ weights ramping up over a few frames (one frame is 40ms). It’s effectively a map of the excess spectral energy – the stuff we want to remove before the VQ: This sample has a lot of excess LF energy. The HF spike is due to the shaping of the VQ – it expects all samples to have low energy in the last bin. This plot shows average values over an entire sample: Dark blue is the input speech (target), and cyan the input speech after equalisation. Green is the “ideal” mask we make the EQ shootfor.
OBJECTIVE RESULTS
The following table is similar to the table in Part 1. It presents results for stage 1 (vq1) and stage 2 (vq2) of the two stage vector quantisation process. eq1 is the algorithm from Part 1, which I used as my starting point. eq2 is the latest algorithm for real time implementation, which does a comparable job. What really matters are the last three columns – the output error after quantisation for the current 700C VQ (vq2), Part 1 eq (vq2_eq1), and latest algorithm(vq_eq2).
Results Table
I placed the results in a separate text file as I had trouble getting them to display neatly in WordPress. The first two samples are “contrived”: I took “cq_freedv_8k” and using Audacity added 12dB gain between 0 and 500Hz to get cq_freedv_8k_lfboost. I set the high frequency cut off at 3500 Hz to get cq__freedv_8k_hfcut. This was really useful – in listening tests lfboost broke the EQ design from Part 1 – it was ineffective at cleaning up the sample! Note the obj measure for this sample (vq2_eq1 column) is still OK – one reason why we back up objective results with listening tests.SUBJECTIVE RESULTS
SAMPLE
CODEC 2 700C
CODEC 2 700C + EQ
cq_ref
Listen
Listen
kristoff
Listen
Listen
cq_freedv_8k
Listen
Listen
cq_freedv_8k_lfboostListen
Listen
I listen to these samples with a small set of loudspeakers, that have some low frequency response. The last sample is an extreme case. That cq_freedv_8k sample already has quite a lot of low frequency, and we have added 12dB extra. The equalised sample is much improved, but not quite as good as the original “clean” cq_freedv_8k sample. The quality improves over the first few seconds as the EQ adapts.DISCUSSION
An EQ has been developed, tested over a range of samples, and ported to C. Tests have been written to ensure the C port matches the Octave version, and it’s ready to try in the real word on x86 and embedded(stm32) platforms.
I’m quite pleased with this work. I’ve resolved a long standing personal mystery – why some samples/speakers code well and others don’t. I’ve made Codec 2 700C more robust to a range of different microphone inputs. This will mean an incremental improvement in the average speech quality of on-air modes like FreeDV 700C and 700D. I’ve also learned a lot about VQ, which can be applied to new codecdesigns.
Lessons learned:
* This work has reinforced how important accurate representation of the low frequencies is for speech. * Using a contrived sample is a good technique, it gives you a known error to test against. * This was a good exercise in learning the strengths and weaknessesof VQ.
* VQs are fussy about what you throw at them. * Variance is a really useful objective measure. * Use a decent training database (from Part 1 where I trained a newVQ).
The contrived cq_freedv_8k examples have a very big variance (column 1 of the results table) before quantisation – this suggests “more information to quantise”. However they started as the same sample, and just had their frequency response tweaked in a way that did not affect the perceptual information they contain at all. This suggests equalisation might be a neat way to lower the bit rate. We may be able to find a transformation in the spectrum that sounds more or less the same to the human ear, but is easier (requires less bits) to encode. Make me wonder – how many bits of other codecs are spent coding non-essential information like the arbitrary frequency responsesthrown at them?
You can play around with EQ yourself $ ./c2enc 700C ../../raw/cq_ref.raw - --eq --var | ./c2dec 700C - - | aplay -f S16_LELINKS
Codec 2 700C EqualiserCodec 2 700C
Codec 2 Pull Request for this work Posted on July 24, 2019October 27, 2019Author david
Categories Telephony 9 Comments on Codec 2 700C EqualiserPart 2
SM1000 V2 FIRMWARE
After a year of development we have released version 2 of the SM1000 firmware. Major new features include: * FreeDV 700D (thanks Don W7DMR) * A Morse menu system (thanks Stuart VK4MSL)* The SM1000 Manual
which tells you how to upgrade to the new firmware I’d also like to thanks Steve (K5OKC) for his fine work on the OFDM modem, Danilo (DB4PLE), and Richard (KF5OIM) for their work on the build system, Github/Travis integration and testing; and Walter (K5WH) and George (AC6RB) for helping us sort out the Windows flashingprocedure.
The software engineering side of Codec 2 has come a long way in 2019 – we now have about 50 automated tests and a very nice build system for the x86 and embedded stm32 ports. About half the tests run on a stm32 Discovery card and ensure the stm32 port keeps running as we push the x86 side of the project forward. The SM1000 hardware was developed by myself and Rick Barnich KA8BMA a few years ago. It is being manufactured, tested and shipped by our good friend Edwin at Dragino in Shenzhen,China.
The FreeDV 700D port includes some sophisticated signal processing: * The Codec 2 700C speech codec. * The OFDM modem developed by Steve and I that has been optimisedfor HF radio.
* State of the art LDPC forward error correction software designedby Bill, VK5DSP.
Largely through Don’s effort that is all running on a tiny 168MHz micro-controller in just 192k of RAM. With identical results to thex86 version.
I’ve really enjoyed working with the team on this project, in particular through GitHub. I like GitHub more that Git – which I still get into trouble with occasionally. The stm32 side of the Codec 2 project is much improved with a shiny new build system, up to date documentation, and we have the automated tests to ensure we keep it that way. Thanks guys! Here’s my SM1000 on the bench during development. I’ve hooked up a serial port to print debug messages, and am using laptops to feed it with FreeDV signals:LINKS
SM1000 page and storeSM1000 Manual
Porting a LDPC Decoder to a STM32 Microcontroller Don tells us how he squeezed sophisticated LDPC error correction into amicrocontroller.
Pull Request where the integration work was done for the V2 release. 2019 Codec2 and FreeDV Update FreeDV 700D – a description of this new mode. SM1000 Development – scan the archives around 2014/2015 for many posts on SM1000 hardware development. Posted on July 18, 2019July 26, 2019Author david
Categories Hardware
, News
, Radio
, Telephony
4 Comments on SM1000 V2 FirmwarePOSTS NAVIGATION
Page 1 Page 2 … Page 39Next page
Proudly powered by WordPressDetails
Copyright © 2024 ArchiveBay.com. All rights reserved. Terms of Use | Privacy Policy | DMCA | 2021 | Feedback | Advertising | RSS 2.0