SatNOGS station monitor v0.3.x

Hi,

I released version 0.3.0 of the satnogs-monitor last night. This release adds some visualization of the received signal of the current observation in form of a spectrum and waterfall plot. Note that this only works if the satnogs-monitor runs on the same machine as the satnogs-client.

This screenshot shows satnogs-monitor running on the RPi of station 175 over ssh using alacritty as a terminal emulator. You can enable the spectrum and waterfall plot independently. You will also need a true color terminal for the waterfall to look nice. The performance depends only on the link quality of your ssh connection and was quite good even on my laggy wifi connection to the station. Rendering the new widgets had no measureable impact on the stations operation (tested on a RPi 3B+).

To update an existing installation on your RPi run:

wget https://github.com/wose/satnogs-monitor/releases/download/0.3.0/satnogs-monitor_0.3.0_armhf.deb
sudo dpkg -i satnogs-monitor_0.3.0_armhf.deb

If you’re doing a fresh install make sure you got all the dependencies as described in the wiki first.

For the spectrum an waterfall plot you’ll need to set the SatNOGS data path as well:

$ satnogs-monitor -l 175 --data-path /tmp/.satnogs/data/ --waterfall --spectrum

The plots will appear as soon as an observation has started an satnogs-client creates the waterfall file. I’ll update the wiki page later today. I’ve updated the wiki to reflect the changes in the new version.

The range of both the spectrum and the waterfall plot is hard coded to 0;-100 dB. This will change soonish to be configureable by the user. There are some other ideas and functions which are not implemented yet (like waterfall zooming). I’ll create github issues to keep track of them. Feel free to add your own ideas and use cases.

You’ll find the repository here:

17 Likes

So cool @wose !

Works well on RPI 3B+ and 7" Waveshare LCD. Looking forward to the audiostream.

73 Oliver DL6KBG

10 Likes

Awesome! I love those integrated builds.

I’m not sure about the audio stream yet. I guess it would be easy for you to attach some speakers to your RPi and play the audio where your station controller is. I think (and I may be totally wrong here) that’s a uncommon setup. I have my station controller (RPi) outside near the antenna and connect via ssh to the station and run the satnogs-monitor there to get the cool stuff. So streaming the audio to another machine is certainly possible, but may not be part of the satnogs-monitor functionality. If you stream the audio as part of satnogs-monitor you probably also want the waterfall data streamed. This would require much more bandwidth than the current partial terminal buffer updates through ssh.

What would be your use case? Would you want to listen to the audio ‘anywhere’ or would it suffice if you RPi played it?

Works well with Putty 0.73 on windows

For stream audio : Edit gr-satnogs to listen live

Maybe add a widget to display the decoded data in hexadecimal and ascii …

3 Likes

Many thanks for your answer @wose. My pole is just above the shack and on 70cm I have a good lna right at the crossed dipole.

I would like to listen to the audio in front of the station.

I think I will go with @michel s suggestion below.

Another option I thought about yesterday was to parse the hamlib data to a nearby transceiver and to listen there.

I will report how I managed to realise that.

Keep up that good work. Makes fun to sit in front.

By the way. You said, that the spectrum levels are hardcoded. Would like to change that a bit. Maybe you are able to point where to do that?

73 Oliver DL6KBG

This is already on my todo list. After this is implemented it should be fairly easy to run the satnogs-decoders on the data and display meaningful telemetry. There should be enough space next to the map for those widgets and it would reduce the distortion of the map itself.

The labels are just text, you’ll find them in the render_waterfall and render_spectrum_plot function of ui.rs. You’ll find the bounds for the spectrum plot there as well. Adjusting the range of the waterfall display is a bit more involving. You can take a look at the widget implementation waterfall.rs.

If you’ll have another day or so I make the necessary changes and make those bounds configurable.

1 Like

Very good. Many thanks in advance.

I just pushed the changes and created a pre release with an armhf package attached.

wget https://github.com/wose/satnogs-monitor/releases/download/0.3.1-pre/satnogs-monitor_0.3.1-pre_armhf.deb

You can overwrite the default dB range (-100;0) with either the settings in the config file or with the command line options --db-min=-90 and --db-max=-20. I’ll add some more things during the next days and create a proper release.

2 Likes

That ways fast @wose! Many thanks will test that.

Audio streaming via udp works so far. Will test the audio sink to the speaker plug later.

73 Oliver

Fantastic work @wose !

One thing I noticed is no print out for the sats current Az/El - would that be possible to add to the left hand column?

Thanks for the great work , updated as per your guidelines, took me a while to figure out to remove $ as the system prompt was already there,

Is this a font problem ? or do i need to change the gain as you have commited ?
Cheers

Max

,

You need version 0.73 of Putty
Capture_1
And configure color
Capture

3 Likes

Thanks Michel, will have a go when i get back from work
Thanks for the quick response

Max

thanks mate works now

Max

I just released version 0.3.1. This includes display of the satellites azimuth and elevation as well as the rotators position if you configure the rotcltd address. The color of the rotator position will change depending on the difference to the satellite position (<1.0: white;<5.0 yellow;else red).

It looks something like this:
satnogs-monitor-azel

I only tested it with the dummy rotator rotctld -m 1 but I think all rotators support querying the current position. However, any feedback from someone with a rotator setup is highly appreciated. You can set the rotctld address in the config file or use --rotctld-address 127.0.0.1:4533 as an command line option. rotctld listens on all interfaces by default, so you can also run with rotator support if satnogs-monitor runs on another machine as your ground station as long as you have a network connection to it.

3 Likes

I’d suggest < 5 degrees as White, < 15 degrees as yellow, and anything else as red.
Realistically no-one on SatNOGS (with the notable exception of the https://network.satnogs.org/stations/384/ ) has antennas with a narrow enough beam that 1 degrees of pointing accuracy is required.

1 Like

Thanks a lot, it work well !
Would it be possible one day to have access to this monitor simply running the ip address of my station on a web-browser ?
I had in the past a 3D printer that was like my rotator controlled by a raspi, and i had access to it runnig its ip, i was using it to schedule printing or to know what was the temperature ect…

Sure, I’ll set those values as default and add options for the user to overwrite them.

I doubt it. My personal goal for satnogs-monitor was to create a terminal application which can be run on any machine (windows is not supported yet) and not just on the ground station. However, your station already has a status page as part of your SatNOGS client installation. Point your browser to port 5000 of your station (http://STATIONIP:5000) to check it out. I think contributions to add more information to this page on what’s going on are welcome.

Hey @wose, great work! The latest version works great, however I’ve noticed that if I try the spectrum waterfall command I get “Error occurred: entity not found”. Can this command only be ran when the station is running an observation job?

satnogs-monitor -l 521 --data-path /tmp/.satnoogs/data/ --waterfall --spectrum

Thanks!

Check the spelling - satnogs not satnoogs!
(I noticed this too, the example in the documentation needs to be fixed :slight_smile: )

1 Like