Updating the firmware

Beware that flashing a new image on your device will reset the device back to factory defaults and remove all data not on the memory card: preferences, bookmarks, installed applications, with a single exception that any previously-set lock code will be kept and not reset to the factory-default of "12345".

The "Backup/Restore" application only saves a list of your repositories and installed applications (the applications you can reinstall after flashing), files in, some settings in  , gconf and  , and additional files reported by applications on install. In general, properly packaged applications tell the backup tool what to back up, but if you've created extra shell scripts or files outside MyDocs, you'll have to back them up yourself.

Updating & Flashing your device
For Windows, Mac or Linux you can use flasher-3.5 which can be download from the tablets-dev page. This page contains all installation packages include documentation for using the flasher.


 * 1) Download the Flasher for your device model: N900, N810, N800 or 770
 * 2) In the same directory, download the latest firmware image for your device model:
 * 3) * for N900
 * 4) * for N810 WiMAX Edition
 * 5) * for N810
 * 6) * for N800
 * 7) * for 770 (or, for the Hacker Editions, OS2007HE and OS2008HE)
 * 8) Ensure the battery is fully charged.
 * 9) Unplug the charger and switch off the device.
 * 10) Connect the device to the computer via USB without turning it on.

Linux
Once you have downloaded the flasher and the fiasco-image, follow these steps:

 Now turn off your device (make sure you unplug the charger or else the device wont power down completely, you can plug the device back into power once it starts flashing) and plug in the USB cable to a port on the computer and the port on your device. Now, open up a terminal and run:

It will ask you for an administrator password, enter it. 
 * sudo ./flasher-3.5 -F  -f -R

 Note: If you installed from the .deb package, the command will omit the './' (sudo flasher-3.5 -F  -f -R). It will say: 
 * Suitable USB device not found, waiting

N900: Remove USB, hold the u key and plug it back in. Wait until you get a boot screen with usb logo in top right, and let go of the key.

N810, N800 and 770: First, unplug the power cord from the device, as this will prevent it from updating. Then take your device, and hold down the Home/Swap button (looks like a little house on the N800 and 770, and two overlapping rectangles on the N810), and while holding down the Home/Swap button press the power button to turn it on.

If it doesn't boot and start flashing, make sure the USB cable is plugged in. It should start flashing and then reboot. You can remove the USB cable after it has booted to a normal desktop (just make sure to eject any cards that may have mounted on your computer). 

Mac OS X
There are two methods for flashing the device on OS X, using the GUI, with the 770Flasher application or using the console, much like the Linux flashing method. Both methods work fine for both the 770 and the N800/N810.

GUI with 770Flasher
This is the easier of the two methods, and should be used by most people.


 * 1) Download the 770Flasher (yes, it will work fine for flashing an N800 or N810). Latest flashers (Linux/Mac) wjhich work also for N900  are also available on Latest Official Maemo Development Environment Page
 * 2) Follow the steps above to get the appropriate firmware image.
 * 3) Drag the firmware image (will end in .bin) onto 770Flasher.
 * 4) Follow the on-screen prompts.
 * 5) You should now see Suitable USB device not found, waiting, switch on your device while holding the Home-button. Note for N810 users: switch on your device while holding the Swap button.
 * 6) Watch the messages as the image loads to the device after which it reboots automatically.

Console with Flasher-3.5
These steps cover flashing the device with OS X using the Terminal. This is the more difficult than using 770Flasher, but gives you access to the advanced options flasher-3.5 provides (like setting R&D flags, flashing only parts of the image, unpacking the image, etc).

  Follow the steps above to get the appropriate firmware image and flasher.

Now turn off your device (make sure you unplug the charger or else the device wont power down completely) and plug in the USB cable to a port on the computer and the port on your device. N900 users can't plug the usb cable yet as it would start recharging the battery. <li>Now, open up the Terminal (it's in /Applications/Utilities/) and run:

It will ask you for an administrator password, enter it. </ol>
 * sudo /usr/bin/flasher-3.5 -F <FIASCO image> -f -R

<li>It will say: </ol>
 * Suitable USB device not found, waiting

<li>First, unplug the power cord from the device, as this will prevent it from updating. Then take your device, and hold down the Home/Swap button (looks like a little house on the N800 and 770, and two overlapping rectangles on the N810 users do not need to hold down anything), and while holding down the Home/Swap button press the power button to turn it on. N900 users press u button and plug the usb cable. Release button when flashing process begins.

