Forum Krótkofalarskie PKI

Balon podczas VII Mazowieckiego Pikniku Krótkofalarskiego w Celestynowie 22 września 2024
T#638916
Facebook
Explore poziom 5
QTH: KO11QJ
#8212592 22.09.2024 14:53:03
    SP9VEY pisze:

    Gdzie assempix zapisuje obrazki?

Na kompie czy w telefonie ?
SP9VEY poziom 5
QTH: KO00AB
Ilość edycji wpisu: 1
#8212610 22.09.2024 15:57:39
    Explore pisze:

      SP9VEY pisze:

      Gdzie assempix zapisuje obrazki?

    Na kompie czy w telefonie ?


Znalazłem w telefonie.

Na dwóch samsungach jeden dekodował każdy obrazek a drugi nie zdekodował nic.


Do organizatorów:

dziękuję za super zajęcie na niedzielę. Powodzenia w kolejnych misjach balonowych.
wpis edytowany 22.09.2024 16:00:35



73! Bogdan
arekm poziom 1
#8212612 22.09.2024 15:59:36
U mnie w większości obrazki się nie dekodowały (odbierane radiowo w okolicach Bydgoszczy).

Aplikacja np. potrafiła odczytać wszystkie chunki ale potem jej coś nie pasowało. Ogólnie albo wszystko poprawnie odbierze albo nie mamy nic.

Na początku w ogóle był problem ale pomogły wskazówki z https://www.aicodix.de/cofdmtv/assempix/

Na przyszłość kupuję kabel audio radio--telefon by sprawdzić czy to coś zmieni.
Explore poziom 5
QTH: KO11QJ
#8212614 22.09.2024 16:05:47
Hmm taka ciekawostka , że dużo lepszy obiór mam na antenie QHA niż na GP zmieszany
Explore poziom 5
QTH: KO11QJ
#8212615 22.09.2024 16:09:48
    arekm pisze:

    U mnie w większości obrazki się nie dekodowały (odbierane radiowo w okolicach Bydgoszczy).

    Aplikacja np. potrafiła odczytać wszystkie chunki ale potem jej coś nie pasowało. Ogólnie albo wszystko poprawnie odbierze albo nie mamy nic.

    Na początku w ogóle był problem ale pomogły wskazówki z https://www.aicodix.de/cofdmtv/assempix/

    Na przyszłość kupuję kabel audio radio--telefon by sprawdzić czy to coś zmieni.


Zainstaluj LDPlayer ,na BluStack miałem tak samo jak opisujesz , też odbierało wszystko i na końcu wylało decode fail zakręcony I też całą poprzednia misja poszła w pi... zainstalowałem na kompie LDPlayer i wszystko śmiga .
arekm poziom 1
#8212616 22.09.2024 16:12:35
    Explore pisze:


    Zainstaluj LDPlayer ,na BluStack miałem tak samo jak opisujesz , też odbierało wszystko i na końcu wylało decode fail zakręcony I też całą poprzednia misja poszła w pi... zainstalowałem na kompie LDPlayer i wszystko śmiga .


To było odpalane bezpośrednio na telefonie z androidem.
Explore poziom 5
QTH: KO11QJ
#8212620 22.09.2024 16:17:52
Chyba ,że ten assempix ostatni coś nie chce współpracować , wczoraj też zainstalowałem na telefonie i też ni cholery nie chciało dekodować .
SP4UBW poziom 5
#8212623 22.09.2024 16:42:58
    Explore pisze:

    Chyba ,że ten assempix ostatni coś nie chce współpracować , wczoraj też zainstalowałem na telefonie i też ni cholery nie chciało dekodować .


Nie zwalaj na emulator. To wina apki w tym przypadku. Sam bluestacks działa wyśmienicie.

Co do obrazków, dekodowały się od pierwszych 3 minut po starcie aż do 1.9km nad ziemią przy spadaniu bo potem przełączyłem na 4FSK.

Bardzo ładny i wysoki lot i do tego lądowanie w idealnym miejscu.

Gratulacje.

SP8IKA
#8212671 22.09.2024 19:34:27
A mnie interesują "bebechy" takiej bardziej zaawansowanej sondy. Może ktoś kiedyś wrzuci fotki, schematy, wykorzystywane skrypty itp. sam kiedyś bawiłem się w programowanie RS41 oraz zabawki w oparciu o sa828. Zawsze to jakaś pomoc i wskazówki dla osób, które chciałyby zacząć z tym przygodę.
CircuitChaos poziom 3
QTH: KO02mg
#8212695 22.09.2024 21:06:02
Zgodnie z obietnicą wrzucam .wav z transmisji balonu, nagrany dziś w Celestynowie. Próbkowanie 11025 Hz. Niestety okazało się, że program „decode” z repozytorium ofdmtv nie obsługuje tego próbkowania, ale po konwersji na 8000 Hz też nie chce dekodować – zwraca „operation mode unsupported”.

