User:Bluefoxicy/FeatureSuggestions

From OLPC
Jump to: navigation, search

I'm sticking feature suggestions here for the second revision, which I'll roll into the discussions on the mailing list when appropriate.

I am not an engineer. Do not assume I'm engineering awesome stuff or know what I'm talking about at all. Ask a professional.

Expandability

The OLPCs are not very expandable or even repairable. If RAM goes, if NAND goes, if the CPU dies, we're left with an unworking model. Some parts should be replaceable and even expandable. Here are my suggestions.

Note that I don't include the CPU in these. Replacing the CPU serves almost no purpose, aside from actually repairing a damaged board.

NAND Card

An attack on the machine may destroy NAND, leaving the machine crippled to USB2.0 or SD booting. This could be a lot slower; and USB drives will dangle off the side and be exposed to damage. Besides that, 512M bay be too little NAND in the future.

R2 should feature a riser connection for NAND, allowing a PCB containing traces reading to an edge connector to be inserted into the side. The connector for the card would be a simple card slot. Being a simple riser, there would be no controller chip for the card; it would be a 1:1 replacement of the NAND soldered on board to a bunch of traces leading to a card slot at the edge of the board.

When the NAND card is inserted into the laptop, it should slide deeper than flush. A cap can then be placed on which fits snugly due to a rubber O ring around it. The cap could be removed by sliding an object into a handle flush with the edge of the laptop, and tugging it back out; otherwise it should not wobble or fall out, and should be water tight.

It may also be possible to place the controller on riser, so the flash controller itself can be updated. This may be difficult; although it could be slotted in the same spot, see diagram below:

Board      |
------------     -------------
|| <-- card     =|[XXXXXXXX] |
||     slot     =|   ________|
||              =|   |~-~-~-~     |||||||
||              =|   |  card     |-------|
||              =|   |  slot     |[NAND] |
------------     -----           |_______|
           |      Controller        NAND
           |       Card              Card
           |    [X] - NAND Ctlr

Shown in the diagram, a riser on the board connects to the NAND controller, which has a NAND controller chip on it. A further riser on the NAND controller connects to a smaller card containing a NAND chip. Note the design layout chosen does not allow NAND to be inserted directly in without removing the controller card; this is intentional. It also prevents having three major "thin" sides and wasted space, the surface area of the NAND controller card is as large as possible.

Problems with removable NAND controllers and cards include generally routing circuitry to the edge of the board. It's convenient to plod the controller and chip on the board somewhere open; when you have to remove the controller from the side, it has to be at the side, and the traces may not want to go that way. The CPU or south bridge would likely have to be closer to the edge of the board to make this work; this is not easy, because of what the CPU has to get to.

One possible design to solve this would be to use a ZIF socket, where you slide the controller/NAND card in at an angle, then tilt it parallel to the board and it locks in place. This would allow the ZIF socket to be placed anywhere on the board, and accessed by removing a back panel; however, it would also increase the depth of the board, unless (not recommended) a hole were made in the board that the card tilts into. Further, a large, removable back panel would have to be added, which would be difficult to get to seal and stay in place as reliably as a small cover; or the laptop would have to be disassembled to access the guts, which leaves the problem of finding a screwdriver and stripping or grinding the screw heads to the point that you can't remove the screws.

In this design I have not considered how the NAND size affects the circuitry. The design should be such that the flash controller chip can interface with a card containing various sizes of NAND. For example, if the controller chip supports up to 4G of NAND, it should be possible to insert a 512M, 1G, 2G, and 4G card without added controller circuitry on the card; further denominations, such as 1.5G, 3G, or "any reasonable iteration" may also be supported, to what is technically feasible and cost effective.

Another not-considered issue is that switching controller cards is probably not feasible; different chips will likely have different pin-outs, creating the upgrade problem present with desktop CPUs.

RAM

RAM is the next biggest thing to consider upgrading. RAM is not likely to be damaged by a DOS; but it is likely that increasing RAM will increase the range of effectiveness of the OLPC, by boosting performance and allowing a larger working set. An expansion option would be nice.

Future revisions of OLPC may simply be the same board as their immediate predecessor with more NAND and RAM. If the CPU is the same or is still an x86, or in any way capable of running the new OS natively, then it would make sense that an old machine could simply get a RAM and NAND boost and run the new OS. For target countries where kids are poor, a $20-$30 RAM and NAND upgrade to get a newer, faster machine may become interesting; especially if the new OS and software has some substantial benefits for education.

Another interesting thought is that some users in higher grades may simply wish to boost their storage space and memory, in the same way some of us get an Athlon 64 X2 with 2 gigs of RAM just so we have a beefy system. The laptop is given to the children to take home, to do schoolwork on, and to generally carry around; there is no reason they should not be able to buy upgrades through the school if they actually have the money (aside, of course, from the fact that Jack Thompson would condemn us the first time a 14 year old realized he could get his system to run Doom).

Adding more RAM would be similar to adding more NAND, with the RAM moved to a riser card on a ZIF or side socket; commercial laptops have a lovely design already. The second revision should allow for expansion through adding to the existing RAM, and the existing RAM should be removable in case A) the laptop breaks and it can be reused in another machine; B) a 256M expansion is added (384M total), then another is purchased and the stock memory is in the way. Stacking RAM by having cards that accept cards may be a cute idea, but not likely useful.

Keyboard and Touchpad

An easy target, the keyboard could potentially break, or the laptop could be rendered useless and the keyboard could be still useful. The keyboard could be secured by rubber seal around the edges, latch in place, and be replaceable by removing it and inserting a new one. Connector of choice? Proprietary form factor with standard USB connector on the bottom; think HP media center drives.

The same could be said about the touchpad, with the same solution. This could be integrated with or separate from the keyboard.