Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Education Hardware

Ask Director Eben Upton About the Raspberry Pi Foundation 194

When Eben Upton isn't working as an ASIC architect for Broadcom, he is the Director of the Raspberry Pi Foundation. The foundation is a UK registered charity which exists to promote the study of computer science and related topics, especially at school level. Raspberry Pi plans to develop, manufacture and distribute an ultra-low-cost computer, for use in teaching computer programming to children. Their first product is about the size of a credit card, and is designed to plug into a TV or be combined with a touch screen for a low cost tablet. The expected price is $25 for a baseline Model A device, and $35 for a Model B device with integrated 2-port USB Hub, 10/100 Ethernet controller and 128MB of additional RAM. Eben has agreed to answer your questions about what it takes to make an ultra-low-cost computer, running an educational charity, or anything else. The usual Slashdot interview guidelines apply: ask as many questions as you want, but please keep them to one per comment.
This discussion has been archived. No new comments can be posted.

Ask Director Eben Upton About the Raspberry Pi Foundation

Comments Filter:
  • Would you consider making the device available to the public, and using those purchases to subsidize units destined for low-income students?
    • I'm pretty sure that's the goal. They'll even have a "buy two, give one away" like the OLPC.

      • Yeah their FAQ says available to the general public in November, and they always talked about making them available sale to everyone. I hope they make their projected deadline... I love the idea of a (cheap!) little project computer I can plug right into my TV.
  • Your decision to sell the Raspberry Pi to any interested parties, not just educational institutions, seems to indicate a broad-minded approach to education, favoring transparency and open standards. What percentage of your costs do you expect to cover by selling directly to individual, hacker-type enthusiasts, versus wholesale distribution to educational institutions for inclusion in curricula?
  • by Trepidity ( 597 ) <[gro.hsikcah] [ta] [todhsals-muiriled]> on Wednesday September 07, 2011 @01:11PM (#37330184)

    Are you the same Eben Upton who co-wrote the excellent Oxford Rhyming Dictionary [amazon.com]? If so, how'd you like that gig compared to your usual, more techie types of endeavors?

  • Are you worried about malware being written to target these just like some variants target USB thumb drives [informationweek.com] or mobile phones? It seems to me that if you sold millions of these to grade schools and then the kids took them home and plugged them into their home computer, the unwary student might inadvertently be the typhoid Mary of a pandemic or spreading stuff to their home computer where their parents sensitive data is stored. Are there any plans to develop tools to or methodologies to prevent such a thing
    • by h4rr4r ( 612664 )

      That malware does not target USB drives. It spreads via them, it targets windows machines.

  • Is the device going to have a built-in interpreted language ala BASIC, perl, or java, or is the device going to have a full compilation suite?

    • With max. RAM of about 256mb and probably a pretty low amount of storage, I'm guessing if you want to build apps for it, you would use a full-blown Debian install and cross-compile for ARM.

      • 256mb is more than enough to run a Debian install with something like LXDE, a decent text editor and a toolchain. Except for Firefox, my laptop is using less than 200mb with multiple applications open.

        As for storage, 4GB is more than enough for anything you want except for full blown games and videos (which this won't support anyway).

        • by vlm ( 69642 )

          videos (which this won't support anyway).

          Supposedly has native H.264 decoding or hw acceleration or whatever.

          • by EdZ ( 755139 )
            Very impressive h.264 decoding, in fact. Level 4.1, HIGH profile; i.e. can handle mostly unmolested blu-ray data, once the DRM is removed (no transcoding). I'm nabbing one as a media streamer.
        • by PybusJ ( 30549 )

          I saw one playing back full screen H.264 just this afternoon, and if not full games the GPU can certainly handle quake 3. Apparently the broadcom chip it's based around was targeted at set top boxes so it certainly pays back video.

          Of course this means that more than $1 of its $25 price goes on H.264 and AAC licenses. Whether that's appropriate is a separate discussion...

      • by Yvanhoe ( 564877 )
        That's low, that is only twice the amount of storage that Von Neumann estimated the higher human brain to have.... Grmbl (1 billion bits, or 128 MB)
      • by LWATCDR ( 28044 )

        Not really. I have done native compiles on a Strong ARM with 64MB of ram and running X. Not a lot of fun mind you but it did work just fine.

      • by Hatta ( 162192 )

        The BBC Model A shipped with 16K of RAM and BASIC on ROM. I have an MP3 player in my pocket that has 8 meg of RAM and a Lua interpreter. Hardware requirements are absolutely not an obstacle to providing a programming environment out of the box.

      • by tlhIngan ( 30335 )

        With max. RAM of about 256mb and probably a pretty low amount of storage, I'm guessing if you want to build apps for it, you would use a full-blown Debian install and cross-compile for ARM.

        Uh, why? Native compilation works just fine. 256MB of RAM was a luxury in a PC 10 years ago, and we seemed to be able to compile all sorts of stuff that way.

        Perhaps the issue is fitting the entire development environment in storage - it can be an issue (The kernel is over 200+ MB unpacked, after all), but you should be ab

      • With 256MB RAM and enough storage added to it (say, a 16GB SDHC card) Debian would be self-hosting on that platform. My first UNIX(tm) machine was a Sun 3/260 with 24MB RAM and 512MB disk, and the next slashdot user to come along will surely talk about their PDP that makes my Sun look lightning-fast and positively spacious.

      • Since its _Raison d'Etre_ is teaching kids programming, requiring cross-compilation on another machine would be the stupidest move in history.

    • nothing at all built in, everything (including the bootstrap) loaded at boot from the SD card.
      there will be pre-made SD images with an OS and programming environment available for free from Raspberry Pi, and preloaded SD cards at not much more than cost; Linux and Python (exact flavors TBA) at the start. Other OSes/variants/languages are welcome.

  • How... (Score:3, Interesting)

    by steelfood ( 895457 ) on Wednesday September 07, 2011 @01:46PM (#37330802)

    ...is competence in programming, much less actual computational science, better serverd by possessing a computer as opposed to promoting a strong foundation in fundamental mathematics?

    (Yes, this is a loaded question, because there's a general concensus that possessing and using technology does not result in better education, much less an education in something as complex as the technology itself.)

    • +1 for this question.

      I think that reducing the base courses in early education to concentrate on reading and writing skills, along with basic math skills with general history is key. Once you have that base, you can learn anything else. I do feel that giving inquisitive kids more opportunity to explore, and concentrate on the core works better in the long run. Being able to communicate is first priority, critical thinking second.. I think this would be great for once kids reach the 10yo+ mark... I don
    • by Toonol ( 1057698 )
      ...is competence in programming, much less actual computational science, better serverd by possessing a computer as opposed to promoting a strong foundation in fundamental mathematics?

      Absolutely. Six months of tinkering will result in more of a leap forward in computer programming ability than four years of math. Not that the math isn't valuable, but it is nowhere near as important as hands-on playing.
  • plans to develop, manufacture and distribute an ultra-low-cost computer, for use in teaching computer programming to children.

    I think I just got a jolt of deja vu for some reason.

  • by drinkypoo ( 153816 ) <drink@hyperlogos.org> on Wednesday September 07, 2011 @01:52PM (#37330884) Homepage Journal

    I'd also like an even wimpier model. Say, RS-232 instead of HDMI, and no GPU. If I could save three bucks and some power it would make sense in some applications. But I mostly want a more powerful model to also be available. I am really excited about the $35 model as it is, but I'd very much like something with more RAM, and possibly SATA.

    • RS232 would be more complex, and therefore more expensive, because it requires additional hardware (the level converter from TTL voltages to RS232 voltages). The world has moved on, I'm afraid, and high-speed USB connectivity really is the cheapest option...
  • It's rather hard to source parts in some cases, and a kit with all the major semis might be interesting to those of us who would like to take the raspberry pi, and make it smaller, or bring out a different set of peripherals.
    The design risk if it was possible to take the pi, and edit the PCB design, to eliminate connectors, or add connectors is attractive, even though the cost of a several-off PCB isn't.

    It would make it a tool for the education of electronic designers that aren't quite up to sourcing and de

    • by vlm ( 69642 )

      It's rather hard to source parts in some cases, and a kit with all the major semis might be interesting to those of us who would like to take the raspberry pi, and make it smaller, or bring out a different set of peripherals.
      The design risk if it was possible to take the pi, and edit the PCB design, to eliminate connectors, or add connectors is attractive, even though the cost of a several-off PCB isn't.

      It would make it a tool for the education of electronic designers that aren't quite up to sourcing and designing a full linux system yet.

      A good university level "senior project" would be modify the pi to handle a gig or two of ram instead of just 128 megs.

      • by josath ( 460165 )
        From what I read the theoretical max is 512MB, but it depends on a 512MB chip in the specific format being available (it's a special package, it mounts directly on top of the processor), which at this point either doesn't exist, or is hard to get.
      • More to expose - for example - the camera interface.

    • by josath ( 460165 )
      The chipset powering it is a proprietary broadcom System-on-a-Chip. The reason they are able to use it, is because the leader of the rasberry pi project works for broadcom. You can't even get a datasheet for the processor. Also it's BGA, something you can't normally solder together in your home without fancy equipment.
  • Any plans or exposing some pads or even pins for Digital IO, SPI, and or I2C? Maybe even a few A2Ds? Such a device would be very handy for embedded systems. Things like weather stations, robotics, data logging and so on. Could be very handy in any science class room.

    • by vlm ( 69642 )

      Any plans or exposing some pads or even pins for Digital IO, SPI, and or I2C? Maybe even a few A2Ds? Such a device would be very handy for embedded systems. Things like weather stations, robotics, data logging and so on. Could be very handy in any science class room.

      IO ports are where its at... This would make an ideal embedded dev platform.

      Write my control loop simulation in GNU Octave on the desktop, run the same control loop file for real on the little embedded box.

      • by LWATCDR ( 28044 )

        A realtime Linux would also be nice to add into the mix. Some A2Ds would also be nice to add but you can do that with SPI.

        • by vlm ( 69642 )

          A realtime Linux would also be nice to add into the mix. Some A2Ds would also be nice to add but you can do that with SPI.

          Yikes I just realized with RT linux support, if I could compile EMC2 on it, I could almost replace my desktop CNC milling machine controller with this $25 board.

    • Yes. See the wiki.

  • by Jodka ( 520060 ) on Wednesday September 07, 2011 @01:58PM (#37330996)

    You have stated in your FAQ [raspberrypi.org]:

    "We haven’t made a decision on open hardware yet. "

    What is your reasoning process here; Specifically as a charitable non-profit, what would be your motives for not making it an open design?

    • by Hatta ( 162192 )

      Good question! Non-open hardware would be a deal breaker for me. The obvious competitors to this device, the Arduino and the Beagle Board are both open. Refusing to open the hardware for this device would just be shooting yourself in the foot.

    • by vlm ( 69642 )

      Does the problem somehow revolve around your H.264 decoder hardware and/or firmware? If so could you release the design without those very specific details?

    • by josath ( 460165 )
      They are using a Broadcom processor, which is proprietary and not available to the general public. Coincidentally, the leader of Rasberry Pi also works for Broadcom. They are known for being pretty unfriendly to open source in general, so most likely that has rubbed off on him? My thoughts are that they are trading away openness in order to get the price down ($25 is an amazing pricepoint for an ARM board at this caliber)
  • I see that you plan on using C and Python for teaching languages [elinux.org]. I recognize that I am of an older generation but grasping C in its entirety or even little endian versus big endian was something that didn't fully come around until college for me. What are your strategies for teaching even younger targets with something like C (Python, however is probably easier)? Are you developing a rigid teaching course line or just happy to have the community put anything out? Furthermore, what is the point of putti
  • I'd find a version with a combo wifi/bluetooth chip much more useful than the Ethernet version. You could plug it into a spare HDMI port (HDMI provides power) on the TV and you're done. No wire needed. Wifi hooks to the network, Bluetooth connects keyboard/mouse. You have to consider the probability of having Ethernet wired to wherever the TV is located.

    • by josath ( 460165 )
      For about $10 you can add on wifi and bluetooth ($2 for a USB BT adaptor, $8 for a USB wifi adaptor). Sure they may not be the fastest, but for something like this low powered ARM chip, you're not going to be pushing hundreds of megabytes per second anyway, so it's not an issue.

      Due to issues of scale, I bet it would cost them much more than $10 to add wifi & bt onto the board itself.
      • Building it into the board means that everyone has the same chip. It really simplifies the driver problem. They can get single chip solutions from TI, CSR and others. The chips are sub $5.

        Using a powered USB hub kind of defeats the convenience of this device. A wifi/BT version would be completely self contained. Just plug it into an open HDMI port on the TV and you're done.

        Scale probably is not the issue, instead they want to avoid the FCC/etc radio certification.

      • by Toonol ( 1057698 )
        If it could have bluetooth, then I can plug it into the TV, wirelessly connect a wiimote, and use it as an emulation machine. That would be pretty nice.
  • HDMI CEC (Score:4, Interesting)

    by jonsmirl ( 114798 ) on Wednesday September 07, 2011 @02:02PM (#37331048) Homepage

    Is the HDMI CEC wire hooked up with a driver transistor? Hooking up that wire will let the PI control all of the HDMI devices. People are already doing this with the Beagleboard so there is software available.

  • In alphabetical order: Afrika, America, Asia, Australia, Europe? (Antarctica deliberately omitted.) Which parts of those (wherever the distinction is meaningful): North, South, East, West, Central?
  • by simonloach ( 974712 ) on Wednesday September 07, 2011 @02:19PM (#37331240) Homepage

    The raspberry pi is meant to introduce programming concepts to school-level children.

    My question is: How are you planning on doing this from a UI perspective? The BBC micro (as far as I can tell, a little before my time) simply dropped the user into a BASIC prompt and left the rest to their imagination. This seems like a pretty fundamental design question for the raspberry pi, but I haven't been able to find a clear answer yet.

    • In the same vein: The BBC Micro came with a user guide that allowed what would now be regarded as "kernel level" hacking. This was great because it allowed some of us to increase our programming skills beyond writing simple BASIC programs. Will there be a similar level of hardware documentation to allow such programming with the Raspberry Pi?
    • by jimicus ( 737525 )

      The BBC micro (as far as I can tell, a little before my time) simply dropped the user into a BASIC prompt and left the rest to their imagination.

      Not necessarily. The BBC micro had 5 ROM sockets and some of the more sophisticated applications were shipped on a ROM chip. You didn't actually have 5 free, however, because 1 was taken up by the OS and you needed at least one "language" ROM (a ROM that announced that it could provide some sort of user interface). Many people upgraded their BBC to connect to a floppy disk drive; this took up another ROM socket. Therefore, you usually wound up with 2 free.

      IIRC the BBC went through each ROM in turn and dropp

  • Since the primary OS will be Debian based we can assume support for C, C++, Python, Perl, and Bash scripting. But I have heard that you would need to get Oracle involved if you wanted a Java SE JDK since the RPi is Arm based. Can you comment on whether or not this is true and, if so, have you or are you in the process of obtaining the ability to develop Java on this platform?

    • by vlm ( 69642 )

      But I have heard that you would need to get Oracle involved if you wanted a Java SE JDK since the RPi is Arm based.

      I heard openjdk "just works" on ARM since 2008 in a quickie google search. Heard otherwise?

      For educational purposes I think giving kids Java is going to terrify them slightly worse than Intercal (which is available in Debian) or forcing them to read the Cthulhu mythos, so I'm not entirely certain its a good idea to try it. As HPL said "don't call up what ye can't put down" and all that.

    • by dominux ( 731134 )
      funnily enough in /proc/cpuinfo you can see the chip has a java flag which was intended to be hardware acceleration for java bytecode. A suitable JVM could pass quite a lot of raw bytecode straight down to the processor. Eben described it as a bit of a failed concept but a cool idea. I don't know if there will be a JVM that uses it, but it seems java support at some level isn't out of the question. I was hoping it would run jython natively.
      • ARM Holding's kept how to actually implement a JVM using Jazelle secret, so it is limited to a few commercial J2ME implementations AFAIK.
        However it is now generally accepted that a good JIT optimizer will outperform it anyway.

        The ARM ports of HotSpot (the main desktop JVM) strip out the optimized assembly code and don't support JIT so aren't super fast. Though are probably fine for teaching.

        Shark adds back a very fast JIT via LLVM, but isn't very reliable yet.

  • http://squeak.org/ [squeak.org] from what I have heard is a great learning language. Would be a nice option to support.

  • Seeing as the aim of the project is to create a tinkering platform for nascent, teenage programmers I was wondering why the idea to write a full, tutorial programming manual was dropped. The whole of the early '80s micro boom and bedroom coders was based upon not on the "cheap" hardware such as the BBC Micro and the Sinclair ZX81/Spectrum but mainly the comprehensive and very educational manuals which came with them. So, why was the idea of the accompanying educational material dropped?
  • Hey Eben are you collecting project ideas to distribute with the gadget?

    If you can wedge in two USB ethernets, make a cool little firewall/router for not much more cost than linksys and infinitely more versatile
    Beowulf cluster in a lunchbox
    Wearable computing / gargoyle thingy
    Make your own hand held GPS with your own UI. Maybe a dedicated geocaching appliance?
    Embedded webserver inside a ... model railroad, stuffed animal, who knows
    Misterhouse on a really really small scale (misterhouse - in - a - doll - hou

  • How heavily customized is the version of Debian that you're including? Will it be highly optimized for the particular hardware? Will it have any special applications or utilities that are customized for the hardware, or specifically branded for Raspberry Pi?

    And as a sidenote... if you really want a million thirteen-year-olds to get interested in programming, include some sort of simple framework or library to allow writing games. Beginning programmers need to be able to do something without having to
  • by FunkyELF ( 609131 ) on Wednesday September 07, 2011 @03:27PM (#37332286)

    Have you thought about creating cases for these things?
    A keyboard would make a good case, possibly with a USB hub built in.

  • There have been unofficial statements that certain parts of the kernel and userspace, driving certain pieces of the SoC like the 3D rasterizer, will not have any corresponding source code available and will only be made available as licensed binary blobs.

    Can we get an official statement on the matter? What's your stance on open drivers, and why are you for/opposed to them?

    ~ C.

    • This is virtually a given, and pretty much a universality among mobile GPUs and mobile SoCs. The only vendor of graphics cores that does release all of their source code is Intel. And in the end I don't believe Eben or anyone at the Raspberry Pi project have any say in the matter.

  • As far as I can tell the system has a rather uncommon and interesting booting method. Will there be technical documentation available for developers of other operating systems who want to write a port for the Raspberry Pi? You can't fully learn how to program a system if you don't know how to boot.
  • Did you chose those names as a homage to the BBC Micro Model A and Model B?

  • Will there be a pinout available for hardware I2C, SPI, RS-232, USB and so on that aren't brought out to headers? Will there be open drivers for the above peripherals? How about real time clock and things like that.

    Or will people be stuck having to run bitbanged communications like on other hacked Broadcom stuff, because there is no information available to use the hardware peripherals, at least without a NDA and (presumably) a large cheque. That and having to run an ancient kernel to use the broadcom binar

    • There will be GPIO/I2C/SPI pins on the board and enough info to use those; no clue about extra connectors available directly off the CPU though, probably not that easy to get to anyway.
      I think the Pi has no RTC.
      The video firmware will be the usual binary blob, the drivers might be closed source too, unless Broadcom changes their mind (not an R.Pi decision)

      (I'm not working for R.Pi, just following closely)

  • I just want to know when I can get my greedy little hands on one ?
  • Will there be any documentation on writing custom firmwares for the Broadcom VideoCore IV chip? It seems to be a very cool GPU especially that it is fully programmable.

Life in the state of nature is solitary, poor, nasty, brutish, and short. - Thomas Hobbes, Leviathan

Working...