ReferencePlatforms/Imaging/Nokia N810

Step 1: Reset Hardware

NOTE: You should be in the RF Shielded room with the door *CLOSED* to ensure machines connect to correct network

For each session:

  • Ensure USB A end of Nokia MicroUSB cable is in computer
  • Remove batteries and backplates from all devices to be imaged
cd ~/n810-imaging
sudo ./moz-prep.sh 
#Follow onscreen prompts
#once all devices are prepped press CTRL+C to quit moz-prep.sh

Step 2: Image multiple cards

#Detach all MicroSD card readers from computer 
#Insert MicroSD cards to be imaged into MicroSD card readers
#Plug in MicroSD card readers with MicroSD cards into computer
#then run
cd ~/n810-imaging
sudo ./bulk-image.sh
#This will take approx 5-7 minutes per card; computer will beep when all cards are imaged.
# JHFORD will paste sample output here
#Remove all MicroSD card readers
#Remove MicroSD cards from MicroSD card readers
#Final output will tell you how many cards were successful, 
#this for your information and is not critical to the imaging process

Step 3: Verify card and power on device

#Run and follow on screen instructions
cd ~/n810-imaging
sudo ./bulk-verify.sh

Step 4: Boot device

  • This step assumes that the MicroSD card has been inserted into the correct device
  • Press the power button on the top of the device then plug the charger into the device (NOTE: order is important).
  • Verify the device comes turns on successfully with the blue geometry-themed desktop.
  • Verify that the grey Wifi logo in top right of screen turns to solid white
    • may take 5 minutes

Troubleshooting Tips

IGNORE BELOW HERE UNLESS YOU ARE *REALLY* CURIOUS

N810 Imaging

We use N810s to do on-device testing of our maemo4 builds of our mobile browser. In order to deal with maintaining 80 of these devices we have developed an imaging solution. Our initial attempt was to create a custom firmware image but file corruption became an issue. We eventually figured out how to boot these devices from MiniSD cards. We have special tools for creating and maintaining the filesystems on these cards.

Our process has the following logical blocks:

It is strongly recomended that the Imaging Cards and Power on devices steps are combined. The suggested high level process would be:

  • reset all devices
  • one at a time:
    • image card
    • power on that device

This is advantageous because it lowers the risk of inserting the wrong SD card into the N810 as well as lowering the shock on the WiFi APs from having multiple devices try to connect at the same second.

All RE actions are documented at ReferencePlatforms/Test/Maemo. If the imaging machine needs to be set up again, the instructions for this action are located at ReferencePlatforms/mobile-imaging-linux

The remainder of this document is to give instruction on the IT imaging actions

Resetting hardware

The purpose of this step is to zero out the root mtd device as well as reflashing the linux kernel and bootloader. We want to make sure that any possible corruption in these critical subsystems is repaired


Potential issues

If you see

ERROR! Lost USB Connection while flashing RX-44_DIABLO_5.2008.43-7_PR_COMBINED_MR0_ARM.bin.  Dead battery?

this is a sign that moz-prep encountered an error. This is a sign that for some reason, the nokia flashing program lost connection to the device. This is often caused by trying to flash with a dead battery. We mitigate this by flashing with the charger connected. This has also been caused by issues with the linux kernel on the imaging host. If you encounter this error on multiple devices using different batteries reboot the imaging machine. If you still have issues, someone has broken the imaging machine.

Imaging Cards

This step puts the Maemo operating system filesystem we use onto the Mini/MicroSD card that we boot from. Each card is imaged with a specific hostname, so it is critical that the card you image is matched to the device you put it in.

Instructions

  • remove all sd card readers from the imaging machine
  • remove all non-essential USB devices
  • reboot computer
sudo reboot
  • log in and run
cd ~/n810-imaging
  • For each card, run
sudo ./moz-image.sh moz-n810-v2 /dev/sdc maemo-n810-23
    • the three arguments to this program are:
    • moz-n810-v2 -- version of the image, will be included in the request to reimage
    • /dev/sdb -- device node for the sd card
      • run ./bulk-image.sh to find out potential device nodes
    • maemo-n810-23 -- host name for the device the card is going in


SAMPLE OUTPUT

Successful example:

$sudo ./moz-image.sh moz-n810-v2/ /dev/sdc maemo-n810-23
WARN(/dev/sdc): You are about to ERASE /dev/sdc.  ARE YOU SURE? y/n
y <--- I TYPED THIS AND PRESSED ENTER
gonna do it
INFO(/dev/sdc): Unmounting
INFO(/dev/sdc): Partitioning /dev/sdc
INFO(/dev/sdc): Formatting Drives
INFO(/dev/sdc): Copying data to card
INFO(/dev/sdc): Modifying Image
INFO(/dev/sdc): rsyncing rootfs dir into image
INFO(/dev/sdc): Unmounting
All done on /dev/sdc
$