datenklo(1)

πŸ“¦ version 0.0~git20251206.0c72677, in debian trixie, ubuntu questing, ubuntu resolute, ubuntu stonking

✨ datenklo(1) ✨

okay bestie, buckle up πŸŽ€ this is datenklo, a lil program from the General Commands Manual, section 1 (that's the "you type it in a terminal" section, iykyk). She does AM7910/AM7911 modem stuff over your sound card, and honestly? she ate. πŸ’…


🌸 NAME 🌸

datenklo β€” the docs live at http://osmocom-analog.eversberg.eu/docs/ πŸ¦‹


πŸ’– SYNOPSIS πŸ’–

datenklo [options] -M <mode>

that's it, that's the whole vibe. you give her some options and you gotta give her a mode with -M. periodt. ✨


🌈 OPTIONS 🌈

like, all of them. every single one. no skipping, bestie, we're doing this properly 🫢

  • -h, --help β€” shows you this help. that's it. that's the whole job. πŸ’€
  • --config [~/]<path to config file> β€” hand her a config file to use. if the path starts with ~/, then the path is at your home dir 🏠. every line in the config file is one option, and lowkey important: you must not give the - or -- in there! none. zero. don't do it. πŸ™ˆ
  • -v, --verbose <level> | <level>,<category>[,<category>[,...]] | list β€” the verbose situation is a whole spectrum, bestie.
    • use list to get a list of all levels and categories πŸ“‹
    • verbose level: just the digit of the debug level (default = '3') πŸ”’
    • verbose level+category: a level digit followed by one or more categories β†’ and if no category is specified, then all categories are selected. she's generous like that πŸ’œ
  • -v, --verbose date β€” shows the date along with the debug output πŸ“…βœ¨
  • -T, --am791x-type 7910 | 7911 β€” tell her which modem chip type you've got going on. (Default = 7911) πŸ”₯
  • -M, --mc <mode> β€” sets the mode setting of the AM7910/AM71911. use list to list all the modes πŸ‘‘ (also yes, you basically always need this one, see the synopsis, no cap)
  • -A, --auto-rts β€” automatically raises and drops the modem's RTS line for half duplex operation. TX data will be queued while a remote carrier is detected πŸŽ€
  • -B, --baudrate <RX rate> <TX rate> β€” the baud rate you give here overrides the baud rate that came from ioctl. and here's the spicy bit: a baud rate of <= 150 Bps for TX and/or RX will attach TX and/or RX to the back channel instead of the main channel πŸŒ€ (yes, this is the trick, bestie)
  • -D, --device β€” the device name. the prefix '/dev/ gets added automatically if you didn't give it. (default = '/dev/ttyDATENKLO0') πŸ”Œ
  • -S, --stereo β€” generates two devices πŸ‘―. one device connects to the left channel and the other to the right channel of the audio device. the device number in the device name automatically goes up by one. and you must also define the mode twice, like:
-M <mode> -M <mode>

both of them. don't forget the second one, she WILL be mad 😭

  • -a, --audio-device hw:<card>,<device> β€” sound card and device number (default = 'hw:0,0') πŸ”Š
  • -s, --samplerate <rate> β€” sample rate of the sound device (default = '48000') 🎡
  • -b, --buffer <ms> β€” how many milliseconds are processed in advance (default = '50') ⏱️
  • -l, --loopback <type> β€” does an audio loopback to test the modem πŸ§ͺ
    • type 1: audio from the transmitter is fed into the receiver (analog loopback) πŸ”
    • type 2: audio is crossed between two modem instances (use with -S) πŸ”€
  • --fast-math β€” uses a fast math approximation, for slow CPU / ARM based systems πŸ’βž‘οΈπŸ‡
  • --write-rx-wave <file> β€” writes the received audio to the given wave file πŸ“
  • --write-tx-wave <file> β€” writes the transmitted audio to the given wave file πŸ“
  • --read-rx-wave <file> β€” replaces the received audio with the given wave file πŸ“‚
  • --read-tx-wave <file> β€” replaces the transmitted audio with the given wave file πŸ“‚

that's the whole page, bestie. every flag, every default, every little detail β€” nothing left behind, we don't do that here 🫢 πŸ’– ✨ πŸŽ€

and for the cute lil sign-off: this page is datenklo(1), same name top and bottom, and yeah it's from the General Commands Manual β€” so if you ever forget what you read, just remember the footer said datenklo(1) and the header said datenklo(1) and it was all one glorious vibe πŸŒˆπŸ’… go forth and modem, queen πŸ‘‘