https://drive.google.com/file/d/1JFaafPTiGLFn0X_wxx4aZIVVZkBXOrfp/view

W pewnym momencie na początku zmienia się głośność, bo dostosowywałem poziom nagrania.

Będę jeszcze próbował coś wykombinować, żeby go zdekodować pod Linuksem. Jak się uda to wrzucę info.

Miłego testowania.
SP5LOT poziom 4
QTH: KO02OD
#8212722 23.09.2024 00:15:14
Dziękuję Ci. To bardzo pomocne. Spróbuję też coś pokombinować.
CircuitChaos poziom 3
QTH: KO02mg
#8212724 23.09.2024 01:13:42
    SP5LOT pisze:

    Dziękuję Ci. To bardzo pomocne. Spróbuję też coś pokombinować.

To co na razie wykombinowałem to to, że:

– tryb jest ustawiony na 11
– ofdmtv obsługuje tylko tryb 1 (dlatego twierdzi, że tryb jest nieobsługiwany)
– Assempix ma dekoder napisany w C++ z nakładką w Javie
– dekoder w Assempix obsługuje tryby od 6 do 13 (tryb 11 to parametry: carrier_count = 384, symbol_count = 56, mod_bits = 3)
– te dwa dekodery niestety nie są łatwo podmienialne – mają inne API

Skompilowałem dekoder z Assempix z pustym programem – kompiluje się. Trzeba tylko go teraz jakoś użyć. Jest API, ale nieudokumentowane – trzeba zagłębić się w kod Assempix:

int process(uint32_t *spectrum_pixels, uint32_t *spectrogram_pixels, uint32_t *constellation_pixels, uint32_t *peak_meter_pixels, const int16_t *audio_buffer, int channel_select, int color_tint),

void cached(float *cfo, int32_t *mode, int8_t *call),

int fetch(uint8_t *payload),

Jakbym miał strzelać to pewnie:

– do audio_buffer w process() podajemy próbki wejściowe (w jakim formacie? Signed 16-bit w natywnym endianie? Do ustalenia), process() też aktualizuje spektrogram, konstelację, peak meter

– cached() zwraca wartości, które sobie process() wczytało (CFO, tryb, znak)

– fetch() zwraca obrazek

Inna sprawa, że sam Assempix na komórce też nie chce mi nic dekodować (dekoduje znak i to wszystko, pokazuje błąd dekodowania) – testowane z głośników w laptopie i ze słuchawek przy mikrofonie telefonu. Z filmu, który wrzuciłeś w pierwszym poście, coś próbuje zdekodować, ale też nie dekoduje do końca.

Pobawię się tym jeszcze, tylko nie wiem jak będzie z czasem (zależy czym mnie zawalą w pracy) – jak ktoś chce to pociągnąć dalej to śmiało.
CircuitChaos poziom 3
QTH: KO02mg
Ilość edycji wpisu: 3
#8212725 23.09.2024 01:53:26
Aktualizacja – jest dobrze wesoły

1. Dekoder z repozytorium modem (nie ofdmtv) dekoduje tego wave'a, w wyniku powstają dane CRS

2. Dekoder z repozytorium crs umie te dane poskładać w obrazek

Czyli najpierw z .wav na .crs:

$ mkdir /tmp/crs && for n in $(seq 1 7); do modem/decode /tmp/$n.crs /tmp/sox.wav $n; done

A potem z .crs na .jpg (crs/decode):