If it doesn't doesn't boot and start flashing, make sure the USB cable is plugged in. <li>It should start flashing and then reboot. <li>You can remove the USB cable after it has booted to a normal desktop (just make sure to eject any cards that may have mounted on your Mac). </ol>

N900: XP (SP3) / Vista (SP2) / Windows 7
Microsoft Windows users willing to update the N900 can use the Nokia Software Updater or see the Flasher documentation.

NOTE: at this moment i've downloaded italian version of NSU and to make it work with Windows 7, i configured it for Vista compatibility.--pippomu 16:18, 14 January 2010 (UTC)

It is possible to flash the N900 directly without using the Nokia Software Updater (NSU). This is handy when you like to update the device with the same firmware that is already installed on the N900 (reflash). The NSU will update only if there is a version newer than the one installed on the device.

To flash directly from the XP/Vista/Windows 7 command line, follow these steps:
 * Download and install the latest version of Flasher (e.g. maemo_flasher-3.5_2.5.2.2.exe)
 * Download the latest firmware (.bin) file and save to %ProgramFiles%\maemo\flasher-3.5\ (default installation path of Flasher) or to the custom path of your choice.
 * Fully charge the battery.
 * Unplug charger and switch off the device.
 * Open the Command Prompt by going to Start then Run (or Windows Logo key + R) and type cmd then press Enter.
 * Change directory to the flasher's program path (TIP: Use the TAB key to auto-complete the commands and file-names)
 * cd "%ProgramFiles%\maemo\flasher-3.5"


 * Connect the USB cable while hold 'u' key on the N900 (details on the wiki)
 * Run the following command:
 * flasher-3.5.exe -F RX-51_2009SE_2.2009.51-1_PR_COMBINED_MR0_ARM.bin -f -R

Remember to replace the RX-51_2009SE_2.2009.51-1_PR_COMBINED_MR0_ARM.bin with the firmware you wish to update with.

The update will take about 3 minutes after which the N900 will reboot and display the Welcome screen with Regional settings.

N900: Vista (64bit)
According to this post, you need to turn on the loading of unsigned drivers. This is done by choosing the option "Boot without checking for signed drivers" (or something similar) in the boot-menu. To display the boot-menu press the "F8" key as soon as the windows boot process starts. The rest of the process is similar to XP.

N900: Vista & 7 (64bit)
An alternative approach is to either download Ubuntu LiveCD and burn it to cd or create a persistent installation to usb disk. After that you must get (another) usb stick where you will download maemo_flasher-3.5_2.5.2.2_i386.deb -file (versions may vary) and firmware files needed for reflashing. Additionally one can save this page to usb stick just in case.

After that you only boot your LiveCD or persistent Ubuntu, install Flasher (doubleclick the file should work fine) and after that follow instructions from Linux - chapter.

N770/N800/N810
Internet Tablet users can go to the appropriate support page for their device (N810 WiMAX Edition, N810, N800, or 770), download and install the Software Update Wizard, run it and follow the on-screen prompts.

Flashing the eMMC in the N900
Flasing the eMMC resets the MyDocs folder contents to factory settings. N900 users don't need to reflash the eMMC of their device. If you are reading this it's probably because you got a pre-production device e.g. in the Maemo Summit. If you have a sales unit and you have problems with your eMMC you should contact Nokia Care.

Also note that any backups created in your MyDocs area will need to be copied off the device to be safe across an eMMC flash as the MyDocs area and other partitions on /dev/mmcblk0 will be erased.

Note that the eMMC images available do not contain pre-loaded maps. If you reflash your eMMC you will lose them (the Maps application will work as usual but you will need to download the maps needed).

In order to flash the eMMC, follow these steps:
 * Fully charge the battery (IMPORTANT!!)
 * Unplug the USB cable from the device.
 * Turn off the device.
 * Install Flasher for your OS (Linux, Mac OS X or MS Windows)
 * Grab the Vanilla eMMC image (.bin file) from the Nokia repository
 * Navigate to the directory where the image file was saved.
 * Plug in the USB cable into the computer.
 * Execute the following command (in linux you have to be root!):
 * Windows
 * flasher-3.5.exe -F RX-51_2009SE_1.2009.41-1.VANILLA_PR_EMMC_MR0_ARM.bin -f -R


 * Linux
 * ./flasher-3.5 -F RX-51_2009SE_1.2009.41-1.VANILLA_PR_EMMC_MR0_ARM.bin -f -R


 * Debian based Linux (e.g Ubuntu)
 * flasher-3.5 -F RX-51_2009SE_1.2009.41-1.VANILLA_PR_EMMC_MR0_ARM.bin -f -R

