YAAC is not Yak but Gnu, you really ought to k-now wa-who's wa-who. YAAC is - Yet Another APRS Client written in Java under GNU license. YAAC, I'm quoting here - "can be used as a stand-alone APRS client, an APRS RF-Internet gateway
(I-Gate), or as a AX.25 digipeater". It doesn't matter what does this even mean but this app can actually be used to display multiple weather sondes at the same time on a map.
Thoughts and ideas about programming, scripting, automation, electronics, gadgets, web and technology
Sunday, August 30, 2020
Monday, August 10, 2020
How to receive and decode multiple weather sondes with only one RTL-SDR receiver (Part 2)
As I finished the first article I got a tip from Zilog80 that he has finished a preliminary version of his iq_server concept. iq_server is a kind of a channelizer that allows clients to connect over TCP and request decimated baseband IQ stream of floats for a specific frequency offset. I was really excited to learn about his work because it would allow to allocate/dispose decoding processes upon request dynamically!
Thursday, August 6, 2020
How to receive and decode multiple weather sondes with only one RTL-SDR receiver
Note: there's part 2 to this article with the script updated for performance
It could sound strange but I haven't seen a simple solution that would allow me to receive and decode multiple weather sondes at the same time with only one receiver. dxlAPRS software has a channelizer if I'm not mistaken but the software itself is too complex and is designed for things I'm not even interested in. auto-rx on the other hand would require a receiver per frequency. But is it a problem to get me more RTL-SDR dongles to receive as many sondes as I like at the same time? No, getting an RTL-SDR dongle is not a problem, the problem is the antenna - each dongle would require one. So either I would have to install as many antennas as dongles or I would have to use an antenna splitter. And without an amplifier (LNA) a splitter would reduce signal power by a number of its outputs. So both solutions would require additional hardware and investments. But then I had an idea that it should be possible to build a very simple (and very inefficient of course) channelizer even in bash by multiplexing IQ samples baseband stream into multiple decoding processes.
It could sound strange but I haven't seen a simple solution that would allow me to receive and decode multiple weather sondes at the same time with only one receiver. dxlAPRS software has a channelizer if I'm not mistaken but the software itself is too complex and is designed for things I'm not even interested in. auto-rx on the other hand would require a receiver per frequency. But is it a problem to get me more RTL-SDR dongles to receive as many sondes as I like at the same time? No, getting an RTL-SDR dongle is not a problem, the problem is the antenna - each dongle would require one. So either I would have to install as many antennas as dongles or I would have to use an antenna splitter. And without an amplifier (LNA) a splitter would reduce signal power by a number of its outputs. So both solutions would require additional hardware and investments. But then I had an idea that it should be possible to build a very simple (and very inefficient of course) channelizer even in bash by multiplexing IQ samples baseband stream into multiple decoding processes.
Sunday, May 24, 2020
Radiosonde Hunting
There are over hundred of weather sondes sent over the Europe each
day from different locations for weather forecasts and other scientific
or military purposes. Weather sondes are expendable electronic devices
to measure wind speed, air temperature, humidity and pressure. Sondes
attached to a balloon filled with hydrogen or helium ascent up into the
stratosphere where the balloon bursts and the sonde falls down back to
earth with a parachute.
Labels:
radiosonde,
rs41,
sdr
Sunday, June 24, 2018
How to collect wireless sensors readings using rtl_433 and display them using OpenWrt
Goal: to use an OpenWrt capable router to receive wireless sensors reading and log them using OpenWrt luci-app-statistics module.
Why: because my router is always on anyway, so why not to use it to also log wireless sensors readings?
What is needed?
Why: because my router is always on anyway, so why not to use it to also log wireless sensors readings?
What is needed?
- A router (or any other device) with USB port(s) that is supported by OpenWrt
- A RTL-SDR dongle
- Wireless temperature/humidity sensors supported by the rtl_433 application
Note: I’m referring to the old OpenWrt project name,
which is currently called LEDE, which in turn will be called OpenWrt
again. It’s because of the nonsense they started some time ago by
forking the project and calling it LEDE because they couldn’t agree on
which side they should start counting bits. Some of them there
little-endians and the others big-endians. Finally they have agreed to
use both approaches and now they are busy merging everything back
together and use the good old name [sic!]. So the next release is
supposed to be called OpenWrt as their branch name suggest. At the moment this branch is not usable but maybe it will
be released at the end of the year. It is still not known which year
should it be…
Thursday, January 4, 2018
A simple apt-get based script to get upgradable packages change logs
I do upgrade packages manually on my machine because I want to control when and what to upgrade. Security freaks could argue that it is not secure not to update computers frequently but I believe that chances to get hacked because of an outdated package are less than receive an upgrade that bricks your computer. The recent Canonical fuck up with activating experimental Intel SPI drivers in kernel that bricked some Lenovo laptops is a very good example. Another reason is the time needed to upgrade packages because apt-get is really slow. So basically I need to check what has been changed and only upgrade if really needed.
Saturday, April 29, 2017
How to Connect the rtl_433 to a remote rtl_tcp server
One of the issues with the rtl_433 application is that it is not
possible to connect it to a remote rtl_tcp server using syntax supported
by other SDR application like gqrx. One of proposed solutions is to use the TCP enabled version of the librtlsdr which is a bit complicated. There's actually a much simpler solution.
Saturday, December 3, 2016
How to create gists from the command line
Thursday, September 8, 2016
Visualization of live data streams with the gnuplot and bash (Part 2)
In my first article I have demonstrated the gnuplotwindow.sh
script and other utilities to feed the gnuplot with live data streams.
Shown scripts are easy to use and if combined together they build
powerful chains of data filters. The only problem with the script is
that it can only display a continuous data stream updating the plot with
each new incoming data sample. To display even more complex data like
scatter or 3D plots a different approach of data feeding is needed. It
would be necessary to update the plot blockwise and input data should
also be fed in blocks. This new concept didn't match well with the gnuplotwindow.sh
script so I have written a new script because mixing both concepts in
one script would make it unnecessary complex and unmaintainable.
Sunday, May 22, 2016
Wednesday, February 17, 2016
Tuesday, January 5, 2016
How to fix broken power management in Xubuntu 15.10 (16.04)
As we know Ubuntu has switched to the new "shiny" init system called systemd since the release 15.04. But the integration of that new init system isn't yet completely finished because some things aren't working as before the switch. Power management that utilized pm-utils previously is completely broken for example and no alternative solution is offered. In this article I'll explain how to restore pm-utils's old behaviour as a temporary workaround that can be used until a new and of course better official solution will be implemented.
Sunday, October 25, 2015
Using the i3 tiling window manager with XFCE services
Since around a year or two I've been using i3 tiling window manager together with the xfce4 services as my desktop environment and I'm quite content with the result. The i3-wm can be installed on top of the xfce4 DE without any package conflicts. Such a combination allows to have both DE at the same time and share common settings and applications between them.
I can't remember exactly why I have chosen the i3-wm as my window manager but maybe it's because I have read that i3-wm has vim style movement keyboard shortcuts. As far as I'm a vim user I decided to 'take it for a spin'.
Saturday, February 14, 2015
Sound volume change notifications using pynotify
As I started to use the i3 window manager I wanted to have a visual feedback on sound volume change events. Usually it's done by a daemon that binds to specific keyboard combinations to adjust volume and to send notifications to a notify daemon. In xfce this is done by the xfce4-volumed. I should also point here to other lightweight volume daemons like volnoti or pa-applet. Without a dedicated daemon it is also pretty much simple to handle sound volume keys by a simple bash script which is bind to specific keyboard combinations.
Labels:
bash,
notify-send,
python,
sound
Saturday, May 10, 2014
Minimal Xubuntu 14.04 LTS installation
I have previously described the process of minimal Xubuntu Desktop installation with versions 13.04 and 13.10. Now it's time to install Xubuntu 14.04 LTS!
Note: There's already a newer article – Xubuntu 16.04 LTS minimal installation
Sunday, November 24, 2013
Minimal Xubuntu 13.10 Desktop installation
I have performed a clean install of the newest Xubuntu distribution and I like the result. They have reacted to the bug reports I posted and fixed dependencies to the bloatware and spying packages that were not possible to avoid during Xubuntu 13.04 installation. I have also spent some time trying to figure out the minimum set of packages for the network-manager to work. Here's the installation procedure:
Thursday, September 12, 2013
Multimonitor support in Xubuntu 13.04
One new feature planned for the Xubuntu 13.10 release is the multi-monitor support integrated into XFCE desktop. Previously one would have to use xrandr to adjust monitors settings and now it should also be possible with the updated Display Settings dialog. But it is also possible to use this feature in Xubuntu 13.04
Labels:
xubuntu
Tuesday, September 3, 2013
Javascript vs Perl vs Python vs Lua speed comparison
I have previously compared performance of the three most popular interpreted languages - Perl, Python and Lua (part1, part2). The next question was - how do they compare to the Javascript? Unlike the above mentioned languages it was quite unusual to use Javascript outside of a browser sandbox but with developing of the node.js this became possible.
Labels:
javascript,
lua,
perl,
python
Saturday, August 10, 2013
Redirecting terminal output into any X application
Sometimes I want to redirect bash output directly into an X application for further editing. Normally this is done using a temporary file where the bash output is saved and then it is opened by an application. There's a way though to start an X application and paste the bash output into its window automatically.
Tuesday, July 23, 2013
Python vs Perl vs Lua - speed comparison. Part 2
As far as people show interest in this topic I decided to perform an additional measurement to the one I performed in Part 1.
This time I wanted to compare floating point numbers operations performance because my good friend Anonymous worried about it. He said that I shouldn't have abused lua interpreter with basic arithmetic operations on integers because it's not good at it. He said that I should have tried floating points numbers instead to let lua interpreter shine. I was a bit skeptic about it to be honest but Anonymous's logic was sound.
Subscribe to:
Posts (Atom)





![[Image]](https://xubuntu.org/wp-content/uploads/2016/04/d09c/xerus-release-art-700.png)


![[Image]](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh2FXf_UufXAylF2dwEpLMuRIW1_1hcInQz0DRnw4A6iQFrmV_SjsiOSqOdYlecHcGioPlmFgPuj2CL9H7vr6ui4t7b53zuO7lWeZRjQWEOWrqMoCdm3XayvhsOLxl72oSJKmOMZwC9MRM/s1600/xub1404.jpeg)
![[Image]](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtkTUBfb2L33iaRphRU6QyrJ8kQ4gfqeP9DDdIhyzx3yoUMBrCOxTorw5U4ThkcWIzESDe9iUR8Xev7JGtlSeAe4X0FuNPn6CGjeBCwVs724jLpNPm2Yi4kVzhR2p4UN0-P_FydxbxEhc/s1600/xubuntu-brandmark-with-in-circle-logo-400.png)