Hacker News new | ask | show | jobs
by nateguchi 1061 days ago
Can you give some details on the hardware? What was the image capture device?
3 comments

Oh, the video capture device: because we had everything on analog CCTV, I had two analog TV tuner video capture cards in the server. Plain old 640x480 black and white analog video. When someone pressed the screen capture button on a Cocktail Console, I changed the channel on the video capture card to the appropriate channel, did a screen grab, and dumped the file in a folder on the server. People pressed it infrequently enough that two cards were fine to handle all the volume.

Every day I'd create a new mm-dd-yyyy folder for images to go to, and the Remote web site had a calendar on it. You could go to the site, click on the night you were there, see all the images captured by all people that night, and save your images if you felt like it.

Do those images still live on anywhere? Looks like the original viewer has since been taken down
I don’t think so. The Wayback Machine had some at one point but I haven’t kept up with it.
Yep! First, here’s a video from the guy who developed all the hardware, Leo Fernekes. (He runs a great YouTube channel called Leo’s Bag of Tricks all about electronics and neat stuff you can do. Leo’s a genius.) Lots of details in here.

https://youtu.be/3i3db-QgHYE

I love Leo's videos. Really top notch YouTube content.
The Cocktail Consoles (as we called them) were all custom hardware. Everything was designed to be rock-solid both physically (bars are full of drunk people and liquids) and operationally (everything had to Just Work). Leo designed a core “motherboard” which was a PIC microcontroller (I forget the exact model) that did five main things: serial I/O for the buttons and joystick; serial I/O for the attached TV tuner; serial I/O for the attached pan-tilt video camera; audio from the telephone handset; and then multiplexing all of that serial I/O and sending it over serial to a central server (which I wrote — in Perl!) which then controlled all the Cocktail Consoles in the bar.

We used black and white cameras because they were both cheaper and also had much better sensitivity to low-light conditions (this has changed somewhat — but not entirely — in 20+ years) and black and white tube TVs because they were cheap. (This part was actually really dangerous — tube TVs hold enormous charges after they’ve been switched off, enough to kill someone, and we had the guts exposed on the insides of the Cocktail Consoles. Had to be very careful). We used public telephone handsets for the audio because of their durability, and video game buttons and joysticks so you could try very hard, and generally fail, to damage them.

The TV's, cameras, and telephone audio were all connected over an analog CCTV system. The camera was video source and the handset's microphone was the audio source for a given channel. The TV could be tuned to any channel, and was thus the video output device, and the handset's speaker was tied to the same channel. Thus, if you tuned to any camera, you would see and hear whatever was going on at that console, but not the other way around, so it was rather voyeuristic. If TV A was tuned to camera B, and TV B was tuned to camera A, that established a bi-directional link, which meant you could see and converse with the other person.

The serial data from all the microcontrollers were sent over serial-to-CAT5 converters, so the entire place was wired for Ethernet, but it was plain old serial over the wire. We then had these serial cards in a Dell server on the other end, which presented as roughly 100 serial ports on the server.

This was where I had to do a lot of learning. I was a good IP programmer, but I had to reach back into the depths of the kernel and learn all about TTYs and switch() and lots of other stuff that even in 2000 was sort of forgotten. It took me forever to find any good documentation on how to handle that many serial ports in a non-blocking way.

I kept asking Leo to just put a cheap Intel box in each machine and do it all over regular Ethernet, but he (rightly) kept insisting on this low-cost, rock-solid approach. Today the calculus would undoubtedly be different — you would do everything over IP — but back then Leo had a level of foresight I still admire.

All this was done in Manhattan itself?
Yep. 3rd and Bowery, before CBGB closed and the East Village went from the bohemian hipster world of RENT to the expensive place it is today. The Bowery had just barely changed from “don’t go there ever” to “oh, cool!”