ReferencePlatforms/Imaging/Nokia N810: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
No edit summary
Line 46: Line 46:
  ERROR! Lost USB Connection while flashing RX-44_DIABLO_5.2008.43-7_PR_COMBINED_MR0_ARM.bin.  Dead battery?
  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.
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 <code>./bulk-image.sh</code> to find out potential device nodes
**maemo-n810-23 -- host name for the device the card is going in

Revision as of 23:13, 17 May 2010

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:

  • Firmware installation and configuration (RE)
  • Moving filesystem to SD card (RE)
  • Creating image on imaging computer (RE)
  • Resetting hardware (IT)
  • Imaging cards (IT)
  • Powering on devices (IT)

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

Instructions

We have a program moz-prep.sh that automates this process. To launch this program, run:

$ cd ~/n810-imaging
$ sudo ./moz-prep.sh

There will be lots of extraneous output that is useful in debugging. There should be a line saying

Suitable USB device not found, waiting

as the last line of output. This is a sign that you are ready to plug in the next N810 to prep.

You will follow the same process for the entirety of the program execution. The suggested process is:

  • remove the battery and backplate for all devices to be imaged
  • launch moz-prep.sh as outlined above
  • plug microusb cable into computer if not all ready there
  • for each device to image:
    • plug microusb cable into device
    • replace battery and backplate
    • plug in charger
      • if the power doesn't turn on automatically, press power button
      • There should be a blue USB logo in the top right of the screen, a progress bar on the bottom of the screen and a large 'NOKIA' logo in the center of the screen
    • Wait until you see something like:
UNPLUG DEVICE
Bus 008 Device 003: ID 0421:0105 Nokia Mobile Phones Nokia Firmware Upgrade Mode
    • Unplug usb cable
    • Once you see 'Suitable USB device not found, waiting' again, you should plug in the next device
  • once all devices are prepped press CTRL+C to quit moz-prep.sh

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