On Sun, Nov 13, 2022 at 9:54 AM Robin Downs via cctalk <cctalk@classiccmp.org> wrote: > > Hi, > Actually, I built exactly this many years ago (1990s) to operate a cash draw > for dumb terminals on Unix systems, used on counters as point of sale > devices... > > The existing solution used a processor, ram, rom, double sided board etc and > was too expensive, so I designed a replacement with a real UART and a finite > state machine consisting of a EPROM and 8 bit latch that simply monitored the > RS232 data passively and when the appropriate character sequence was matched, > it triggered the solenoid to open the cash draw.
I am now thinking of totally crazy ways to detect a serial character. OK, a Model 33 Teletype with the right option in the stunt box is trivial. One odd idea is to detect the start bit and then generate the chracter bit-serially at the right baud rate. XOR that with the bitstream. Start with a flag ff set, at the middle of each bit-time, clear the flag if the bitstream and generated bit differ. At the end of the character time if the flag is still set, it's a match, Has the advantage of only needing a single-bit comparison not 7 or 8. > > It decoded a long 14 character code sequence easily and reliably and used 5 > chips in total on a smaller single sided board. > > Nowadays, a small microcontroller is the obvious way to go for cost and ease > of development. Cost, probably. Ease of development, it depends on who you are. I reckon I could solder up a suitable circuit using TTL only (i.e. not using a dumb UART which would simplify things a lot) in less time that it would take me to write the firmware. I am not a programmer. I tried the Arduino boards once and got fed up with a lack of proper printable documentation, no formal language specification, etc. -tony