OT (?) Laptop as terminal

Hi,

I run a lot of headless machines. From time to time, a machine fails to boot to multiuser run level. So, I can't "talk" to it with my normal mechanisms.

Presently, I have a tiny (7" dia) LCD monitor and a similarly sized keyboard (perhaps 10" wide) that I drag out to coax the machine back to life.

[I have no desire to leave a keyboard/monitor attached to *every* machine -- hence "headless" -- nor can I use a KVM to "share the cost" of a monitor/keyboard]

Despite their small sizes, this is a royal PITA.

But, I frequently run across discarded laptops ("last year's model", "too slow for WIndows-du-jour", etc.)!

So, I'm wondering how painful it would be to gut one of these and convert it to a "LCD monitor + keyboard" (+ pointing device)? I figure the pointing device often is a USB/PS2 interface even though it lies entirely within the laptop case. I suspect the keyboard isn't

*quite* that easily partitioned -- but, scanning a keyboard and implementing a PS2/USB interface wouldn't be a difficult challenge.

The real issue is the display itself. It seems like each model has it's own particular interface (to the panel itself). Or, are these subsets/supersets of some common implementation? I.e., could I hack an LCD monitor controller to talk to one without lots of careful "matching"?

It seems like this would be a nice, low complexity "open source hardware" project. Laying out a board for "quantity one" is just ridiculous -- I can keep using the 7" monitor and keyboard. OTOH, laying out a board, keeping one (or three?) for myself and then letting others "assemble their own" seems like something worthwhile...

Comments?

--don

Reply to
D Yuniskis
Loading thread data ...

PS/2 mouse/keyboard can't be safely hot-plugged (meaning: if it does fry the motherboard, don't expect the warranty to cover it). USB requires getting the PC to act like a USB slave, and I've yet to find a simpler means of doing this than connecting a pair of PIC18F2550s back-to-back.

As for the display ... I'd just look for a video capture device that can handle VGA.

Also, when you say "fails to boot to multiuser run level", are you talking about Linux? You can redirect the console to a serial port (including a USB-serial converter), which is enough for any userspace issues (but not BIOS or early kernel messages).

Reply to
Nobody

Sorry, I think you may have missed my intent.

I am suggesting *gutting* the laptop. I.e., leave the LCD *panel*, CCFL's, inverter, "keyboard matrix" and "pointing device" (e.g., touchpad, trackball, nib, etc.).

The pointing device often is a stand-alone device repackaged into the laptop case -- with a PS/2 interface or USB interface talking to a PS/2 port/USB port on the "motherboard".

The inverter needs power and intensity/gating.

The keyboard matrix, I suspect, interfaces directly to some GPIO's on the motherboard. I.e., it is not practically a "stand-alone device" like the pointing device. But, interfacing to a switch array is a piece of cake (unless capacitive switches).

The LCD panel is usually a flex circuit interface. Maybe

20+ signals. It *isn't* (?) a stand-alone device (i.e., there is no "VGA connector" *inside* the laptop that the LCD effectively plugs into). Rather, it plugs directly into the video controller.

So, I was hoping to pull a controller out of an "LCD monitor". This has "VGA" (or DVI) on one end and the "20+ signal" LCD panel interface on the other. So, just run the VGA interface out to a connector at the rear of the laptop.

What I am unsure of is how "standard"/compatible/interchangeable the actual LCD panels (and controllers!) might be.

I'll have to start taking notes on laptops and monitors to see if there is some commonality.

Most boxes are *BSD, Solaris, etc. And, like you said, a serial console only helps if the "kernel" gets control -- if a drive isn't spinning up, a CMOS battery has died, some other device in the boot order is unexpectedly present (e.g., a CD in a drive), there is no way to get a clue to this.

So, the only surefire way of sorting out what's going on is to have a real monitor and keyboard.

Reply to
D Yuniskis

Hi Don,

LCD panels are fairly interchangeable. LCD controllers are practically extinct (the last monolithic which used to be made was the b69030).

In general, what you describe is the board I posted a photo of a few hours ago: (

formatting link
, the BGA at the left side is the b69030 ). On its bottom side it has a connector to which you connect an LVDS display. Or you connect a monitor to the VGA output. I am usually running it at 1280 x 1024 pixels with a monitor, used to run it on an 800 x 600 LCD some time ago. Just ATA though, but there still are some ATA drives and converter chips SATA ATA exist. My machine has a 160G drive at the moment.

While it may look like "not such a lot of work" which is true talking about the board, getting DPS ported on it and writing the ROM (aka BIOS) stuff took me about 6 months of hard work... :-).

Dimiter

------------------------------------------------------ Dimiter Popoff Transgalactic Instruments

formatting link

------------------------------------------------------

formatting link

Reply to
Didi

Hi Dimiter,

Has it warmed up there, yet? (we've been to 35C already... followed by an even> >> ....

Sorry, I mean the controller you tend to find in an LCD

*monitor*. I.e., take a laptop and gut it. Take the guts out of an LCD monitor and kludge them onto the LCD *panel* in the laptop. Then, a bit of "glue" to tie things together, buffer interfaces, etc. [I assume the "controllers" in LCD monitors will not be available to hobbyists -- tiny quantities. OTOH, I think folks can probably find a scrap LCD monitor to cannibalize!]

I think BGA's would be beyond most hobbyist's level of assembly capability. :<

Yes, this is what would, nowadays, be *on* the motherboard. I'm looking for something that will take the VGA output from a PC and convert it to the signals required by the LCD *panel*. I.e., exactly the sort of chip that you would find inside an LCD monitor.

*Everything* takes "too long"! :-/

--don

Reply to
D Yuniskis

Understandable, BTDTGTS..

Each one even from same manufacturer is different.

The keyboard issue would be checking all keyboards have the same scanning matrix layout from the usually FPC cable.

I have not yet come across a common connector scheme yet for the LCDs or for the cables from them, all have different size and shape connectors, a pain to get in small quantities.

Realistically you may have to use some cable assemblies that are PART built, sometimes available in small quantities that have LCD connector and pre-crimped wires on that connector end to open end.

Your problems are

1/ Layout of board would have to vary as the 3D shape of the insides of each laptop are different, let alone mounting and allowing for different keyboard retaining screws positions from back to front. Sometimes the main shape defining parts are the different positions of HDD, optical, keyboard, cpu and fan betwen models.

2/ You need to check all keyboards use same or small subset of connector sizes as well as scanning matrix.

3/ Ensure all laptops used only a small subset of connectors for their hopelfully fully working cable, which could be either side of the laptop with little slack.

4/ Electronics to convert whatever comes in to minimum of 640 x 480 startup subset, whatever the screen resolution, when more and more laptops are of the 1400 x 800 resolution or different multiples.

5/ Power each laptop not only has different power converters Mains to DC(ish), they have different sizes of connectors, the mounting point for these connectors is in different positions on different models. Your use of one point may interfere with structural points for the casing.

6/ What are you going to do with the holes on each model that is in different places for optical drive, SD card, USB, Ethernet etc..

7/ How many have you taken apart each is different and a right royal pain as most seem to be designed as use once and throw away disposable items.

Alternative solution, could you just use some of these laptops as headless systems with sceen off because lid is closed, then open them up to fix the issues.

This might be a cheaper and eaier solution.

--
Paul Carpenter          | paul@pcserviceselectronics.co.uk
    PC Services
 Timing Diagram Font
  GNU H8 - compiler & Renesas H8/H8S/H8 Tiny
 For those web sites you hate
Reply to
Paul

I get what you are asking about. I have no idea if that is practical. I assume you are talking about a one off so that you can carry it around easily rather than lugging a monitor, keyboard and mouse with you.

What might be easier is to rig up a case with a standard monitor, keyboard and mouse inside. You could use a briefcase to hold all of this. With a little modification the front of the case could be cut out so that you can use the keyboard without removing it and mount the monitor in the lid so that it swings up into view when you open it. You would need to add a strap or other clasp since the ones that came with the case are now holding the cutout piece of the front edge to the lid.

Some time back I was going to try to mount the guts of a desktop PC in a briefcase. I never completed the design, but it is practical. Now that ITX and other very small form factors are available it would be even easier to do. But a downside is that laptops have broken the $400 barrier so there is much less incentive to do it. Of course you get a much more powerful machine for $400 this way and it is upgradable rather than being disposable. The main reason I wanted to design a briefcase PC is so I could get a monitor larger than 17".

Rick

Reply to
rickman

Very!

Just make sure the laptop is in working order, install RealVNC and buy a

*HARDWARE* KVMVNC server - e.g:
--
Ian Malcolm.   London, ENGLAND.  (NEWSGROUP REPLY PREFERRED)
ianm[at]the[dash]malcolms[dot]freeserve[dot]co[dot]uk
[at]=@, [dash]=- & [dot]=. *Warning* HTML & >32K emails --> NUL:
Reply to
IanM

Yes, you would likely need a custom board for each version of laptop, just to rewire different connectors.

Not really, I do that all the time.

That should not be too difficult, just software timings. A controller should be able to output between 640x480 upto 800x600 (with enough ram). Most bios run in less than 800x600 anyway. You can probably run in 16 colors mode, if you don't have enough ram. The PIC24F256DA206 (96K ram) should be able to generate 800x600 in 64K colors. There are enough I/Os to handle keyboard/mouse as well.

Reply to
linnix

It sounds like you're working on embedded PC's, and you really mean "laptop as monitor-and-keyboard". If you really mean "Laptop as terminal", then just get a laptop, put an OS on it that'll function well with it, and put a decent serial program on it.

Then enjoy.

I wonder if anyone makes a good embedded PC board whose BIOS outputs on serial? That'd be an ideal solution for an embedded Linux system, even if Windows* sucks large eggs when it comes to any sensible means of talking to it when it's semi-dead.

  • Note that, no matter how it sounds here, I'm not putting Windows above Linux as a general embedded OS -- just mentioning that in this one respect, Linux is definitely better.
--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Do you need to implement control loops in software?
"Applied Control Theory for Embedded Systems" was written for you.
See details at http://www.wescottdesign.com/actfes/actfes.html
Reply to
Tim Wescott

Actually, I run a couple of Windows 2008 systems here: that is supposed to have a GUI-less mode for running from a serial console. I can't say I've ever played with it though: a command-line only Windows install would be barely recognisable as Windows, unlike Unix where a shell prompt is a shell prompt no matter where it is displayed.

--
Andrew Smallshaw
andrews@sdf.lonestar.org
Reply to
Andrew Smallshaw

Reprogram the bios to use USB I/Os, then hook up a USB smartphone/ tablet to talk to it. No hardware change necessary.

Reply to
linnix

e

Most startup problems get stuck at the bios, before any OS is loaded.

Reply to
linnix

This comes up frequently on a broad range of newsgroups - ISTR it came up here sometime last year. The general response is "No, it's completely impossible". With the greater skill set of the average poster here nothing is necessarily impossible but I'd think it still falls in to the "Guess how many hours and dollars it is going to take, add a couple of zeroes to each, then forget the whole idea" category.

There is a commercial alternative to do what you want in peripheral form:

formatting link
IMHO that has a fairly steep price tag for what it is but it must still going to be cheaper than attempting to sort out a solution yourself.

--
Andrew Smallshaw
andrews@sdf.lonestar.org
Reply to
Andrew Smallshaw

That comes down ultimately to motherboard selection: certain versions of AMI BIOS are able to make use of a serial console.

--
Andrew Smallshaw
andrews@sdf.lonestar.org
Reply to
Andrew Smallshaw

Seems VNC is really taking off - realVNC being indeed the best client I have seen so far (if I have any wishes about it at all they are sort of "keep it unchanged" :-) ).