$ crs/decode test.jpg /tmp/crs/*.crs

I mamy obrazek.

CRS wydaje się być formatem pośrednim, wprowadzającym korekcję błędów (na to wskazuje też rozwinięcie skrótu, Cauchy-Reed-Solomon), ale nie zagłębiałem się tak bardzo. Podejrzewam że można zakodować tym modemem dowolne dane, a obrazek jest opakowywany w CRS dla lepszej niezawodności dekodowania.

Zakładam też, że fetch() z posta powyżej nie zwraca obrazka, tylko dane CRS – ale skoro mamy działający dekoder w repozytorium 'modem' to nie trzeba bawić się tym z assempix.
wpis edytowany 23.09.2024 01:56:38
SP5LOT poziom 4
QTH: KO02OD
Ilość edycji wpisu: 1
#8212727 23.09.2024 05:42:06
Brawo. Rozgryzłeś to !
Ale nie jestem pewien czy każdy plik - na przykład zip można tym softem kodować i dekodować.
Programista coś wspominał o jakichś zabezpieczeniach.
wpis edytowany 23.09.2024 05:44:45
Explore poziom 5
QTH: KO11QJ
#8212848 23.09.2024 14:51:41
    SP4UBW pisze:

      Explore pisze:

      Chyba ,że ten assempix ostatni coś nie chce współpracować , wczoraj też zainstalowałem na telefonie i też ni cholery nie chciało dekodować .


    Nie zwalaj na emulator. To wina apki w tym przypadku. Sam bluestacks działa wyśmienicie.

    Co do obrazków, dekodowały się od pierwszych 3 minut po starcie aż do 1.9km nad ziemią przy spadaniu bo potem przełączyłem na 4FSK.

    Bardzo ładny i wysoki lot i do tego lądowanie w idealnym miejscu.

    Gratulacje.


Emulator może i działa , ale nawet kombinując ze starszymi wersjami assempix , nie dekodowało obrazka. Dopiero to rozwiązało problem https://www.ldplayer.net/apps/assempix-decode-cofdmtv-on-pc.html
SP8IKA
#8212863 23.09.2024 15:35:45
Pierwszy raz zainstalowałem ldplayer. Pobrałem assempix w postaci pliku APK i przeniosłem na otworzony ldplayer gdzie się zainstalował. W ustawieniach ldplayera ustawiłem opcje zapisu na dysku oraz przekierowanie mikrofonu na virtulcable. Na kompie wyjście dźwięku na VB. Odpaliłem assempixa i bez problemu zremisował mi obrazki i zapisał w katalogu dokumenty. Na Motoroli g82 bez problemu również działał.
SP8IKA
#8212864 23.09.2024 15:37:10
    SP8IKA pisze:

    Pierwszy raz zainstalowałem ldplayer. Pobrałem assempix w postaci pliku APK i przeniosłem na otworzony ldplayer gdzie się zainstalował. W ustawieniach ldplayera ustawiłem opcje zapisu na dysku oraz przekierowanie mikrofonu na virtulcable. Na kompie wyjście dźwięku na VB. Odpaliłem assempixa i bez problemu zremisował mi obrazki i zapisał w katalogu dokumenty. Na Motoroli g82 bez problemu również działał.


Zdekodował *
CircuitChaos poziom 3
QTH: KO02mg
#8212878 23.09.2024 16:36:00
Wydaje się, że można zakodować dowolne dane, przynajmniej tym koderem/dekoderem CRS. W README.md jest przykład kodowania 256 KiB z /dev/urandom.

Pobawiłem się trochę bardziej i z limitem 400 fragmentów wyciągnąłem te zdjęcia:

https://drive.google.com/drive/folders/146UBcmWM86dqtORRNNiP2PFsRIQxdMAg

Wydaje mi się, że powinno być ich więcej (?)

Skrypt do tego jest bardzo powolny, bo w kolejnych przejściach dekoduje 1 fragment, potem 2 i odcina pierwszy, potem 3 i odcina dwa pierwsze, itd., ale na razie piorytetem było szybko go napisać i przetestować, a nie to, żeby szybko działał. Musi mieć w PATH programy ofdmtv-modem-decode (decode z repozytorium modem) i ofdmtv-crs-decode (decode z repozytorium crs), plus md5sum, żeby mógł usuwać duplikaty utworzonych plików.

Do testów pokazuję też MD5 kolejnych zdekodowanych fragmentów i widzę, że czasem niektóre kolejne są identyczne – być może uszkodzone / niedekodowalne. Często przewija się np. suma d7d2b2a0f9d6b9ce53219f6093ae1a65, dla której plik w ogóle nie jest w formacie CRS.

Założyłem też, że fragmenty są umieszczane kolejno. Może to założenie jest błędne.

https://pastebin.com/jnzYB5yD

(Oczywiście przestrzegam przed odpalaniem skryptów znalezionych w sieci bez przeczytania i zrozumienia, dotyczy to też tego skryptu.)

Fajnie byłoby mieć docelowo commandline'owy program, który przyjmowałby na wejście strumień próbek (z arecord albo z pliku) i tworzyłby na dysku kolejne obrazki. Dałoby się to zrobić, trzeba byłoby trochę zmodyfikować te dekodery.

Planujecie w przyszłości wykorzystywać OFDMTV, czy to była jednorazowa próba?
sp6ryd poziom najwyższy i najjaśniejszy :-)
QTH: Wrocław
#8212893 23.09.2024 17:36:05
Teraz byłoby może warto pokombinować z modułami pod GnuRadio, by uniezależnić się od emulatora androida.
Specem od tego jest Daniel Estevez EA4GPZ https://destevez.net/ może byłby zainteresowany kontrybuowaniem.
Opracował wiele dekoderów telemetrii z satelitów jako moduły do GnuRadio.
SP5LOT poziom 4
QTH: KO02OD
#8212912 23.09.2024 18:16:54
    CircuitChaos pisze:



    Planujecie w przyszłości wykorzystywać OFDMTV, czy to była jednorazowa próba?


Właściwie to już nasz 3 lot z OFDMTV. Do pierwszego generowaliśmy wav z aplikacji na tel, drugi przesyłał błędnie 1 zdjęcie ale ze zmieniającą się telemetrią,
trzeci dopiero nabrał właściwego rozpędu.
Balon podczas VII Mazowieckiego Pikniku Krótkofalarskiego w Celestynowie 22 września 2024
T#638916
Facebook
Aby pisać na forum musisz się zalogować !!!
rss · kontakt · załóż własne forum · korzystasz z forum? wesprzyj projekt!