Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Technology

VNC Server for Toasters and Light-Switches 292

An anonymous reader submits: "How about using VNC to configure your toaster, microwave oven, or even your light-switches? Thanks to Adam Dunkels' micro-VNC server it is now possible to run a VNC server even on really small embedded 8-bit microcontrollers commonly found in such devices. The idea is that even low-cost devices that don't have a screen or graphics hardware could have a GUI, accessible over the network. To show that the server can run with very small amounts of memory, there is a demo server running on a Commodore 64. But the real question is: how would want to 'configure' their toasters using a GUI?"
This discussion has been archived. No new comments can be posted.

VNC Server for Toasters and Light-Switches

Comments Filter:
  • X-Server (Score:3, Interesting)

    by Maniakes ( 216039 ) on Tuesday July 30, 2002 @04:32PM (#3980749) Journal
    Wouldn't it make more sense to draw the gui on the client machine, rather than putting beefier hardware in the toaster so it can send you bitmaps?

    After all, your desktop machine will always have more computational ability than your toaster (the senient talking toaster from Red Dwarf notwithstanding).
  • by Etcetera ( 14711 ) on Tuesday July 30, 2002 @04:36PM (#3980794) Homepage

    Correct me if I'm wrong, but VNC is a screen-sharing or remote-control system, ne? On a small device where memory, processing time, and complexity is at a premium, why would you waste effort rasterizing a screen image so that VNC can ship it over.

    Wouldn't it be a lot easier to have a tiny HTTP server which sends out an HTML file and processes the results? This seems akin to someone scanning in a print-out of their email as an attachment instead of sending an email directly... =/

  • by pjrc ( 134994 ) <paul@pjrc.com> on Tuesday July 30, 2002 @04:53PM (#3980980) Homepage Journal
    I design products with 8-bit embedded processors. The typical scenario is a single chip with 2k to 16k of eprom/flash code memory and 64 to 1k of RAM. That's quite a bit smaller than 64k of ram in a C-64.

    The most popular 8-bit chips today are the 8051 (multi-source), AVR (atmel), PIC (microchip), and HC08/HC11 (motorola). Cost is usually the primary consideration, and projects with volumes of 20k/year and up, it makes a lot of sense to do some or all of the project in assembly language so you can get the code into a smaller chip that costs $1 less. Multiply that $1 by 20k (or whatever production volume is expected) per year over the life of the product.

    At the beginning of many projects, there's usually a list of "got to have" features, and "would be nice to have" features (as long as they don't add cost or significantly delay the product release). A good designer (and there are many) will ask a lot of questions about the actual application and make changes to the feature set that still meet the customer's needs (often times an improvement) but allow the code to be smaller, run at a slower speed (increase battery life or reduce the cost of the power supply circuitry), and use less RAM.

    It's a very different world from PC software. The 8051, PIC, AVR and HC08/11 are available in many different flavors with different mixes of built-in peripherals and different amounts of code and ram memory.... and an amazing amount of work goes into making VERY efficient code so it can fit in a less expensive chip. On top of that, most products that ship with those 8-bit chips ARE UNDER WARRANTY for years, and a bad bug in the firmware usually means replacing the product for everyone who's effected.

    I just can't see a VNC server on that "got to have" feature list, and I can't see it not increasing the cost enough to get quickly axe'd from the "nice to have" list. Even using an additional 128 or 256 bytes (yes, bytes, not Mbytes, not kbytes, but individual bytes) will almost certainly push a "normal" 8-bit microcontroller project up to a chip that costs $1 to $2 more. That's a lot of money when you go into production and start shipping thousands every month!!

  • by Quill_28 ( 553921 ) on Tuesday July 30, 2002 @05:11PM (#3981133) Journal
    Ok I have a friend who has something similiar to this. He can control all the lights in his house from his palm pilot. He also programs the lights with his palm. I know he had to do some custom coding but it is pretty neat maybe useful.

    btw it's a big house and he quite smart
  • Central Automation (Score:3, Interesting)

    by Oculus Habent ( 562837 ) <oculus.habent@gma i l . c om> on Tuesday July 30, 2002 @05:33PM (#3981423) Journal

    It would be best to have an "appliance server" that is capable of handling the communications to the devices and generating interfaces from standard libraries created for appliance control. Then we could have an extremely lightweight communications protocol for the appliances, as they would only have to go so far as to detail their features to the server, and it would construct an interface for them.

    This makes much more sense to me in the long run, as a central house server would be able to coordinate activities of numerous devices simultaneously with simple If/Then/Else statements. If you wanted coffee & toast in the morning, you could write something like this:

    if ( coffee.HasWater() && coffee.HasFilter() && coffee.HasCoffee() && coffee.HasPot() )
    {
    coffee.MakeCoffee();

    if ( toast.HasBread() )
    { toast.MakeToast(); }
    else
    { alarm.SetAlarm(-5,"n"); }
    }
    else
    {
    alarm.SetAlarm(-15,"n");
    }

    Beyond that, as appliances become more functional (refrigerators that know what's in them), a central system like this could also accept device notifications, telling you there is no milk or that the oven's timer went off.

  • by theLOUDroom ( 556455 ) on Tuesday July 30, 2002 @05:42PM (#3981573)
    Actually, I spent half of a summer working on a microcontrolled toaster.
    It has an 8Mhz Microchip PIC and 1K of RAM. The design intent was that you set the knob to the color toast you wanted and it always came out that color, no matter how recently/how much the toaster had been used. The thing even compensated for variations in line voltage. I think it's actually patented too. It looks like a normal 4 slot toaster though, so you could have used one and never even know it.
    BTW, I made a LOT of toast that summer.
  • Missing the point (Score:1, Interesting)

    by Anonymous Coward on Tuesday July 30, 2002 @06:14PM (#3981920)
    Almost all of you are missing the point. What you
    thing of as VNC is a bizarre proof-of-concept
    that rapidly overshadowed the original RFB
    (Remote Frame Buffer) protocol. RFB was designed
    for tiny things that needed a simple visual
    remote interface. There's a coordinate system
    and a set of events, and the compressed-bitmap
    facility makes it ABLE to act as a whole PC-Anywhere
    type of thing, but that is not what it's best at.

There are two ways to write error-free programs; only the third one works.

Working...