WELLE-CLI(1)

πŸ“¦
version 2.7 Β· 2 versions
  • 2.7 Β· debian bookworm, debian trixie, nixos 26.05, nixpkgs unstable, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking (latest)
  • 2.2 Β· ubuntu jammy
, in debian bookworm, debian trixie, nixos 26.05, nixpkgs unstable, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

✨ WELLE-CLI ✨

okay bestie, sit down, hydrate, because we're about to talk about welle-cli β€” that's the welle.io command line interface, and it's genuinely the moment. πŸ’–


🌸 SYNOPSIS 🌸

welle-cli [OPTION]
welle-cli -w <port> [OPTION]

like. two ways in. either you're just rawdogging it with options, or you're opening a whole web server on a port and then doing options. both valid. both iconic. πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

welle-cli is welle.io's command line interface. that's it. that's the whole vibe. it's the terminal girlie version of welle.io and she works. ✨


πŸŽ€ OPTIONS πŸŽ€

🌈 Tuning:

  • -c channel β€” tune yourself to <channel>, bestie. like literally, examples are 10B, 5A, LD... go off. πŸ“»
  • -p programme β€” play <programme> using ALSA. this is the text name of the radio, so like, eg. GRIFF. yes, the name. not a number. the name. 🫢

πŸ’œ Dumping:

  • -D β€” dump FIC and all programmes to files. ⚠️ cannot be used with -C, so pick a lane. this generates: dump.fic; <programme_name.msc> files; and <programme_name.wav> files. so many files. so much content. πŸ”₯
  • -d β€” dump programme to a <programme_name.msc> file. just the one. lowkey minimal of her. 🌸

πŸ‘‘ Web server mode:

  • -w port β€” enable the web server on port <port>. main character energy fr fr. 🌐
  • -C number β€” the number of programmes to decode in a carousel. this one is to be used with -w, and it cannot be used with -D. it's giving "my machine cannot decode all programmes simultaneously but I still want an overview of the ensemble" and honestly? valid. we love a carousel. 🎠
  • -P β€” okay so without the -P option, welle-cli will switch every 10 seconds. with the -P option, welle-cli will switch once DLS and a slide were decoded, staying at most 80 seconds on a given programme. she's patient. she's thorough. she knows what she wants. πŸ’…

🧚 Backend and input options:

  • -f file β€” read an IQ file <file> and play with ALSA. the IQ file format is u8, unless the file ends with FORMAT.iq. sneaky little exception, we respect it. πŸ“
  • -u β€” disable coarse corrector. this one's for receivers who have a low frequency offset. do with that information what you will. πŸ™ˆ
  • -g gain β€” set input gain to <gain>, or set it to -1 for auto gain. let her decide. 😌
  • -F driver β€” set input driver and arguments. default: "auto". valid drivers depend on compilation options at build time, and they are: airspy, rtl_sdr, android_rtl_sdr, rtl_tcp, soapysdr. with "rtl_tcp", host IP and port can be specified as "rtl_tcp,<HOST_IP>:<PORT>". so much flexibility, so little time. ⭐
  • -s args β€” SoapySDR Driver arguments. that's the whole thing. short and slay. πŸ’–
  • -A antenna β€” set input antenna to ANT (for SoapySDR input only, so don't try it elsewhere bestie). πŸ“‘
  • -T β€” disable TII decoding to reduce CPU usage. your laptop fan will thank you. 🧊

πŸ’€ Other options:

  • -t test_id β€” run test <test_id>. to understand what the tests actually do, please see source code. yes, the source code. we're not gatekeeping, we're just pointing you to the real ones. 😭
  • -h β€” display this help and exit. the classic. the icon. πŸ‘‘
  • -v β€” output version information and exit. also iconic. also quick. 🌟

✨ EXAMPLES ✨

okay so here's where it all comes together, look at her go:

welle-cli -c 10B -p GRRIF

receive 'GRRIF' on channel '10B' using the 'auto' driver, and play with ALSA. chef's kiss. πŸ”₯

welle-cli -f ./ofdm.iq -p GRRIF

read IQ file './ofdm.iq' (in u8 format) and play programme 'GRIFF' with ALSA. yes bestie we noticed. we're not gonna say anything. 🫢

welle-cli -f ./ofdm.iq -t 1

read IQ file './ofdm.iq' (in u8 format), and run test 1. boom. done. πŸ’…

welle-cli -c 10B -D

dump FIC and all programmes of channel 10B to files. all of them. every single one. πŸ“

welle-cli -c 10B -w 8000

enable web server on port 8000, decode programmes on channel 10B on demand (http://localhost:8000). on demand bestie. she's not doing extra work for free. πŸ’–

welle-cli -c 10B -Dw 8000

enable web server on port 8000, decode all programmes on channel 10B. no chill. all of them. 🌈

welle-cli -c 10B -C 1 -w 8000

enable web server on port 8000, decode programmes one by one in a carousel on channel 10B; welle-cli will switch every 10 seconds. a little rotation. a little drama. 🎠

welle-cli -c 10B -PC 1 -w 8000

enable web server on port 8000, decode programmes one by one in a carousel on channel 10B; welle-cli will switch once DLS and a slide were decoded, staying at most 80 seconds on a given programme. she waits for the moment. 🌸


πŸ’œ AUTHOR πŸ’œ

written by: Albrecht Lohofener & Matthias P. Braendli. other contributors live over here: <https://github.com/AlbrechtL/welle.io/blob/master/AUTHORS>


πŸ› REPORTING BUGS πŸ›

found a bug? do NOT suffer in silence, bestie. report bugs to: <https://github.com/AlbrechtL/welle.io/issues>


copyright Β© 2018 Matthias P. Braendli. copyright Β© 2017 Albrecht Lohofener.

license GPL-2.0-or-later: GNU General Public License v2.0 or later <https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html>


and that's the whole page, babe. πŸŽ€

this was welle-cli 2.4, from November 2021 β€” go forth, tune in, dump some FIC files, and slay. periodt. πŸ’–βœ¨πŸ¦‹