Test release of multicast NAND updater
http://dev.laptop.org/~wmb/q2e22a.rom This firmware contains a test version of the multicast NAND update utility. It can clone an XO's NAND image onto any number of other XO's simultaneously. (It can also send NAND images from USB sticks,etc, but I'm not ready for people to begin testing that yet.) It uses the mesh as a fast broadcast medium by setting time-to-live=1 so packets don't get forwarded. You don't need an access point at all, just two or more XOs. The primary use case is for updating a very large number of machines at once, in an dedicated area like a warehouse. Think of a country trying to update 50,000 machines by next week, in time for school to start. The current version only works on unsecure machines, and only for unpartitioned NAND images. Both of those limitations are on my list to fix. I'm also going to improve the user interface a lot. But for now, I'd like to get some feedback on how well the current version works for people in different RF environments. Here's how to use it: a) Pick a wireless channel that is relatively clear (1, 6, or 11), using whatever technique you prefer. b) On the machine whose NAND you want to send, type: ok ether-clone6 (or ether-clone1, or ether-clone11, according to which channel you want to use) c) On the receiving machines, type: ok enand6 (or enand1 or enand11) The sending machine will send continuously, over and over, until you power it off. The receiving machines can be started at any time in any order. It should be possible to have an arbitrary number of receivers, as the data traffic is strictly one-way. When a receiving machine starts, it may say something like: 1083 need 93 1084 need 30 The first number (e.g. 1083) is the block number. The number after need is the number of data packets that are missing for that block. A few - 2 or 3 - such lines is normal because the receiver drops a few packets when it is preparing all its initial data structures. The missing packets will be collected the next time around. After the first few blocks, on my setup (quiet RF environment), packet loss is very rare. I'd be interested to hear your results. ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Test release of multicast NAND updater
Test 3, a different place, B4 acting as sender, five C2 as receiver, channel 1, four C2 updated fine in one or two passes. The C2 that I mentioned before is continuing to give trouble. Same symptom occurs, usually between 20 and 200 blocks after starting. Have tried varying position, channel, temperature, battery presence, remove all power, USB load, screen brightness, but no change to symptom. I suspect something wrong with the unit, but I can't pin it down. (This same unit when it arrived last week with a prior G1G1 OS build on it wasn't able to activate wireless. After I had upgraded it to 757 it was able to. That's just additional correlation.) The unit works fine now after I flashed it with 757 from a USB key. -- James Cameronmailto:[EMAIL PROTECTED] http://quozl.netrek.org/ ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel
Re: Test release of multicast NAND updater
Worked great. Test 1, C2 as sender, channel 1, B4 as receiver, C2 copy-nand'd from os757.img, broadcast update worked fine, only three lost packets, and that was as I was handling the receiving unit. On the next run through the sequence numbers the missing packets were picked up, the NAND was updated, and the B4 booted normally, and did first-boot sugar name prompting. Test 2, same C2 as sender, but restarted, four C2 units as receiver, all receivers started first, then sender started. Three units captured the whole stream in two passes, wrote NAND. One unit stalled with this on display: ok enand1 Boot device: /dropin-fs:mcastnand Arguments: ether: 1 /nandflash Waiting for server Expecting 2389 blocks, 236511 total packets (99 ppb) need 24 0002 need 12 0003_ (where _ represents the block cursor) It did not budge despite (a) the sender cycling through block 3 again, and (b) the unit being moved right next to the sender. No keyboard input did anything. I power cycled, and did the enand1 again, and it worked fine. Can Q2E22A be used on B2? ;-) General comment ... starting an enand1 while a broadcast is already in progress ... seems to generate two three need responses. Tried this five times. Feels like a settling issue. You did mention it. It makes a single-pass problematic, but since the sender loops, no biggie. -- James Cameronmailto:[EMAIL PROTECTED] http://quozl.netrek.org/ ___ Devel mailing list Devel@lists.laptop.org http://lists.laptop.org/listinfo/devel