This wiki is not longer actively used and, due to years of spam, has unfortunately been locked from further editing by anonymous users. Only approved users can edit the wiki or add content. If you would like to contribute to this wiki, please contact the administrator Benjamin Mako Hill.

OLPC Idea Pool

From Pedia
Revision as of 13:10, 8 February 2006 by 209.237.225.244 (talk) (Ideas: More RAM, less Flash; USB2 networking)
Jump to navigation Jump to search

Hardware / Software Idea

A major challenge is providing access to information through the green machine. Access to the Internet in most of the regions of the world where children will benefit from the OLPC program is usually limited. Here's a hardware+software idea that could make access to information truly ubiquitous. It goes for _access_ as opposed to speed. The idea works synergistically with other ideas such as Jason's idea for p2p distribution of texts and mesh network access to the Internet.

Rationale: I see the green machine as (1) a tool for accessing information and (2) a tool for self-driven learning through investigation. A problem with the former role is "from whence cometh the information ?". With the limited storage resources, "pre-loading" the information on the machines seems like an untenable approach. The crux of this proposal is that having easy and reliable access to a small library of information will be more useful than having spotty access to the entire Internet, even through mesh networking. The idea focuses on access to information, rather than access to the Internet, the latter and Information not always being synonymous.

Idea: Broadcast texts over shortwave radio. Have the texts broken up into chunks, and all the texts from a library interleaved in time. If possible, transmit different interleaving sequences on a set of different channels. The basic circuitry for a shortwave radio demodulator can be very simple, particularly if the decoding is done in software sitting behind a straightforward RF and analog front-end. When a child wants information on a topic, the implemented system captures fragments of a text relating to the topic off the air, and over time, the whole text is collected.

Example: Purely as an example, let the library of texts being transmitted consist of (1) Project Guttenberg texts (2) (one thing I wish I had access to as a kid:) mathworld.wolfram.com (3) Some free encyclopedia. All the content is broken up into packets of some size, encoded, all the packets interleaved according to some scheme, and the entire interleaved stream repeatedly transmitted. The infrastructure for transmitting the data streams need not even be in the nation or on the continent where the recipients are. Let, for example, the entire stream take two months to transmit. 4GB of encoded data at 1200 baud will take ~40 days. 1200 baud for a packet radio seems feasible, though I can't say how complex the hardware would be. Bear in mind we're only talking about receiving, not a full-blown modem.

Extensions: You can imagine having N different interleavings, which are transmitted on N different channels. When a child wants information on some topic, the request is sent out to at least N other green machines, over the mesh wireless network. All the machines start picking up chunks for the text on one of the N different channels. The chunks are sent to the requester over the mesh network.


That's the top level idea. I think it is feasible to implement with minimal hardware, and the algorithms and their software implementations to go behind the hardware are interesting issues, many of which are already well understood or solved.

--Pstanley 10:52, 1 February 2006 (EST)


Software Idea - Peer To Peer Distribution Of Electronic Text

I believe one of the most useful purposes of the laptop will be to distribute electronic text (i.e. e-books). The distribution of any information without a persistent network connection will be difficult. I imagine a situation where 1 out of 100 or 1000 kids may have access to a network connection. The peer to peer network could be used to distribute e-books from that single network connection to 1000 kids. I'd like to propose the design of a peer-to-peer network client designed specifically for this purpose.

A simple, graphical language-localized client would be designed to present a catalog of e-books. The client would pull down a listing of books available in a certain age-range for a targeted language. The student would pick texts that he or she has interest in. This list of requests would consist of a very small packet of data, perhaps a unique identifier of the device and a unique identifier of the text. When the device sees another device, it would off load it's packet to the peer device and vice-versa. Each device would contain a listing of requests from all of the peers that it came in contact with. The next time a device connects to the Internet, it would pull as many texts as allowable by pre-defined memory limits (say 3-5 meg). As the device comes into contact with other devices, it would deliver the texts to the other devices. Hopefully, over time, the requestor would be delivered some of the texts originally requested. As each text is delivered, a delivery or cancellation notice would be sent back through the peer network.

The peer to peer network should gather performance intelligence over time. It should be able to guess which routes have better chances of making a request and returning a delivery.

If a proof of concept proves to work well, the peer to peer network would be extended to handle two-way communication for interaction such as email or the submission and grading of assignments.

--65.7.133.163 04:41, 27 January 2006 (EST) Jason Hoekstra - jason@solexinc.com

Wireless Networking

A book called Wireless Networking in the Developing World is now available on the net in pdf at http://wndw.net/. It has a lot of information that might be useful when deploying the OLPC program. In addition to covering WIFI theory and design, it covers practical, social, and economic problems that they encountered. One idea is to share the cost of the infrastructure with other local groups like businesses and local government. Another is to disperse the knowledge of how to operate the system so that if one person moves away, critical knowledge isn't lost.

Hardware Idea: More RAM, less Flash

The laptop's RAM cannot be expanded in the field, but its Flash memory can be expanded easily and cheaply by plugging in USB thumb drives for any user who needs one. Thus, if you have a chance to add a little more memory to the base unit, add a RAM chip, not a Flash chip!

Question: What's the relative access speed of USB2 thumb drives versus the built-in flash memory?

Note of course: A hard drive can easily be added by plugging one into USB2 as well. One catch is that rugged, properly cooled USB2 hard drives do not seem to exist at any reasonable price. Another catch is power.

--John Gilmore

Hardware Idea: USB2 networking

The USB2 interface hardware allows one of the USB ports to be used as a device port as well as a host port. This means that with the proper cable and software, two laptops could be plugged together and you could network them via USB2. They can be daisy-chained in the same way, and should provide ~20 Mbytes/sec of thruput (see GNU Radio USRP software for Linux software that can keep the USB2 bus moving data at maximum speed). There's USB device software in the Sharp Zaurus, which runs Linux and has such a dual-use USB port (USB 1.1 though).

A USB2 cable is much faster than the wireless, and cheaper than adding USB2 ethernet cards + hubs + cables + etc. Running IP, DHCP, and Rendezvous over USB shouldn't be hard; I'm a little surprised it isn't standardized already (like IP over Firewire).

--John Gilmore