I also moved this way some time ago, first with the netmca-2 and recently with the netmca-3 (

formatting link
).

I already saw a smartphone which nearly got connected :D (that is it had some vnc client but would not work with our device, had no chance to investigate why).

Dimiter

------------------------------------------------------ Dimiter Popoff Transgalactic Instruments

formatting link

------------------------------------------------------

formatting link

Reply to
Didi

Hi Don, no, things are cooler than normal here (10-15C during the day,

2-10 during the night). Hopefully the trees will survive this night, they are about to blossom - some have begun - and we may have below 0C...
Reply to
Didi

....

It would be difficult for a PIC to use his stated aim of taking the VGA o/p of an existing computer digitising it and interfacing to any LCD on any old laptop in real, real time whatever the LCD is. Then you haveto decide how you re-time the buffered digitised video at BIOS level of 640 x 480 as one of -

640 x 480 box in a corner of higher res screen at higher resolution

centered 640 x 480 window on screen

Stretch potential 640 x 480 across the resolution of the screen.

If not at BIOS level determine the timings and do similar as above even potentially scaling DOWN input to fit output screen.

To use across almost any old laptop requires a lot of work to do this preferably in PLD/FPGA and memory and a selection of drivers for LVDS, TMDS and variants including alternate pixel drives.

This needs more than 96k of RAM.

