You’re probably decoding noise or in the middle of the bit stream.
What you’re looking for is called “preamble.” That’s a sequence of bits used to synchronize the decoder (marks the start of data, useful in modulation schemes for clock recovery, and a few other things).
Looking at minimodem’s manual, try using the sync-byte option. Prepend your tar stream with a string of bytes, like 0x01, before sending to minimodem for encoding. Then use the sync code option to mark the start of the tar bit stream. This is as simple as cat preamble.bin myfiles.tar | minimodem --tx …
Other things to consider: start small with 300 baud BFSK before speeding up. Test with wav files before attempting physical tape or speakers and a microphone.
Mozilla invented Rust to rewrite the rendering engine. Read the history of Servo and bring a tissue to cry into.