Follow Slashdot blog updates by subscribing to our blog RSS feed

 



Forgot your password?
typodupeerror
×
Toys

TCP/IP Enabled Lego Brick 266

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."
This discussion has been archived. No new comments can be posted.

TCP/IP Enabled Lego Brick

Comments Filter:
  • by Bonker ( 243350 ) on Tuesday January 29, 2002 @06:14PM (#2921923)
    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...
  • by Lord Omlette ( 124579 ) on Tuesday January 29, 2002 @06:14PM (#2921924) Homepage
    mirror the poor brick before you slashdot it.
    • Late...

      Server temporarily unavailable due to heavy load.

      Please try again in a few minutes.

      uIP has also been used to run a Commodore 64 as a web server

      I suggest he upgrade that server.

    • 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
  • Very Cool (Score:1, Offtopic)

    by LT4Ryan ( 178006 )
    imagine the possibilites....and all the new worms on the way :)
  • Next thing you know they are going to gain sentinence and then we'll be stepping on them barefoot all the time.
  • Webstack (Score:3, Informative)

    by vlag ( 552656 ) on Tuesday January 29, 2002 @06:16PM (#2921939) Homepage
    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.
  • This looks kind of shady. I could go into a newsgroup and post that I had done, well... anything, and then come here and submit the story as an anonymous coward?

    I thought someone validated these stories before posting them.
    • This looks kind of shady. I could go into a newsgroup and post that I had done, well... anything, and then come here and submit the story as an anonymous coward?

      Actually, I did this once. Years ago, I posted to comp.os.minix about how I created a completely "free" operating system. Anyone could download it, and change it to their heart's content.

      I also predicted that it would one day replace windows, because after all, who would use an OS they had to pay for?'

      Of course, no one believed me.
    • You're new here, aren't you?
  • by Rhonwyn ( 49658 ) on Tuesday January 29, 2002 @06:18PM (#2921955)
    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!"

  • I'm not impressed.

    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!

    I would tend to think that if Christ's as powerful as everyone says he is, he would've done this years ago.
  • by Chagatai ( 524580 ) on Tuesday January 29, 2002 @06:18PM (#2921961) Homepage
    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....

  • a beowu^H^H^H^H^Hlego city of these!!!
  • by JordanH ( 75307 ) on Tuesday January 29, 2002 @06:18PM (#2921964) Homepage Journal
    Slashdotting a poor defenseless Commodore 64...

    Have you no shame?


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

  • Novelty... (Score:1, Interesting)

    Yeah, so it's really cool that he was able to port a TCP/IP stack to the Mindstorms RCX. But isn't this just a novelty act?
  • by Seth Finkelstein ( 90154 ) on Tuesday January 29, 2002 @06:19PM (#2921976) Homepage Journal
    I can't wait to see the experiments in configuration of server topologies [openp2p.com].
    Maybe there should also be little sysadmin lego-people?

    Sig: What Happened To The Censorware Project (censorware.org) [sethf.com]

  • by Gheesh ( 191858 )
    With IPv4 address space getting tighter every day, why not develop a small IPv6 stack so we can (at last) deploy thousands of gadgets without worrying about numbers and without resorting to ugly, nasty NATs?
  • slashdotted already (Score:5, Informative)

    by icejai ( 214906 ) on Tuesday January 29, 2002 @06:20PM (#2921982)
    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
  • If only it was on the internet, instead of that guy's local network, it could also be the first lego brick to get slashdotted!
  • Uh Oh... (Score:2, Funny)

    by dupper ( 470576 )
    ...image the inevitable frustration forthcoming when your little brother brings down your high-traffic portal to build a dinosaur!
  • I'm still getting over my guilt complex about clicking the link to the Lisa web server and contributing to that poor girl's painful demise, and now you tempt me with an even meeker, treasured childhood toy? These poor little things don't deserve to be slashdotted. Oh the humanity!
  • In my day.. (Score:2, Funny)

    by glwtta ( 532858 )
    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!
  • Astounding! (Score:1, Funny)

    by sllort ( 442574 )
    Imagine the possibilities of connecting your collection of Lego Mindstorms to the Internet!

    That would be awesome! You could be the Biggest... Dork... EVER!
    --
    You're reading Managed Agreement [slashdot.org].
  • So what is next? a tcp/ip enabled condom?
    Just don't try to finger it.
    A nasty .plan might show up.
  • isn't there enough crap connected via IP at the moment
  • by funkhauser ( 537592 ) <zmmay2@u[ ]edu ['ky.' in gap]> on Tuesday January 29, 2002 @06:26PM (#2922028) Homepage Journal

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

  • Comment removed based on user account deletion
  • Bob: "Check out the new server cluster we got"
    John: "uh... it's a big lego model of natalie portman"
  • Oh well (Score:5, Insightful)

    by rice_burners_suck ( 243660 ) on Tuesday January 29, 2002 @06:26PM (#2922032)
    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.

  • Imagine... (Score:1, Offtopic)

    by ackthpt ( 218170 )
    Imagine a beowulf cluster that G.I. Joe and Barbie could live in!
    • Nothing used to anger me more than when people would put NON-Lego components in Lego buildings, cars, etc. It bothered me to no end. Come to think of it, it still does. Grrrrrrr...
  • Server temporarily unavailable due to heavy load.
    Please try again in a few minutes.
  • Server (Score:4, Funny)

    by lavaforge ( 245529 ) on Tuesday January 29, 2002 @06:29PM (#2922055)
    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?

  • by Nick Smith ( 321087 ) <nsmith.webone@com@au> on Tuesday January 29, 2002 @06:29PM (#2922064) Homepage
    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...
  • However, it does make "assembling a cluster" have a whole new meaning.
  • They've already got this thing running! .. even has an LCD output screen!

    http://www.applefritter.com/compubrick/compubrick1 60/index.html [applefritter.com]
  • That's all I need. Getting spam saying, "You're running low on red bricks! Click here to order more below wholesale!" :-D
  • Ut Oh! (Score:2, Funny)

    by L-Wave ( 515413 )
    Now someone can *r00t* my lego's and command them to take over my home?!?!
    • Re:Ut Oh! (Score:2, Funny)

      by sprong ( 98748 )
      Yup. And they'll have it build itself a long arm, and it'll keep flushing the toilet everytime you take a shower.
  • 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 :)
  • c64 (Score:1, Funny)

    by Anonymous Coward
    >has also been used to run a Commodore 64 as a web server

    Come on folks, if we can't slashdot this, we aren't really trying.
  • Pretty soon all those lego servers will be serving this [corrupt.net].
  • Very Good stuff. I've used mine to control my web cam for a while now. Hopefully others will build off of this :)
  • because it's necessary to say:
    Imagine a beowulf cluster of these things. It would be like the cities I built...
    and then my mom vacuumed up.
  • Wasn't Yellow Dog's Brique first? No, waitaminute... Nevermind. :)
  • Seriously though...

    I also love the fact that I'll be able to sell my DreamCast Broadband adapter to some dude who wants to run a DC server. :D
  • LEGO Mindstorms is so extremely cool. My girlfriend's little brother got it last x-mas and I was playing with it a lot more than him. :-) And this is even better, now you can ping your little robot and most likely you'll be able to control it remotely over the internet. DAMN, I wish I was ten years younger... or perhaps this is the best time to get some kids!? Honeeey!!

    Ciryon
  • Imagine a beowulf cluster of these! In the form of a house! Watch out VA!!
  • where can i buy one? now instead of a server farm that takes up a large room, i can build a lego village in my closet. no longer just fun and entertaining for kids, but it serves (pun intended) a useful purpose.

    Reminds me of something:
  • by J.D. Hogg ( 545364 ) on Tuesday January 29, 2002 @06:46PM (#2922165) Homepage
    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.
    • 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.
    • 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.
  • RAM HOG! (Score:3, Insightful)

    by pnatural ( 59329 ) on Tuesday January 29, 2002 @06:48PM (#2922175)
    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...
  • i want a baewolf cluster of these... now i actually have a valid reason (since i'm a computer professional and all) to go buy me some legos. me 1 : wife 0. thank god. oh wait, that's a different christ.
  • really needs to read up on this ...

    And discover the excitement of something like this brings and the desire for people to go out and buy the product.

    And in turn read up on how people feel very negative towards lawsuits and threats for even thinking of making modifications to there products.
  • 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 :)
  • by Dog and Pony ( 521538 ) on Tuesday January 29, 2002 @06:52PM (#2922196)
    A sneak-preview of the new server-racks [designphase.com].

  • Scalability (Score:2, Funny)

    by roman_mir ( 125474 )
    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.
  • Heh, imagine if as a kid you weren't just building a race car or a fishing boat. Soon it'll be time for your 6 year-old to make his first WAN :)
  • by cnladd ( 97597 ) on Tuesday January 29, 2002 @06:59PM (#2922230) Homepage
    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?
    • 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.
    • 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?

  • No need to buy 42U racks for a couple thousand $. Just snap together and go!
  • by ryusen ( 245792 ) on Tuesday January 29, 2002 @07:18PM (#2922294) Homepage
    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."
  • by account_deleted ( 4530225 ) on Tuesday January 29, 2002 @07:34PM (#2922360)
    Comment removed based on user account deletion
  • 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.
  • WOw, seeing the C64 spit out bytes so slow reminds me of the BBS days. This is almost exactly like 2400 baud.
  • No, this isn't a joke.. =)

    I haven't touched uIP myself, but we're using lwIP (its big brother) in KallistiOS [allusion.net], 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 [www.sics.se]
    -Dan Potter
  • With one of those big green backplanes, Olaf could probably put together quite a cluster.
  • This is what they look like:

    horror.jpg.html [peeron.com]
  • 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 ..."
  • 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 [sourceforge.net] 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...
  • 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

Two can Live as Cheaply as One for Half as Long. -- Howard Kandel

Working...