I started by replacing the modem with a trusty GPS, so
- I have a continuous flow of data
- with a checksum (GPS lines are checksumed)
- from a device that I know is working.
By counting the checksum errors, I have a huge number of them => this is not the modem, at least not alone, nor a problem with floating input.
By reading the TX line with a small oscilloscope, I can see the signal is very noisy.
I now power both the GPS and the Teensy from the same source: the Teensy as a 3.3v output line which I’m using to power the GPS => everything is ok.
So the problem was that, by powering the two devices from two different sources, they got different 0 volt levels, making the signal value unpredictable.
I tried again with different power sources, but by linking the two 0 volt lines together. I can now see on the oscilloscope that I got I nice square signal, but the serial data are corrupted from the uC point of view, so I’ll need to investigate this part further.
For the balloon, this is not a problem, since everything will be powered from the same source. This isn’t done for the Teensy yet, because I need a USB cable that I can salvage and that I haven’t yet.