flasher v2.5.2 (Oct 21 2009)
 * Text similar to the following will be displayed on the computer:

Image 'mmc', size 241163 kB   Version RX-51_2009SE_1.2009.41-1.VANILLA Suitable USB device not found, waiting. USB device found found at bus 001, device address 006. Found device RX-51, hardware revision 2101 NOLO version 1.4.13 Version of 'sw-release': RX-51_2009SE_1.2009.42-11.002_PR_002 Booting device into flash mode. Suitable USB device not found, waiting. USB device found found at bus 001, device address 007. Raw data transfer EP found at EP2. [writing    74 %  179200 /  241163 kB 13180 kB/s] Image(s) flashed successfully in 26.848 s (8982 kB/s)!
 * Plug the USB cable into the N900.
 * The dim Nokia screen will be displayed for a few seconds followed by progression dots. Text similar to the following will be displayed on the computer:
 * The flash will take around 1 minute after which the device will reboot.
 * The bright Nokia screen will come up on the screen with the USB icon on the top right followed by progression dots with yellow LED blinking for a few seconds. The device will then turn off and go into charging mode with the yellow LED blinking (NOTE: If the device appears to reboot, unplug the cable.)
 * Unplug cable and wait for device to turn off completely. You may hear a sound (punk) of the device turning off.
 * Having flashed the eMMC, you should now flash the firmware of your device.

Seamless Software Update
SSU is Nokia's new method for upgrading the devices over-the-air without requiring a reflash. When Nokia pushes an update over SSU, you will see an update notification and be given the option to install the update—just like with your computer.

Generally speaking, SSU updates should be relatively pain-free, but there are a few issues to watch out for.
 * If you have an aftermarket kernel or intifs installed (like the rotation support kernel or fanoush's bootmenu) and a kernel or initfs upgrade is pushed, they will be overwritten and you'll need to wait for your kernel or the bootmenu to be updated to reinstall them.
 * If you have extensively modified the home directory for user "user", such as moved all the documents to a memory card or removing or leaving empty some of the subdirectories

If the update doesn't show up for you at all, you may have accidentally (or intentionally) uninstalled osso-software-version-rx*4, which is required to update. You can get it back by simply running an, for the N800, and an  , for the N810. Then updating your repository list in Application manager.

If the packages that caused osso-software-version-rx*4 to be removed are still installed, they will need to be removed completely (in the case of conflicting packages). Alternatively, for packages which are simply newer than those specified by osso-software-version-rx*4, you can install osso-software-version-rx*4-unlocked, which does not have strict dependencies.

On N900 (probably also previous devices), it's possible the application manager ends up with message stating that it's required to upgrade using the Nokia PC application. In this case please check out OTA to PR1.1 troubleshooting.

You can show the list of packages that are not going to be ugraded with. In that case, you can try using  command (as root, the app manager has to be shut down) to override. This is not supported because you can break future updates.

Troubleshooting

 * If you get a "Permission denied" error then chmod +x flasher-2.0 or chmod +x flasher-3.0 to make the flasher tool executable. You may also need root permissions, run command with sudo or su to root.
 * If you need to flash your Nokia 770 with an image from 2005 then use the older flasher called "flasher" with no number in the name
 * If you get "Error claiming USB interface: Device or resource busy" error, as root, run "modprobe -r cdc_phonet"

USB
It may help to connect directly to the computer USB ports, avoiding the use of a hub - which includes the USB ports on laptop docking stations. The USB ports in the back of a laptop may also be better than using those in the front.

Some distributions do not present the USB device in the way that it expects it. First, see if it is necessary to "mount" USB:

mount -t usbfs usbfs /proc/bus/usb

If that does not work, try patching the flasher code. This replaces the use of /proc/bus/usb with the newer /dev/bus/usb filesystem:

perl -pi -e 's-/proc/bus/usb-/dev/bus/usb\000-;' -i.backup $FLASHER

Replace $FLASHER with the path to your flasher-2.0 or flasher-3.0 Linux binary.