Slashdot Mirror


TCP/IP Enabled Lego Brick

An anonymous reader submits: "Yesterday, Olaf Christ announced that he has the world's first TCP/IP-enabled Lego brick that can be used as a web server. Imagine the possibilities of connecting your collection of Lego Mindstorms to the Internet! He has ported the extremely small uIP TCP/IP stack to the Lego Mindstorms platform. uIP has also been used to run a Commodore 64 as a web server, and is ported to the 8-bit Ataris and laptop keyboard microcontrollers."

63 of 266 comments (clear)

  1. I don't know what's got into my Mindstorms (TM) by Bonker · · Score: 3, Troll

    Ever since I added TCP/IP remote control capabilities to my Mindstorms web-cam robot, it's been trying to crawl up the intern's skirt...

    --
    The next Slashdot story will be ready soon, but subscribers can beat the rush and slashdot the links early!
  2. I ask you kindly by Lord+Omlette · · Score: 3, Funny

    mirror the poor brick before you slashdot it.

    --
    [o]_O
    1. Re:I ask you kindly by necio_online · · Score: 2, Informative

      Subject: true tcp/ip on the RCX
      From: "Olaf" Olaf Christ
      Newsgroups: lugnet.robotics.rcx.legos
      Date: Mon, 28 Jan 2002 20:16:29 GMT

      I ve got the very first and only tcp/ip enabled
      RCX in my room, cool, eh ?
      I will make a webpage at the end of the week to
      make the very first (rudimentary, but working)
      version available to the public.

      Right now, the tcp/ip stack is compiled into the kernel and the stack calls the usercode itself.

      The code to pass the incoming packets to the stack
      and to send packets to the pc is currently running as a simple userprogram. (*.lx).
      On the pc the lnpd runs a program that acts as a gateway between the tower and the pc.
      This gateway passes the packets coming from the tower to e.g. 192.168.0.1 and sends packets from 192.168.0.1 to the rcx.
      Right now the only thing you can do is pinging the RCX.
      But writing e.g. a very small webserver shouldnt be that big a deal ;-)
      Because, lnp is still alive i had to disable the
      sound support to free some RAM. Right now i got approx. 3 KB RAM left, still enough to do a lot of useful stuff. I think, the best way to fully integrate the tcp/ip-stack into the Legos-kernel would be replacing lnp by a tiny slip-driver. On the pc we could get rid of the lnpd.

      Olaf Christ

      --
      http://arhuaco.org/
  3. Great...we need another self-mobile http server by wynlyndd · · Score: 3, Funny

    Next thing you know they are going to gain sentinence and then we'll be stepping on them barefoot all the time.

    --
    "Dogs and cats, living together...it's mass hysteria!"
  4. Webstack by vlag · · Score: 3, Informative

    This TCPIP stack has severe problems with overflow. I am working on limiting code to fix the problem. More info and a link to follow in a later post.

    --
    Do you want to remove linux?
    1. Re:Webstack by autocracy · · Score: 3, Funny

      Oh no! My lego brick has been owned by 1337 br1x73r!

      --
      SIG: HUP
  5. First Slashdotted lego block too by Rhonwyn · · Score: 5, Funny

    Server temporarily unavailable due to heavy load.
    Please try again in a few minutes.

    We killed it. The first lego block to take a step into the grand open world of the web, and its slashdotted beyond any sense of hope.

    "Its worse than that, he's dead Jim!"

    1. Re:First Slashdotted lego block too by NevDull · · Score: 2, Funny

      Shoulda built a Beowulf cluster of 'em.

    2. Re:First Slashdotted lego block too by tunah · · Score: 2

      And a grendel, and grendel's mother, and a house for them to live in...

      --
      Free Java games for your phone: Tontie, Sokoban
  6. Next efforts? by Chagatai · · Score: 5, Funny
    Next thing you know, he overclocks his Duplos, builds a CPU case out of Lincoln Logs, and uses Tinkertoys as an eight-way USB hub....

    --
    --Chag
  7. Cruel, cruel timothy... by JordanH · · Score: 5, Funny
    Slashdotting a poor defenseless Commodore 64...

    Have you no shame?

    1. Re:Cruel, cruel timothy... by TClevenger · · Score: 2, Insightful

      Slashdotting a poor defenseless Commodore 64...

      Have you no shame?

      Kinda like sandblasting a soup cracker, isn't it?

    2. Re:Cruel, cruel timothy... by JonWan · · Score: 5, Funny

      Maybe they should upgrade to a Commodore 128. It runs at 2Mhz.

    3. Re:Cruel, cruel timothy... by sulli · · Score: 3, Funny

      Almost as cruel as slashdotting a Lego brick!

      --

      sulli
      RTFJ.
  8. Won't someone think of the children? by soulsteal · · Score: 5, Funny

    What happens when one of the bricks gets the Slashdot Effect? I forsee smoldering Lego structures and very frightened toddlers.

  9. Talk about clusters of webservers! by Seth+Finkelstein · · Score: 5, Funny
    I can't wait to see the experiments in configuration of server topologies.
    Maybe there should also be little sysadmin lego-people?

    Sig: What Happened To The Censorware Project (censorware.org)

    1. Re:Talk about clusters of webservers! by Anonymous Coward · · Score: 3, Funny

      Now is the time to finally switch over to IPv6. Every lego brick can't possibly have its own IPv4 address.

    2. Re:Talk about clusters of webservers! by lelitsch · · Score: 2, Funny

      Actually, this might give a new meaning to server topologies. The Lego space station topology, the Lego McDonalds topology, the Lego Sierpinsky sponge topology...

  10. slashdotted already by icejai · · Score: 5, Informative

    Hope he's not using that thing as his webserver though...

    Here's the text for those of you who reach a "server overload" message.

    Subject:
    true tcp/ip on the RCX

    From:
    "Olaf"
    Olaf Christ

    Newsgroups:
    lugnet.robotics.rcx.legos

    Date:
    Mon, 28 Jan 2002 20:16:29 GMT

    View Raw
    Message

    I ve got the very first and only tcp/ip enabled RCX in my room, cool, eh ?
    I will make a webpage at the end of the week to make the very first
    (rudimentary, but working) version available to the public.
    Right now, the tcp/ip stack is compiled into the kernel and the stack calls
    the usercode itself.
    The code to pass the incoming packets to the stack and to send packets to the
    pc is currently running as a simple userprogram. (*.lx).
    On the pc the lnpd runs a program that acts as a gateway between the tower
    and the pc.
    This gateway passes the packets coming from the tower to e.g. 192.168.0.1
    and sends packets from 192.168.0.1 to the rcx.
    Right now the only thing you can do is pinging the RCX.
    But writing e.g. a very small webserver shouldnt be that big a deal ;-)
    Because, lnp is still alive i had to disable the sound support to free some
    RAM.
    Right now i got approx. 3 KB RAM left, still enough to do a lot of useful
    stuff.
    I think, the best way to fully integrate the tcp/ip-stack into the
    Legos-kernel would be replacing lnp by a tiny slip-driver.
    On the pc we could get rid of the lnpd.

    Olaf Christ

  11. Uh Oh... by dupper · · Score: 2, Funny

    ...image the inevitable frustration forthcoming when your little brother brings down your high-traffic portal to build a dinosaur!

  12. In my day.. by glwtta · · Score: 2, Funny

    Lego was nothing but red, square, identical blocks. You could connect them together to build larger red, square blocks. That's the real man's Lego, damnit!

    --
    sic transit gloria mundi
  13. Here's an idea: by funkhauser · · Score: 5, Funny

    Hook your Lego Mindstorm box up to the internet, attach a small LCD screen, and program it to check autopr0n periodically. Then it could drive around and find you to alert you to freshly-posted pr0n! YES!

  14. Imagine your company's server room! by icejai · · Score: 2, Funny

    Bob: "Check out the new server cluster we got"
    John: "uh... it's a big lego model of natalie portman"

  15. Oh well by rice_burners_suck · · Score: 5, Insightful
    This is the most amazing technology I've ever heard of. Maybe in 5 or 10 years, the whole "Lego" technology would be developed so well that it will begin to apply to a lot of computer hardware in general, so that when you wish to construct a network, you'll pick out a bunch of "blocks", put them together much like toys, and power them up. Want a web server? Simply add this "brick" to your system. The bricks don't necessarily have to look like toys, but the idea is about the same: miniture little devices that perform one operation and perform it well, which can be combined in any numbers and any combination to produce some effect. The processing for any given task might automatically distribute itself across all the processors in the system that perform that operation.

    Oh well.

    1. Re:Oh well by krogoth · · Score: 2

      That's as unlikely as it is interesting, but it would be fun to have more choice when building a new computer than what parts you put in.

      --

      They that quote Benjamin Franklin on liberty and safety deserve neither.
    2. Re:Oh well by Com2Kid · · Score: 2

      Uh. . . Okaaay. . . Why not just download and run the appropriate program on your PC? I mean really, in ten years computers are going to be times more powerful then they are today and what we consider to be 'performance issues' today will be laughable.

      Ah, at least until Office 2010 comes out, heh. Who wants to bet that that little piss ant paper clip will be using real time ray tracing to draw his annoying arsed self on the screen by then? Eh? ;)

  16. Server by lavaforge · · Score: 4, Funny
    I can't wait until somebody exploits a bug in this:

    Bill, son, that's very nice, but why do all of your lego blocks spell out 1 0WNZ J00?

  17. Now they've done it... by Nick+Smith · · Score: 5, Funny

    Net-enabled lego-blocks, communicatng with each other... this is exactly how SkyNet got its start.

    Sure, it starts with cute rocketships, next thing you know there'll be Hunter-Killer 'bots the size of houses, made entirely of lego.

    To think that the end of humanity (until John Connor of course) should come out of Denmark...

  18. Ut Oh! by L-Wave · · Score: 2, Funny

    Now someone can *r00t* my lego's and command them to take over my home?!?!

    --
    I SURVIVED THE GREAT SLASHDOT BLACKOUT OF 2002!
    1. Re:Ut Oh! by sprong · · Score: 2, Funny

      Yup. And they'll have it build itself a long arm, and it'll keep flushing the toilet everytime you take a shower.

  19. Good idea... by tcc · · Score: 2

    In one submission, slashdot managed to /. all the major or high-profile uTCP/IP stack-powered web servers on the internet... I hope the C64 uServer was overclocked to a wh00ping 8mhz to handle all the requests :)

    --
    --- Metamoderating abusive downgraders since my 300th post.
  20. Waitaminute... by BoarderPhreak · · Score: 2

    Wasn't Yellow Dog's Brique first? No, waitaminute... Nevermind. :)

  21. Re:I'm not impressed... by Mr.+Neutron · · Score: 2
    I would tend to think that if Christ's as powerful as everyone says he is, he would've done this years ago.

    Not the Christ. Just His pesky little brother.

    --
    dinner: it's what's for beer
  22. DMCA or no DMCA ? by J.D.+Hogg · · Score: 4, Funny

    I have to be a party-pooper, but doesn't this violate the DMCA ? and to my knowledge, Lego doesn't much like people who rev-engineer their brick.

    1. Re:DMCA or no DMCA ? by Xerithane · · Score: 2

      LegOS. It isn't so much reverse engineering at this point, but a new operating system that you upload. Big difference. They can do whatever they want with LegOS. Besides, Lego doesn't care - they still sell hardware, and they are a hardware vendor. (Man times have changed since I was young.. to think I would ever say "Lego is a hardware vendor.")

      And your sig is wrong. It is an action, not a noun.

      --
      Dacels Jewelers can't be trusted.
  23. RAM HOG! by pnatural · · Score: 3, Insightful

    From his post:

    Right now i got approx. 3 KB RAM left, still enough to do a lot of useful
    stuff.


    Oh, lordie, if every programmer had that kind of attitude...

  24. We're on the right path by Vengeance_au · · Score: 2, Funny

    Mindstorms is a great start - now all we need is the same technology embedded in Nerf guns, and I've finally got an excuse for ALL the toys on my desk at work :)

  25. Look what I found! by Dog+and+Pony · · Score: 3, Funny

    A sneak-preview of the new server-racks.

  26. Scalability by roman_mir · · Score: 2, Funny

    For some reason I just imagined the future breed of software architects to talk about scalability of systems build from Lego bricks:

    -Our system is designed with scalability in mind, we use multitier software. Once the software is pushed to the limit, the scalability problems will be resolved in the hardware level. We will simply add more of these Lego blocks to our servers and there will be no problem.

    In related news, a large army of Robots build from lego pieces is taking over Manhatten. These robots are looting every toy store in the area and are using more Lego systems to build more robots.

  27. Re:This is sooo cool by mlk · · Score: 3, Funny

    Why do you need to be 10 yrs younger, just £150 lighter. ;)

    mlk (will have to dig out his mindstorms set)

    --
    Wow, I should not post when knackered.
  28. New ways to communicate. New ways to be creative! by cnladd · · Score: 5, Insightful

    As a fellow Mindstorms owner, this is incredibly interesting. I'm not that great of a builder myself - not compared with some of the folks I've seen on the 'net - but I'm looking into ways right now to get multiple bricks (RCX's) to communicate with each other.

    Now with the ability to pass TCP/IP traffic back and forth, that opens up even greater avenues of possibility for device communication. Not only can you create software that will allow you (or someone over the web) to interact with the devices directly, it's now easier to get the RCX's to interact with other devices. One great example would be to have a brick as a part of a security system. How about intergrating it with an X10 system? Turn your robot on with the flick of a wall switch.

    This just isn't a case of "let's port Apache to a Lego RCX brick!" The fact that these things are the brains of such a flexible system, with a wide variety of sensors, really opens up a great deal of possibility. More importantly, it allows for even more creativity and learning. After all, that's what these devices were made for, right?

    --

    --
    Welcome to the land of the easily amused...

  29. Sun's Jini? by atomray · · Score: 5, Interesting

    The concept of adding self-contained "bricks" of hardware/software to build functionality in a system of devices sounds a lot like the goals of Sun's Jini project, not necessarily limited to traditional computing applications though.

    --
    take your sig and shove it
    1. Re:Sun's Jini? by tommck · · Score: 2
      The concept of adding self-contained "bricks" of hardware/software to build functionality in a system of devices sounds a lot like the goals of Sun's Jini project...


      It also sounds a lot like the Borg!

      T

      --
      ---- It puts the lotion on its skin or else it gets the hose again. It does this whenever it's told.
  30. No more expensive Racks by 3ryon · · Score: 2

    No need to buy 42U racks for a couple thousand $. Just snap together and go!

  31. and in recent news by ryusen · · Score: 5, Funny

    Microsoft responding to this new market has announced an IIS enabled lego brick. The IIS Lego Brick mesures 8"x5"x1", features a special edition of WinXP for Lego, and is fully .net enabled.
    It's estimated reatil price is going to be $688.95 and will be available q3 of this year.
    Inside sources at Microsoft reveailed a new "bumb" schema for "MSLego(tm)" that adds new "features," but may make it incompatable with industry standard Lego "bumps."

    --

    I believe sex is highly over rated... unless it involves me
  32. Programming by building lego ? by tempmpi · · Score: 2

    Couldn't that be a very easy methode for programming ? Most humans can understand things they can touch much faster than abstract things like a source code file.
    Wouldn't building your programm by putting together some lego bricks, be something that could make programming understandable for many people ?

    --
    Jan
    1. Re:Programming by building lego ? by Andy_R · · Score: 2

      we could call it 'orientated object programming' :-)

      --
      A pizza of radius z and thickness a has a volume of pi z z a
  33. Imagine a Beowulf cluster of these... by fmaxwell · · Score: 5, Funny

    ... all stuck together.

  34. Im really groovin' on this Open Sources Technology by cpeterso · · Score: 2, Funny


    I know what you mean, I'm really groovin' on this Open Sources Technology!! I mean, I've been installing Linux 7.0 at work and It's really cool. With Open Sources I like to have the C+ code right on my home machine. I can look at it and pretend I am programming it. I sent some patches to to Linux, but he forget to get back to me.

  35. Re:New ways to communicate. New ways to be creativ by Jacek+Poplawski · · Score: 2, Informative

    One great example would be to have a brick as a part of a security system. How about intergrating it with an X10 system? Turn your robot on with the flick of a wall switch.

    It's already possible thanks to IR. Of course you need PC to read signals from RCX.

  36. Idea. by Night0wl · · Score: 2

    This gives me another item to tinker with when it comes to building a CD Changer out of Lego's.
    My brother has a small cd-r label, and so does a lot of burning. I've been contemplating how I could make a cd-changer to automate the most boring part of it all, changing cd's, one at a time.
    So far I've gotton it mostly figured out, except how to load a new cd from a spindle.
    It's either figure out the spindle issue, or find some way to preload cd's for easy swapping.

    Now, maybe I can have the cd-changer interact with the burning process. woot! "Hey, do I put in a cd now? NO, we're stuck!" at which point I activate some little lego man to wave his arms. heh.

    --
    Computational Madness in a round package.
  37. Nostalgic by British · · Score: 2

    WOw, seeing the C64 spit out bytes so slow reminds me of the BBS days. This is almost exactly like 2400 baud.

  38. This was used in Lord of the Rings by frohike · · Score: 2, Interesting

    No, this isn't a joke.. =)

    I haven't touched uIP myself, but we're using lwIP (its big brother) in KallistiOS, the DC hobbyist OS project. Adam sent this to me pretty recently and I thought it kicked ass beyond belief:

    lwIP will be used in the post-production of Lord of the Rings 2 and 3
    -Dan Potter

  39. Imagine... by Mignon · · Score: 2

    With one of those big green backplanes, Olaf could probably put together quite a cluster.

  40. Re:Absurd possibility by Legion303 · · Score: 2, Funny
    Not only that, but you could program it to make you hot grits.

    -Legion (watch this get modded down as a troll because some moderator can't read)

  41. Proxy firewalls and DMZ have more effect by billstewart · · Score: 2

    NAT / ipmasq / etc. are one approach to hiding large private address spaces behind small numbers of IP addresses, but they're not the only one. Another approach is proxy-type firewalls and DMZs. In a typical corporate network, to get to the web you use a proxy server (which also does some caching), and to send email you go through an SMTP server at the firewall, and to receive email you go to a corporate server which actually gets the mail from outside and either forwards it to your internal mail server or else provides the mailbox service itself. NAT can be useful if you want to run other protocols, and ftp can either be handled by NAT or by proxies.

    --

    Bill Stewart
    New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
  42. Poor Slashdotted Bricks by The+Dev · · Score: 2

    This is what they look like:

    horror.jpg.html

  43. lego webserver.. by Suppafly · · Score: 2

    Good thing they aren't hosting the story on the lego block webserver.. image how fast that would get slashdotted..

    and don't anyone bother with the "...imagine a ..."

  44. Additional information by adadun · · Score: 2

    Here is some technical information about this achievement.

    The "brain" in the Lego Mindstorms product family is the RCX; essentially a small microcontroller with an LCD display built into a Lego brick. It has connectors for sensors and motors as well as an infra-red port. The microcontroller is an Hitachi H8/3292 from the H8S/300 family. It has 32k RAM and a 16k ROM which hosts Lego firmware code.

    The microcontroller can be entirely reprogrammed, which turns the RCX into a small but powerful embedded computer. With 32k RAM, this is enough to run the open-source legOS operating system - an operating system written for the RCX Lego bricks. Olaf Christ has taken the uIP TCP/IP stack (which was originally written for this project) and incorporated it into the legOS system.

    IP packets are sent to and from the RCX over the IR link. The LNP protocol is used as a link layer protocol to deal with collision detection and link layer checksums.

    The main problem with the TCP/IP-enabled Lego bricks is that the IR port on the RCX only is capable of running 4800 bit/sec. Since that's even slower than most really old modems, a Lego web server is easily slashdotted by one user alone...

    While the uIP TCP/IP stack was originally written for this project it has since taken a life of its own and has not only been used to power good old C64s, but is also used in several embedded systems such as card-readers and other point-of-sale-type applications.

    I have personally been running Olaf Christ's TCP/IP code on an RCX and can confirm that it works. In fact, I have one sitting here and serving web pages right now. Sorry, I won't give out the IP address due to the slashdot effect...

  45. Re:Novelty... by JimPooley · · Score: 2

    It's a "Why the hell not?" culture.

    Well actually it's a "Let's do something completely pointless and then boast about it" culture.

    --

    "Information wants to be paid"
  46. Lego is WAY COOL on RCX-hacking... by OmniGeek · · Score: 2

    For those who don't pay much attention to Lego-ings-on, Lego has a VERY ENLIGHTENED attitude to Mindstorms hackers. They don't explicitly support RCX-hacking, but they definitely approve. Based on their statements to the press, they understand that RCX-hacking helps both the users and Lego. They *want* people to go nuts with the thing. (It's a great toy, and I love it; I just wish it had a port-extender for more sensors/actuators. Maybe a piggyback module that communicates with the RCX via the IR port?)

    There was an incident with the LegOS alternate operating system recently where Lego requested that the fellow change the name so as to not dilute Lego's trademark (see ./ story a while back), but Lego were extremely reasonable and polite about the whole thing. (In trademark law, they MUST defend the trademark or else lose it).

    As concerns DMCA, there's NO issue there, 'cause there's no attempt to prevent or control access to the brick's brains. Lego are the complete opposite of Sony in this regard.

    --

    "My strength is as the strength of ten men, for I am wired to the eyeballs on espresso."
  47. How about a Bluetooth brick? by KjetilK · · Score: 2
    I enjoyed Lego very much when I was a kid, and I think my children are going to enjoy it as well. I haven't got any Mindstorms stuff now, however, so I really don't know how it works.

    I also think this is great, but thinking about connecting to other devices, the IR builtin in RCX isn't that well suited for a robot running around without boundaries, is it?

    How about Bluetooth support? If they make a Bluetooth brick that can communicate with RCX on the robot, wouldn't that be better?

    --
    Employee of Inrupt, Project Release Manager and Community Manager for Solid
  48. An Idea by Martin+S. · · Score: 2

    This is tangentially similar to an idea I've been playing with for some time. My main problem is that as as S/W enginner I have little idea where to start, I was thinking PIC, but I'm really not sure. The idea would facilitate real large scale automation. Perhaps this could be the first 'open-hardware design' :-) However the main reason I'm raising this an attempt to invalidate any future patent.

    It's a TCP/IP/UDP trigger/switch. However the concept relies on being tiny, simple and cheap to produce, pence rather like the 555 timers we played with in school electronics. It needs to be a mass produced chip with a [very] low price point.

    The chip(s) must operate in two modes. Switch and Trigger.

    The trigger operates by producing a [multicast]packet contanining a unique GUID, when a specific input line is triggered dragged high(low).

    The switch operates the opposite way by dragging a line high(low) when it receives specific GUID, within a [multicast] packet.

    I'm thinking PIC(s) Would it be possible to implement a TCP/IP stack in PIC logic ?

    I'm thinking multicast packets with TTL:1, to keep everything withing the subnet.

    I'm thinking the IP equivalent of mecrcury/magnetic switches, relays etc for burglar/fire alarms, door switches, light switches, thermostatic switches, infact massive automation. It would then be possible to control just about any device via pretty much any IP enabled/connected computing device.

    Consider some applications.
    Switching Night Lights.
    Burglar/Fire Alarm switches.
    Light switches
    Thermostats

    See the potential ?

    What do you think ?

    Martin