Editing N900 The Perfect Setup

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
-
{{ambox
 
-
|type=notice
 
-
|text=This is a wiki! So the title of this page represents the personal notion of one or a few editors. It's not "officially supported" info or advice}}
 
-
 
=Introduction=
=Introduction=
-
Since the [[N900]] has been released many developments have been made by the community. This page is to provide a generic guide to getting started with good foundations.
+
This page serves the purpose of assembling a complete and current howto-guide for the perfect N900 setup.  
-
This page will mainly link all the useful bits of the wiki and other useful information together.
+
The initial information here is based on my personal experience and the rich trove of experience which is talk.maemo.org.
 +
Please keep this page alive by adding your improvements and keeping it up to date as Maemo evolves.
-
=Hardware=
+
= Recommended hardware =
 +
* A Nokia N900, obviously
 +
* SanDisk Ultra 32GB Class 10 / UHS-1 SDHC Card (SU32-G)
 +
* PolarCell 1520 mAh battery
 +
* Standalone battery charger
 +
* USB A-A adapter
 +
* (Linux box)
-
==Hardware Accessories==
+
=== Hardware Specifications ===
-
Information on all recommended hardware accessories is on the [[N900 Accessories]] page.
+
NAND Layout
-
==Hardware Specifications==
+
  '''dev'''    '''size'''  '''erasesize'''  '''name'''
 +
  mtd0: 00020000 00020000 "bootloader"
 +
  mtd1: 00060000 00020000 "config"
 +
  mtd2: 00040000 00020000 "log"
 +
  mtd3: 00200000 00020000 "kernel"
 +
  mtd4: 00200000 00020000 "initfs"
 +
  mtd5: 0fb40000 00020000 "rootfs"
-
Information on the specs can be found on the [[N900 Hardware Subsystems]] page.
+
eMMC Partition Layout
 +
  '''dev'''        '''size'''      '''fs'''    '''mountpoint'''
 +
  mmcblk0p1  27648MiB  vfat  /home/user/MyDocs
 +
  mmcblk0p2    2048MiB  ext2  /home
 +
  mmcblk0p3    768MiB  swap
-
==Recommended Hardware Modifications==
+
[http://natisbad.org/N900/n900-commented-hardware-specs.html Detailed specs]
-
===USB Port===
+
-
One of the most common issues with the [[N900]] is the surface mounted USB port.
+
-
If you are not careful with it, the port can be ripped from the PCB.
+
-
Due to the design of the port if this occurs, it can be very difficult to repair successfully.
+
-
Therefore it is highly recommend to reinforce your USB port by soldering the casing of the USB to the PCB. Information on this is covered in great extent on talk.maemo.org
+
[http://talk.maemo.org/showthread.php?t=65568 N900 battery options]
-
[http://talk.maemo.org/showthread.php?t=75920 talk.maemo.org Fixing USB Thread]
+
=== Hardware modifications ===
-
Another common modification is to remove the locking pins on all your microUSB cable connectors. This can be done by filing them down carefully with a small file.
+
/* TODO: USB pre-broken fix */
-
The latter is important, especially if you don't feel confident in taking your N900 apart to reinforce the port.
+
[http://talk.maemo.org/showthread.php?t=75920]
-
====Inductive Charging====
+
[http://talk.maemo.org/showthread.php?t=79878]
-
Bridging the gap between a non-permanent hardware mod and an accessory the universal Qi inductive charging add-on pads have been installed both over and under the stock and Mugen battery covers, the semi-permanent installation into the microUSB port reduces dangerous cable leverage and USB port wear to nearly zero and the nearly flush USB port plug also protects the USB port from foreign object damage making the inductive charging add-on even more important to N900 owners than most users.  The USB port can be easily unplugged if needed for use in USB host, 3G modem, and mass storage modes.
+
-
[http://talk.maemo.org/showthread.php?p=1431701#post1431701 talk.maemo.org Qi Inductive Charging Universal Add-On Installation]
+
-
====Magnetic Charge Port Adapter====
+
= Initial setup =
-
There are several magnetic adapters available to both plug the USB port and also ensure a safe break-away should the N900 be dropped. No leverage to snap off your N900's fragile USB port from the PCB.
+
[http://wiki.maemo.org/Updating_the_tablet_firmware#N900 Everything about Firmware Flashing]
-
In testing the four or five pin USB adapters permit a data connection but if you do any metal work with steel it will attract magnetic particles as happened in testing, this adapter experienced a melt-down and nearly a fire one evening after falling to the floor in a workspace.
 
-
Another tested magnetic adapter has a coaxial positive and negative connections(pin and surrounding ring) It has the data pins shorted to put the N900 into fast charge mode.  while there is the hazard of magnetic particles connecting the two poles are 2mm apart and it is easier to see any foreign objects as the cable side of the connector has a blue LED allowing it to also be found easily in a dark room.  This adapter also inserted fully and had a rubber washer to buffer any drops; combined with an Otter case the adapter is nearly flush with the Otterbox armor.  This adapter requires more than just fingernails to remove in testing, but a keychain pocket knife screwdriver or nail file was sufficient to safely remove it.
+
Download flasher from the repositories
-
==File System==
+
/* TODO: Use open source flasher */
-
[[N900 filesystem|File System information]]
+
Download the firmware flasher:
 +
[http://skeiron.org/tablets-dev/maemo-dev-env-downloads/ Flasher & SDK Downloads]
-
=Firmware=
+
Download the latest official Nokia Firmware Images for your N900:
 +
[http://skeiron.org/tablets-dev/nokia_N900/ Firmware Image Downloads]
 +
  RX-51_2009SE_10.2010.13-2.VANILLA_PR_EMMC_MR0_ARM.bin
 +
  md5sum: 488809ff96a0a05479d692e9f77aeb4f
 +
  RX-51_2009SE_20.2010.36-2_PR_COMBINED_MR0_ARM.bin
 +
  md5sum: b9f8690318a3be61767826d15b8c1784
-
==Initial Firmware Setup==
+
== Flashing the device ==
 +
The following flashing procedure has proven the most stable to me:
-
So you have your [[N900]]
+
{{warning}}Always use a fully charged battery!
-
The first step especially if it's used is to flash the firmware.
+
-
This can be used to clean off any unstable software and make a clean start.
+
 +
* Turn your device off, disconnect USB
 +
* (As root) flash the FIASCO firmware image:
 +
  flasher-3.5 -F RX-51_2009SE_20.2010.36-2_PR_COMBINED_MR0_ARM.bin -f
 +
* When you get "No suitable USB device found" connect your N900 through USB.
 +
* Wait for the flashing to finish.
 +
{{warning}} Don't reboot
-
It's recommended to download the latest Nokia firmware images for your region.
+
* Flash original eMMC image:
-
The latest versions are highlighted.
+
  flasher-3.5 -F RX-51_2009SE_20.2010.36-2_PR_COMBINED_MR0_ARM.bin -f
 +
* Wait for the flashing to finish.
 +
* Reboot the device by _reinserting_ the battery
-
[[Updating the tablet firmware#N900|Firmware Flashing]]
+
Upon first login, enter your locale settings (Timezone, local time, etc.).
-
==Cloning a New N900 with BackupMenu Backup Files==
+
Run latest official Nokia SSU (upgrades your device firmware to V1.3.1) by launching App manager / Update from the applications menu.
-
Requires a good USB cable, currently fastest path to flash a new or used N900 and install the required kernel and backupmenu from the repos to make a clone of your old or broken N900. Until the steps to safely use Fiasco Flasher to flash a kernel and file system including /opt from backupmenu files the instructions below are the fastest way to recover your old configuration on a new device.
+
-
http://talk.maemo.org/showthread.php?t=100595
+
== Getting root access ==
 +
[http://wiki.maemo.org/Root_access 1001 ways of becoming root]
-
==Highly Recommended Further Setup==
+
* Add the Extras-Testing repository to the Hildon Application Managers catalog
 +
  name: Maemo extras-testing
 +
  uri: deb http://skeiron.org/repo/repository.maemo.org/extras-testing/ fremantle free non-free
 +
  dist: fremantle
 +
  components: free non-free
-
===Importance of CSSU===
+
* Add the Extras-Devel repository as well
 +
  name: Maemo extras-development
 +
  uri: http://extras-devel.merlin1991.at/ fremantle free non-free
 +
  dist: fremantle
 +
  components: free non-free
-
If you have flashed your firmware as above, your [[N900]] will now be on the last major Nokia release (PR1.3). From here onwards the Maemo Community are providing vital security updates, fixing bugs and generally moving the device forward. This is known as CSSU or Community SSU.
+
* Disable OVI repository (conflicts with CSSU)
-
It is recommended all users install [[CSSU]], of which there are two versions.
+
* Wait for repository update to finish (Hildon Application Manager is slooow) and install 'rootsh' from the system section.
-
More information on this can be found on the [[CSSU]] page.
+
* To get remote access over the network (way more comfy) install SSH server by launching XTerminal from the application menu and running:
 +
  sudo gainroot
 +
  apt-get install openssh
 +
You will be asked for your new root password.
 +
/*TODO: Change PW hash to enable passwords > 8 chars */
-
==Recommended Further Setup==
+
* Finally launch xterm and run
 +
  ifconfig wlan0
-
===Kernel Power===
+
* Write down the IP address - from now on you can use the SSH client of your choice to connect to your favorite pocket computer - enjoy!
-
[[Kernel Power]] is a community developed Kernel that provides addition features and fixes to the Kernel. [[Kernel Power]] also provides the ability to overclock the device with an additional package '''kernel-power-settings'''
+
= Upgrade to CSSU-thumb =
 +
[http://wiki.maemo.org/CSSU What's CSSU?]
-
While overclocking is not recommended and has been known to reduce the lifetime of the device, the [Kernel Power] package on it's own is recommended and will not alter your device from the standard 250Mhz-600Mhz clock speed.
+
[http://talk.maemo.org/showthread.php?t=84829 What's thumb2 ISA?]
-
It provided important features like stable [[Smartreflex]] which will significantly increase battery life.
+
{{info}} cssu-thumb contains a kernel based on kp51r1, therefore you automatically benefit from all kernel-power features (undervolting, overclocking, framebuffer, ...). See [http://wiki.maemo.org/Kernel_Power Kernel Power Wiki] and [http://talk.maemo.org/showthread.php?t=85665 Kernel Power 51r1 on tmo]
-
Please see the [[Kernel Power]] page for more information on this.
+
== Repositories ==
-
Please note Kernel Power page is heavily biased on overclocking and is provided for further reference only.  
+
Disable extras-testing - it will be replaced by its thump-compiled counterpart from the CSSU repository. Make sure Nokia and Maemo Extras repositories are enabled though.
-
===Utilise the SD Card===
+
To avoid thumb-compiled binaries being overwritten by upgrades from non-thumb repositories use the following /etc/apt/preferences file
 +
  Package: *
 +
  Pin: release a=community-thumb
 +
  Pin-Priority: 700           
 +
               
 +
  Package: *     
 +
  Pin: release a=Extras-devel-light
 +
  Pin-Priority: 500               
 +
               
 +
  Package: *     
 +
  Pin: release l=Extras
 +
  Pin-Priority: 550   
 +
               
 +
  Package: *     
 +
  Pin: release l=community-testing
 +
  Pin-Priority: 600
-
The [[N900]] has a uSD card slot, it's good to use this as much as possible to reduce flash wear from the devices eMMC.
+
== Remove unneeded software ==
 +
[http://talk.maemo.org/showthread.php?s=bcad4cd2389b67dd0911decdebb4b503&t=82641 tmo thread]
-
Many users setup there swap space(s) on the uSD card this frees up the I/O of the device.
+
  apt-get remove --purge hildon-theme-beta osso-chess-ui gnuchess osso-graphics-game-chess osso-lmarbles osso-graphics-game-lmarbles osso-sounds-game-chess maemoblocks ap-installer amazon-installer foreca-installer facebook-installer skype-installer dtg-installer tutorial-home-applet osso-tutorial-l10n-engb osso-tutorial-l10n-ptpt osso-tutorial-l10n-frca osso-tutorial-l10n-nlnl osso-tutorial-l10n-cscz osso-tutorial-l10n-itit osso-tutorial-l10n-eses osso-tutorial-l10n-svse osso-tutorial-l10n-frfr osso-tutorial-l10n-dede osso-tutorial-l10n-fifi osso-tutorial-l10n-nono osso-tutorial-l10n-esmx osso-tutorial-l10n-enus osso-tutorial-l10n-ruru osso-tutorial-l10n-mr0 osso-tutorial-l10n-plpl cherry osso-systemui-splashscreen sharing-service-flickr sharing-service-ovi chinese-font google-search-widget tutorial-home-applet osso-mahjong osso-graphics-game-mahjong osso-sounds-game-mahjong ovi-promotion-widget
-
There has been much discussion on this and applications written to help with this.
+
== Installing CSSU-Thumb ==
 +
* Visit this link using your N900s web browser: http://maemo.merlin1991.at/cssu/community-thumb/community-thumb-fremantle.install and confirm the prompts displayed in HAM
-
Further reading
+
* Launch community SSU from applications menu.
 +
* Install the proposed updates.
-
*[[Swap on microSD]]
+
= Essential software packages =
-
*[http://talk.maemo.org/showthread.php?t=84296 talk.maemo.org DISCUSS SDCard Swap]
+
The following is a list of applications which (IMHO) constitute a reasonable base set
 +
apt-get install backupmenu busybox-power cryptsetup tracker-extractor-vorbis rawcam gstreamer0.10-plugins-good-extra-formats xournal filebox fm-boost fmradio recaller swappolube tracker-cfg flashlight-extra-gtk vim flashlight-applet cal-home-widget adflashblock-css kernel-power-settings cssufeatures catoriseplus ttf-nokiapure mce-ledpattern
-
===Swappolube===
+
== Install non-optified cryptsetup ==
-
Swappolube is a package to modify memory management.
+
  wget http://maemo.merlin1991.at/apt-mirror/extras-devel/pool/fremantle/free/c/cryptsetup/cryptsetup_1.0.4%2bsvn26-3_armel.deb
-
Most users tweak this to suit their device and usage.
+
  dpkg -i cryptsetup_1.0.4%2bsvn26-3_armel.deb
-
If you're unsure where to start, the proposed settings are a good base.
+
  echo "cryptsetup hold" | dpkg --set-selections
-
More information can be found on the [[Swappolube]] page.
+
== Install & configure bootloader ==
 +
  apt-get install u-boot-flasher kernel-cssu-bootimg
 +
  ln -s /etc/bootmenu.d/20-Maemo5-kernel-cssu-2.6.28.10-cssu3.item /etc/default/bootmenu.item
 +
  u-boot-update-bootmenu
-
=Settings=
+
== USB Host mode ==
 +
[http://talk.maemo.org/showthread.php?t=85658 Host mode announcement]
 +
  wget http://atrey.karlin.mff.cuni.cz/~pali/usbmode/usbmode_1.0-3_armel.deb
 +
  dpkg -i usbmode_1.0-3_armel.deb
-
==Network Positioning==
+
USB mode can be defined through the status menu. To connect USB peripherals use a [http://www.cablechick.com.au/product_images/usb-adaptor-a-female-to-a.jpg USB A-to-A adapter]
-
If you use the incorrect settings your device may be slow at getting a GPS fix.
+
-
There is also a bug with maemo-security-certman, this has been fixed in CSSU.
+
== Configure openmediaplayer ==
 +
[http://wiki.maemo.org/Open_Media_Player OMP Wiki]
-
Make sure the latest version of your CSSU flavour is installed.  
+
Get a thumb-compiled version of openmediaplayer [http://www69.zippyshare.com/v/23534616/file.html OMP-thumb download]
 +
dpkg -i openmediaplayer_20121220-1+thumb0_armel.deb
-
Navigate to
+
As [[root]], edit file:
 +
:''/usr/share/dbus-1/services/com.nokia.mediaplayer.service''
 +
so the line:
 +
<pre>Exec=/usr/bin/mediaplayer</pre>
-
: Settings > Location > Network Positioning
+
...becomes:
 +
<pre>Exec=/usr/bin/openmediaplayer</pre>
-
then check the Location server is
+
This will replace execution of '''MP''' binary with '''OMP''' one - without physically replacing files, so you can revert back to '''MP''' by reverting changes.
-
supl.nokia.com
+
-
If Nokia's supl server doesn't give you functional AGPS (there have been reports that the Nokia supl server has been shut down) try Google's SUPL server.
+
== Faking Flash Player 12 ==
-
supl.google.com
+
[http://talk.maemo.org/showpost.php?p=1276589&postcount=2219 Flash Player on tmo]
-
=Software=
+
Get [http://www.sendspace.pl/download/YTo0OntzOjc6ImRhdGVfaW4iO2k6MTM0Mzc4MTUxMTtzOjU6InRpdGxlIjtzOjA6IiI7czo5OiJmaWxlX25hbWUiO3M6MjQ6ImFkb2JlLWZsYXNocGxheWVyLTEwLmRlYiI7czo1OiJ0b2tlbiI7czoyMzoiY2MzM2I0MDcyZTgyM2VlMTU4MDkzOWIiO30dfASDF34vasd3245bvs flashplayer 10 binaries] for maemo.apt-get remove --purge adobe-flashplayer
-
 
+
apt-get install hexedit
-
==Repositories==
+
dpkg -i adobe-flashplayer-10.deb
-
 
+
-
Maemo software works in the same way as most Linux distributions', repositories provide a secure and easy method of supplying software to end-users.
+
-
 
+
-
Information about the different repositories can be found on the [[Extras]] page.
+
-
 
+
-
==Getting Root==
+
-
 
+
-
[[Root access]]
+
-
 
+
-
=Common Modifications=
+
-
 
+
-
Please note these common modifications are here for reference.
+
-
If you are a complete beginner and do not understand you must be aware that you could damage parts of your filesystem if you mess up.
+
-
 
+
-
==Purging Unnecessary Software==
+
-
 
+
-
===Cherry===
+
-
 
+
-
With the PR 1.2 update Nokia introduced "My Nokia" an SMS subscription service on which you receive periodic texts from Nokia.
+
-
This was automatically installed/subscribed on devices and was known to cause issues with devices sending and receiving unwanted SMS messages.
+
-
 
+
-
This package is one of the first to be removed by members of the community, for obvious reasons. It can be removed by:-
+
-
 
+
-
apt-get remove --purge cherry
+
-
 
+
-
 
+
-
====Further reading on My Nokia and cherry====
+
-
 
+
-
[[PR1.2 compulsory My Nokia subscription]]
+
-
 
+
-
===Additional Unnecessary Software===
+
-
The following is deemed safe. Run in a [[Terminal]] as [[Root]] to remove unnecessary software provided with the Nokia firmware.
+
-
 
+
-
apt-get remove --purge hildon-theme-beta osso-chess-ui gnuchess osso-graphics-game-chess osso-lmarbles osso-graphics-game-lmarbles osso-sounds-game-chess maemoblocks ap-installer amazon-installer foreca-installer facebook-installer skype-installer dtg-installer tutorial-home-applet osso-tutorial-l10n-engb osso-tutorial-l10n-ptpt osso-tutorial-l10n-frca osso-tutorial-l10n-nlnl osso-tutorial-l10n-cscz osso-tutorial-l10n-itit osso-tutorial-l10n-eses osso-tutorial-l10n-svse osso-tutorial-l10n-frfr osso-tutorial-l10n-dede osso-tutorial-l10n-fifi osso-tutorial-l10n-nono osso-tutorial-l10n-esmx osso-tutorial-l10n-enus osso-tutorial-l10n-ruru osso-tutorial-l10n-mr0 osso-tutorial-l10n-plpl osso-systemui-splashscreen sharing-service-flickr sharing-service-ovi chinese-font google-search-widget tutorial-home-applet osso-mahjong osso-graphics-game-mahjong osso-sounds-game-mahjong ovi-promotion-widget
+
-
 
+
-
[http://talk.maemo.org/showthread.php?s=bcad4cd2389b67dd0911decdebb4b503&t=82641 talk.maemo.org Safe to remove?]
+
-
 
+
-
==Disable Nokia Hands==
+
-
There are three main methods to do this.
+
-
 
+
-
===Method 1===
+
-
Rename the file
+
-
: /opt/usr/share/hildon-welcome/media/Hands-v32-h264.avi
+
-
to
+
-
: /opt/usr/share/hildon-welcome/media/Hands-v32-h264.avi.disabled
+
-
 
+
-
===Method 2===
+
-
Use a text editor to edit the file
+
-
:''/etc/hildon-welcome.d/default.conf''
+
-
Comment out the last line.
+
-
: filename=Hands-v32-h264.avi
+
-
===Method 3===
+
-
Remove the hildon-welcome package, which included the bootvideo
+
-
 
+
-
Firstly gain root:
+
-
:''root''
+
-
Then remove the package by issuing
+
-
:''apt-get purge hildon-welcome''
+
-
 
+
-
==Faking Flash Player 12 for MicroB==
+
-
[http://talk.maemo.org/showpost.php?p=1276589&postcount=2219 Post on talk.maemo.org]
+
-
 
+
-
* Get [http://www.sendspace.pl/download/YTo0OntzOjc6ImRhdGVfaW4iO2k6MTM0Mzc4MTUxMTtzOjU6InRpdGxlIjtzOjA6IiI7czo5OiJmaWxlX25hbWUiO3M6MjQ6ImFkb2JlLWZsYXNocGxheWVyLTEwLmRlYiI7czo1OiJ0b2tlbiI7czoyMzoiY2MzM2I0MDcyZTgyM2VlMTU4MDkzOWIiO30dfASDF34vasd3245bvs flashplayer 10 binaries] for maemo.
+
-
 
+
-
apt-get remove --purge adobe-flashplayer
+
-
apt-get install hexedit
+
-
dpkg -i adobe-flashplayer-10.deb
+
  hexedit /usr/lib/browser/plugins/libflashplayer.so
  hexedit /usr/lib/browser/plugins/libflashplayer.so
-
 
+
5. Once in Hexedit, press CTRL+S and type in 31302e31 and press enter, the string you've just found need to be changed to 31322e31
-
* Once in Hexedit, press CTRL+S and type in 31302e31 and press enter, the string you've just found need to be changed to 31322e31
+
6. Now, press CTRL+S, type "y" and search for 31302c31 and change it to 31322c31
-
 
+
7.Press CTRL+S then "y" again.
-
* Now, press CTRL+S, type "y" and search for 31302c31 and change it to 31322c31
+
Close terminal and enjoy new faked v12.1.98.88 flash player
-
 
+
-
* Press CTRL+S then "y" again.
+
-
* Close terminal (CTRL+X) and enjoy new faked v12.1.98.88 flash player
+
-
 
+
-
== Watch 720p movies ==
+
-
[http://talk.maemo.org/showthread.php?t=77695 720p Thread - talk.maemo.org]
+
-
 
+
-
==Customizing Maemo==
+
-
Customizing the appearance of Maemo
+
-
 
+
-
[[Customizing Maemo]]
+
-
 
+
-
= Credits =
+
-
My thanks go to jebba, titan, pali, NIN101, MentalistTraceur, sixwheeledbeast, DocScrutinizer05, sEKI, kerio, freemangordon, qwazix, ShadowJK and everyone on #maemo
+
-
 
+
-
=Wiki Update Info=
+
-
:''Last Updated - sixwheeledbeast - 31 Jan 2013 21:41 UTC''
+
-
 
+
-
[[Category:Beginners]]
+
-
[[Category:N900]]
+

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)

Templates used on this page: