Oh man it was my mistake, I stupidly used stereo mix with the HS_soundmodem… VB cable!
Have a look at Block Diagram | Amateur Radio – PEØSAT you can connect via AGW or Kiss port another application that will show the HEX data.
The image format is not yet described! I have made a decoder available that presents the image data encoded in a Base64 string. If someone is interested on how to use this or if I should simply add a panel inside the dashboard, just let me know. There’s probably a packet counter included in the header.
Can you please share? I’m interested in comparing ![]()
This with gr_satellites will also work:
name: SHARJAHSAT-1.yml
norad: 55032
data:
&tlm Telemetry:
telemetry: ax25
transmitters:
9k6 FSK downlink:
frequency: 437.165e+6
modulation: FSK
baudrate: 9600
framing: AX.25 G3RUH
data:
- *tlm
gr_satellites SHARJAHSAT-1.yml --samp_rate 48e3 --audio --hex if you redirect the observation audio.
***** VERBOSE PDU DEBUG PRINT ******
((transmitter . 9k6 FSK downlink))
pdu length = 272 bytes
pdu vector contents =
0000: 82 6c 64 aa 9e a6 e0 82 6c 60 aa 9e a6 61 03 f0
0010: 45 53 45 52 41 f6 e5 00 00 00 70 0f 6a b1 a9 db
0020: 5c 08 c6 e6 25 45 6d 73 13 3a d3 4a 49 32 c0 fc
0030: d5 b8 9f e8 d1 f4 a6 c6 b4 36 b4 c2 25 8f 71 ac
0040: fd 76 fd 23 52 17 ef 56 7f 68 d9 fc 27 0b ad 6a
0050: b2 84 c0 3b 6b 93 bd 49 e7 02 59 0e fa ea 8e 87
0060: 9f 3d 49 6c a2 de 87 8f 61 54 b5 0b 7f 25 c8 53
0070: ba ab a8 3f 84 cb 91 33 8c d3 4d 86 cc 35 59 8e
0080: e0 50 c8 dd ea da e7 6f 3d a9 0c 64 7c cc 37 54
0090: 7a cd c2 a8 09 18 a0 1f c0 7e 97 b1 82 e3 54 fb
00a0: 16 cf 91 23 c9 ac 4f 16 e9 29 3b 5b c6 06 d8 cf
00b0: a5 79 0a 36 5c c7 5a ad 29 4b 92 5d 8a 96 92 db
00c0: e9 f3 2d 8a 0f 9d 85 74 7b 6e 2e 6e 23 40 7f 72
00d0: 98 cd 44 bb 9d 8d c6 de 86 d2 60 0c 03 9c 53 66
00e0: ff 00 56 6b 47 3f 73 94 f0 a9 df eb 1a 9e 7d e2
00f0: 0b a6 47 11 a9 fb c7 b5 64 ca cb 18 1c f3 53 1d
0100: 8f 76 5b 94 0c f2 43 3e 7a 83 5a 16 d0 7d a1 c1
I believe it could be possible to get an image if we just will combine packets received from one station without 26 bytes header. At least thats how i got previous two images
The header has some reasonable value, IIRC. And, as I already said, there’s a decoder available (this is a decoder for information decoding, it needs the demodulated frames).
I’ll try to share an example on how to use SatNOGS-decoders for this today!
Here is a panel in the grafana dashboard for SharjahSat-1 that shows all received image data in the selected time range.
https://dashboard.satnogs.org/d/HqCRmvA4z/sharjahsat-1?viewPanel=55&orgId=1
I don’t have enough time to hack a sweet little script to extract the images right now, but this should be a shoot for someone playing around with the geoscan script. Maybe @SA2KNG himself could give it a try.
A big benefit of using the decoder for this: there indeed is a packet counter, so re-arranging the data packets into the correct order and removing doubles should be really easy.
Extracting the original binary data from this Base64 encoded strings is also pretty easy. In a command line one could just use
python -m base64 -d <<< "/9j/4AAQSkZJRgABAQEAAAAAAAD/2wBDAAQDAwQDAwQEAwQFBAQFBgoHBgYGBgwJCQcKDw0PDw4NDg4QEhcUEBEWEQ4OFBsUFhgZGhoaEBMcHhwZHhcZGhn/2wBDAQQFBQYFBgwHBwwZEQ4RGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRn/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQz" >> image.bin
Doing this in the right order with all packets that belong to a single image should produce a file called image.bin. Of course someone needs to find the image format after this, but there are also tools available.
Let me know if I can throw some more hints on that!
HTH,
Patrick
Here is an image I was able to get out of SatNOGS Network - Observation 7109702 and SatNOGS Network - Observation 7106883
Sweet! Awesome work!
WOW. How did you do it ?
I manually downloaded every data packet from 7109702. Found missing packets looking at offset in the header and took them from 7106883.
Then ran a script which takes off first 26 bytes from every file. Then I combined them
Yeah, ok! As I described above: you can see which packets are missing if you look into those 26 “ignored” bytes ![]()
Polling DB for the last week’s data should output some more images, maybe for the last month, too!
Header can be found here:
In case of image data, it is found here:
Now please add your decoder on github
![]()
Does someone recognize this area?
Yes, it’s coming. I need to iron out a few things first, tonight or tomorrow in some working condition ![]()
Main question is how red terrain actually is? ![]()
Snowy, mountain land. It looks something like North USA, or maybe somewhere in Asia





