[GreenKeys] Model 15 Keyboard

Harold Hallikainen harold at w6iwi.org
Fri Feb 28 11:37:49 EST 2025


On Fri, February 28, 2025 5:25 am, Nick England wrote:
> Note. I understand that a 7.42 (60 wpm) printer will copy a 7.00 (65 wpm)
> character OK (with a little range adjustment) because the main shaft
> actually turns faster than one rotation per character.
>

This makes sense to me, and without any range adjustment. Here's my
understanding of it (and I look forward to corrections). This milliseconds
below are for 45.45 baud.

Beginning of start bit. Selector magnet releases, and shaft starts rotating.

33 ms later (the center of the least significant bit), the bit is sampled.
There are 11 ms from the beginning of the start bit to the middle of the
start bit, then 22 ms from the middle of the start bit to the middle of
the least significant bit (bit 0). This 31 ms is what the range finder
adjusts by determining where the shaft stops during a stop bit (thus how
far it has to rotate until the first bit is sampled).

22 ms later, the next bit (bit 1) is sampled.

22 ms later, the next bit (bit 2) is sampled.

22 ms later, the next bit (bit 3) is sampled.

22 ms later, the next bit (bit 4) is sampled.

22 ms later, the stop bit is sampled. This is one bit time from the middle
of the previous bit (bit 4). If we are in a mark condition, the shaft
stops rotating. If the data coming in is 7.00, we are 11 ms into the stop
bit, and 11 ms remain. If the data coming in is 7.42, we are 11 ms into
the stop bit, and 20 ms remain. The beginning of the start bit of the next
character gets the shaft rotating again.

For 45.45 baud, the bits are 22 ms long, and we sample in the middle of
the bit time. The range finder adjusts that sample time by stopping the
shaft rotation at a position determined by the range finder when the stop
bit is sampled. When the beginning of the start bit is detected, the shaft
as more or less rotation required to get to where the first bit is
sampled.

We want to sample in the center of the bit time to allow for variation in
the timing of the edges of the bits due to signal distortion. With the
sampling centered in the bit, the machine can tolerate more signal
distortion.

Electronic or software UARTs have an advantage over the mechanical UART in
a Teletype in that they resample the start bit at the middle of the start
bit time (11 ms after the mark to space transition at the beginning of the
start bit). If the center of the start bit is mark instead of the expected
space, the character is abandoned on the assumption it was a noise glitch
on the line. A mechanical UART, however, does not have a way to abandon a
character on a false start bit, so it just continues on and prints a
garbage character.

The transmission of the 31 ms stop bit is interesting. It MAY allow an out
of sync printer to get back into sync more quickly than if the stop bit
were only 22 ms long.

Some electronic UARTs sample multiple times during a bit and decide
whether the bit is a mark or space based on whether the majority of the
samples were mark or space. This is supposed to reject a noise spike in
the middle of a bit. I'm not convinced this is worth the effort. If there
is a low pass filter ahead of the data slicer in the demodulator, the
output of the filter is already a representation of where the data was for
the majority of the bit time. If there is a noise glitch in the middle of
a bit, the filter output cannot move fast enough to pass the glitch
through to the output. In my software UARTs, I just sample in the middle
of the bit (and I do include false start bit rejection).

Note - spellcheck wants to change ms (milliseconds) to Ms (megaseconds). I
think I caught all the instances of it messing things up, but I may have
missed some.

Harold
https://w6iwi.org



-- 
Not sent from an iPhone.


More information about the GreenKeys mailing list