Nokia N900
This page or section is a stub. Ask how you can help improve leste.maemo.org by visiting #maemo-leste, look at the bugtracker (https://github.com/maemo-leste/bugtracker) or if you are able to contribute to the current page, then you are welcome to do so.
Nokia N900 | |
---|---|
Manufacturer | Nokia |
Specifications | |
Hardware Features | |
USB (Host/OTG) | Micro USB 2.0 Slave |
Software Features |
The original Nokia N900.
Notes
- If your battery is not calibrated, the battery applet will not give you any data. Charge the battery fully, and then let it discharge (almost) completely.
- Speakers are enabled by default, but don't overuse them, as you might fry them if you are not careful.
Also see: https://elinux.org/N900
Power usage right now is reported to be about 80mA, which is quite a lot, but on a good battery last for about 15 hours, this is being worked on: https://github.com/maemo-leste/bugtracker/issues/170
- https://wiki.maemo.org/N900_Hardware_Power_management
- https://wiki.maemo.org/N900_Hardware_Power_Consumption
Status
Feature | Leste supported | Notes |
---|---|---|
Kernel version | 5.0 | Mainline + PowerVR Patches: https://github.com/maemo-leste/n9xx-linux/tree/pvr-wip-5.0.y |
Serial | Yes | Requires special hardware |
Charging | Yes | |
Wireless | Yes | Involves installing non-free firmware |
Ethernet | N/A | |
Bluetooth | Not yet | Driver problems in mainline |
Infrared | Yes | TX only (hardware limitation). |
(Micro USB) | Yes | Peripheral/slave only, exposes network gadget by default. Host Untested |
Keyboard | Yes | |
Screen | Yes | Uses omapfb, not omapdrmfb yet |
3D Acceleration | Yes | Works fast(!) |
Touchscreen | Yes | Resistive |
Audio | Yes | Everything should work (minus speaker protection), but requires complex alsa configuration |
2G/3G data | WIP | Works with ofono; UI underway: https://github.com/maemo-leste/connui-cellular ; see https://github.com/maemo-leste/bugtracker/issues/76 |
SMS | WIP | Works with ofono, will using telepathy-ring, no UI yet, not enabled by default |
Phone calls | WIP | Reported to work, no UI, poor quality, not enabled by default (might require pulseaudio audio filters) |
FM Transmitter | Yes | Install v4l-utils , then enable chip and set frequency using: v4l2-ctl -d /dev/radio0 -c mute=0,tune_power_level=120 -f <freq>
|
FM Receiver | No | Depends on Bluetooth. Removed in Linux 5.4-rc1. |
Accelerometer | Not yet | Available as input device, needs MCE work |
Proximity sensor | Not yet | |
Vibration Motor | Yes | No integration yet |
TV-out | Yes | Enable in alsamixer (Jack Function in alsamixer to TV OUT), enable with xrandr --output TV --mode 800x480 --same-as LCD . Set PAL/NTSC with xrandr --output TV --set SignalProperties PAL , and scale with xrandr --output TV --set TVScale 90 .
|
GPS | WIP | Works using gps3 and gpsd, needs integration still |
Installation
Images: http://maedevu.maemo.org/images/n900/
dd the image to an sd card. If using a Windows machine, you can use Etcher NB: Etcher does not warn you before starting the flashing operation, so please be extra careful that you choose the correct device to flash to
Then boot from the sd card using either 0xFFFF/flasher-3.5 or u-boot/bootmenu: http://talk.maemo.org/showthread.php?t=81613
U-Boot setup
If you don't want to use/install Fremantle, or want to install quickly
1. Download 0xFFFF and u-boot from https://maedevu.maemo.org/images/n900/tools/
2. Turn off Nokia N900, issue the following command on PC and connect Nokia N900 to the PC: sudo ./0xFFFF -m test/u-boot-2013.04-2.bin -l
3. Open the keyboard slider on the N900, and then issue following command on PC to test boot: ./0xFFFF -b
This should present u-boot from which you can select external SD card and boot to Maemo Leste. If you are presented with a menu, select the option to boot from External SD card. If you just get a command prompt, type run sdboot.
To flash u-boot permanently, you can issue the following command (BE CAREFUL THOUGH, AS THIS WILL REPLACE THE EXISTING FREMANTLE KERNEL, ONLY DO THIS IF YOU DO NOT CARE ABOUT THE EXISTING MAEMO INSTALLATION):
sudo ./0xFFFF -m test/u-boot-2013.04-2.bin -f
Existing Fremantle
1. Install "U-Boot with kernel 2.6.28-omap1"
2. Install "Linux kernel for power user (boot image for U-Boot)". This is optional, but recommended.
3. Add Maemo Leste menu item (run as root):
cat > /etc/bootmenu.d/30-maemo-leste.item << "EOF" && ITEM_NAME="Maemo Leste" ITEM_KERNEL="uImage" ITEM_DEVICE="${EXT_CARD}p1" ITEM_FSTYPE="ext2" EOF u-boot-update-bootmenu
4. Reboot the device
Increase filesystem size
As of 2018/11, the latest pre-alpha image results in a 1.2GB root filesystem with about 100MB to spare. This can be extended, provided that your SD card is big enough. Perform the following steps on a Linux machine with none of the SD card's partitions mounted:
- assumption: /dev/sda2 is Leste root partition
- e2fsck -f /dev/sda2
- use parted/gparted/cfdisk/... to enlarge /dev/sda2 to the desired size
- resize2fs -p /dev/sda2
- e2fsck -f /dev/sda2
The latest images have a script, /etc/expandcard.sh
from https://github.com/maemo-leste/image-builder/blob/master/rootfs-overlay/common/etc/expandcard.sh
Serial
http://n900.elektranox.org/serial-adapter.html
http://wiki.maemo.org/N900_Hardware_Hacking#Debug_ports
Power Management
Run:
modprobe ledtrig-default-on
And:
echo default-on > /sys/class/leds/debug::sleep/trigger
To enable the OMAP sleep debug LEDs (on the keyboard). Open keyboard, turn off the screen with the slider, and the LEDs will turn off if the phone ever reaches sleep modes.
Currently it does not yet reliably reach any sleep modes.
Accessing MTD
List devices:
cat /proc/mtd
Mount:
apt install mtd-utils mkdir -vp /mnt/fremantle ubiattach -p /dev/mtd5 mount -t ubifs ubi:rootfs /mnt/fremantle