--
Paul Carpenter          | paul@pcserviceselectronics.co.uk
    PC Services
 Timing Diagram Font
  GNU H8 - compiler & Renesas H8/H8S/H8 Tiny
 For those web sites you hate
Reply to
Paul

800x600 mono requires 60K. Certainly doable with 96K ram. Just re-output the same res, no need to change it.
Reply to
linnix

Yes. But, fundamentally, the subsystems in question are very similar. E.g., (as you mention below) the keyboard matrix might be arranged differently from one to another. But, they are still "keys" and a core subset exists among them. It's not like the difference between a "keyboard" and a "virtual keyboard drawn on a screen".

Likewise for the display panel.

No. Just write your scanner to allow key "attributes" to be extracted from a table. A hobbyist could be trusted to:

- note the legend on a particular keycap

- press that key

- make a note of the "key number" displayed by a test utility

- lather, rinse, repeat

- type these legends into an ordered table in the code...

I would envision just having an assortment of connectors on the board and you plug into whichever is appropriate, mechanically. Then, *hope* for some commonality *electrically* and/or adjust for that with jumpers or programmable logic. The signals to the panel are digital (?)...

You don't care about the HDD, optical drive, CPU, fan, etc. They have all been removed (exercise left for the student). As far as mounting holes:

- Connect stuff to board

- situate board conveniently within the case

- using a marking pen, transfer position of mounting holes onto case

- disconnect cables, remove board

- drill holes where marked...

See above... and above *that*!

Huh?

The "controllers" in most LCD monitors already do this. That's the point of this sort of approach -- don't spend time designing electronics, just take stuff that already exists for this purpose and "repackage" it.

This is easy to workaround.

1) use a panel mount connector 2) use something other than a "DC power barrel connector" 3) route wires from power pack through hole in case; solder to PCB etc.

Power is relatively benign so it can be handled more flexibly.

That's up to "whomever" owns the laptop in question. Leave the connectors in place (e.g., use a Dremel to cut away all of the motherboard *except* the connectors); remove the guts and glue something over the openings; leave the openings as gaping holes; etc.

This isn't something to *sell*.

I've probably repaired 50 laptops and disassembled 200+. Note that the repairs had to "look nice" afterwards. The box in question just has to "not fall apart". I.e., you could epoxy the thing back together and just resign yourself to the fact that if it ever fails, you'll have to violently disassemble it (to extract the guts for transplantation to another laptop).

Most laptops -- especially the sort that you would find readily discarded -- have no balls. Slow disks, etc. Beyond a PCMCIA slot, how many have anything other than "generic" (or possibly "consumer") I/O's? Do I sit a laptop atop a RAID array with some combination of semi-external PCMCIA/USB cards/dongles that connect to the array *and* the Gb network? Where do I plug in my B-size (SCSI) flatbed scanner? Or the film scanners? etc.

The headless machines are fine, "as is". The problem is their display+keyboard.

Reply to
D Yuniskis

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.