Replayed the file from @tomasz, created a kiss file and converted.
Unfortunately, it’s mostly telemetry
Yes, when you see individual packets every second (more or less), those are telemetry.
The image downloads are a continuous stream.
first try, decodes cas-5a images from db at least, should be tested on more data and also .kiss cas5a_simple.py
Ah wonderful, you as usual got it before me!! =D
I was just about to publish my own (much simpler) version. Never mind I guess…
Hehe
Just a warning, the method you are using for de-escaping KISS frames may not always work. It really needs to be done byte-by-byte, working through the packet, else you can end up corrupting packets.
There’s some discussion on this approach here: recover_special_codes escaping too many sequences · Issue #15 · ampledata/kiss · GitHub
Well, you should do that anyways (:
Yeah, I didn’t put too much effort into it, and that is a fair point. I’ll look into it, not wanting a complete kiss deframer that supports everything though, just extract data.
That’s also just a fewlines of code. You only need the part inside 0xC000 … where the 0x00 indicates the data. Anything else is timestamps, modem settings and so on.
This is where an error may have crept in.
This is a picture of 3 pass and 3 kiss files. There is still an error.
Maybe some data packet just got lost.
I haven’t been able to produce any examples where the super sketchy kiss deframer misbehaves, anyone have some frames that it will decode wrong ?
In the meantime I mushed it into a list comprehension and made it a lot less readable, but only 3 lines of code:
def parse_kissfile(infile):
return [d[1:].replace(b'\xdb\xdc', b'\xc0').replace(b'\xdb\xdd', b'\xdb').hex(bytes_per_sep=2)
for d in infile.read().split(b'\xC0') if len(d) != 0 and d[0] == 0]
Your decoder works perfectly. This is the result of combining 8 kss files from 8 CAS-5A passes Finally succeeded …
Has anybody discussed with BA1DU the possibility of adding FEC/RS to the frames?
Someone talked. In the next satellite maybe there will be this option
JPG Image #22 downloaded on a single pass (0721utc 03-Mar-2023) from combined packets of N6RFM (the majority) and my own decodes.
Looks like maybe an antenna in the foreground?
Is there an error w/ the URL to the Grafana Dashboard for CAS-5A?
https://dashboard.satnogs.org/d/hgwbU6JVz/cas-5a?orgId=1&refresh=30s
… I get ‘Access Denied’ when clicking that link on CAS-5A’s data page
https://db.satnogs.org/satellite/THLP-9709-3501-8618-5195#data
Thanks!
Thanks, I’ve just fixed that. Have in mind for the future that you can add a suggestion for the dashboard link by logging in and editing the satellite.
Looks great - thanks!
Naturally there is a lot of interest around the cameras & stored JPG files on the satellite. Would there be any interest in placing the camera status & image counters near the top of the Grafana Dashboard for easy reference? Thanks!
Yeah, such requests are always a good thing! I’m guessing what’s of value and what not, so this is really useful. The only problem currently is the limited time to do so. I’ll have a look once I have some spare time! If there’s anyone else who wants to do this: just let me or @fredy know and we will grant editor access.
Refresh your dashboards