Touchscreen
 

Object

The  aim is to have a touch screen that will wall-mount in my house and interface to the home automation system. There's existing conduit and cat-5 cabling run to a whole in the wall waiting for it, so there are some constraints.


It must have an ethernet interface (WiFi is a poor second as it's not as reliable). 

It must draw minimal power (I can't have a wall-wart powering it, so it must use little enough power that I can feed it via the spare pairs in the cat-5 cable).

It must be usable with finger touch (i.e. any active digitizer is out as these require pens or stylus).

It must be fairly light weight (I need to attach it to the wall, and would like to avoid needing to use structural steel to reinforce the wall).

 

It would  be nice if it had local flash storage, so it could run independently, and thus serve as brains for the home automation. 

It would be nice if it was fan-less so it was quiet.

It would be nice if it was powerful enough to run X, a browser and webserver so I can do the UI easily.


Update 2008-Oct

 This is now a finished project. I used a  TS-TPC-7390 which cost < $USD500, runs linux, and draws fairly small amounts of power.


I used the spare pairs on a cat-5 cable to run power + ethernet. It draws a small enough amount of current that this is feasible. I mounted it in an enclosure and on the wall, and it's working very well.


I write a pygtk application to actually do all the display work (running as an X application).

Major options.

Actual Touch screen tablet computer.

There's a number of these around, but none are very good for what I'm looking for. 

 

These are actual tablet PCs, they're suitable size and weight, they have an ethernet port, but

a) They're insanely expensive (Motion computing, ~ $3000)

b) They use an active digitizer touch screen, aka a pen, aka doesn't work with a finger!

c) They're one of the crappy twist laptops that you can't detach the keyboard from, giving them crazy weight, thickness and price. or

d) All of the above.


Wait! I found one. The TS-7390.

Cheap Laptop with after market touch screen.

Base assumption is to fit touchscreen to an laptop, and then hack the hardware until it's wall mountable. This will likely involve making some sort of case (fibreglass over mould?) to keep it pretty. Tossing the keyboard, track pad, hard disk, wifi card, and battery should reduce the weight and help the power draw.

 

Options here are:

 

The EEE PC 700 (~$400) with a suitable touch screen off e-bay (~ $70 ).  But you end up with a 7" touch screen, which is on the small side.


The EEE PC 900 (~ $650) with a 8.9" touch screen off e-bay (~ $70).  Total price over $700! OTOH, it's very close to a turn-key solution which many people have apparently done. Note that 900 is anticipated to drop in price once the 901 is released.


A cheap DELL with touch screen. Dell do a laptop for ~ $AUD650 with a 12.1" screen, or a $AUD700 with a 15.4" widescreen.  It's difficult to find a suitable touchscreen to match the widescreen format of the 15.4" and the 12.1" appears to be just rare as hell.  It's also getting up there in price given that it still needs a lot of hardware hacking to turn it into something wall mountable.

 

There seems to be a  large number of upcoming cheap laptops with a 8.9" 1024x600 screen. I.e. MSI Wind, Dell-E, Acer Aspire One, Via OpenBook, HP 2133. Many of these haven't actually shipped yet though.


The Dell-E classic looks very nice, with 4GB flash, ethernet, 8.9" screen, 512Meg RAM, and ~$US299 price point. Nice! But no confirmed ship date yet. August 2008 is rumoured.



Put together SBC with LCD display and touch screen.

Take the NGW100 SBC (~$85) and add a suitable LCD display to it, and touch screen. The NGW100 has a built in LCD controller, but it's limited the resolution is can drive, and it doesn't have a USB port to easily interface to the touch screen. And it's going to take a lot of hardware hacking. It also requires finding a suitable LCD panel which is harder than it sounds. Anything that's not a replacement part for a laptop is insanely expensive, and replacement parts for laptops are still very expensive.

It would also take a lot of hardware hacking as the case and bezel would need to be done from scratch.

It would also take a fair bit of electronics including interface to the touch screen, power supply for the LCD, and glue between the SBC and the LCD.

It would also take a fair bit of software, as the 32Meg RAM on the SBC is a little too small to run both X and a kiosk-mode browser for the UI.

 

The NGW100 is pretty much limited to about 640x480 @ 16 bits.

 

The Beagleboard (based on the OMAP35 cpu family from TI) will handle a higher resolution, but it outputs a DVI-D rather than parallel LCD interface so the panels may be harder to interface to.

 

Aside: There's basically 2 or 3 ways to talk to an LCD. Some want a bus, typically 12 to 24 bits wide, plus lines for HSYNC and VSYNC plus a clock. Many smaller LCD (2" to 4" range) use this sort of interface.


The next step up is to use what's called LVDS. This is basically a sync serial interface that runs a much higher clock rate over differential serial pairs. There's a trivial protocol that runs on this that has the data format for each pixel. Note that LVDS is simply a way of doing high data rates on unconditioned pairs; The maybe-sorta-proper term is FlatLink but that's a trademark, so everyone calls it LVDS (Which is the same as calling 10 gig ethernet a serial transmittion protocol).


The next step up is DVI and similar ilk. These use TMDS protocol on 3 or 4 LVDS pairs. It generally needs to be decoded back to FlatPack or a bus to drive the actual LCD controller.


Places like http://www.screentekinc.com will sell LCD panels up to about 17" for about $300 plus $40 shipping (all USD). The interface will be relatively undocumented though unless you can find the exact manufacturer part number. For example, http://www.priorityelectronics.com/dell/qd14xl20.htm lists the actual part numbers, and googling may find the data sheet. Like looking at http://www.beyondinfinite.com/library.html for example.


Poking around in here, many panels seem to have an LVDS input, with an external inverter required to drive the backlight. 600Volts RMS! Yum!


It's not out of the question to drive one of these with the NGW100. The AVR can basically handle around a 40MHz dot clock (ok, if you overclock the AVR to 160Mhz it can...). Which is about 800x600 @ 16-bit. And there's a 12.1" 800x600 panel there that's cheap (LT121S1-105) at ~ $US115.

 

And http://www.njytouch.com will sample 12.1" and 15" touch screens in 5-wire resistive for less than $US50 each plus shipping.  (NJY-1210-IN-W5R-A and NJY-1510-IN-W5R-B)


It does need an LVDS transmitter (something like the TI SN65LVDS301 which is way overkill but I found it quickly) so a daughterboard needs to be built. And doing it in 2 layers won't be fun! The panel draws nearly 7 watts! (1 watt for panel, 6 watts for backlight) so it can't piggyback off the NGW100 power supply. But it's vaguely possible. Would come to around $100 in parts and PCB, about $160 for panel (inc shipping), about $80 for a 5-wire touch screen. Which is totally reasonable (say about $400 all up) for a 12.1" touch panel computer. But that LVDS transmitter will be a serious bear to layout at 8 mil traces and spaces on a 2 layer board. All those transmittion lines!



Purpose built wall mount computer.

Tend to be all industrial, and insanely expensive. $6000 for a pentium-II power board, 100mm thick. Umm, I don't think so. Seriously, who buys that crap!?


Touch screen monitor with PC attached.

The touch screens seem to be very expensive, out of all proportion. They also seem bulky and heavy. And the requirement to add a PC as well starts making the overall package bulky and heavy. And expensive. And a serious power pig. Given that I can get a 15" panel that's got a big 5 watt power draw, WTF would a 15" touch screen monitor draw 60 watts!?