Meego Wiki
Views

ARM/N900/Developers

From MeeGo wiki
< ARM | N900
Revision as of 19:07, 23 May 2011 by Vesku (Talk | contribs)
Jump to: navigation, search

Contents

Developer's corner

Tutorials and How-Tos

Useful tools / scripts / etc

Tips and Tricks

Touching OBS for the first time

  • msugano wanted to branch uxlanuch from the public OBS to his home in the community OBS.

On his local laptop:

$ osc -A https://api.pub.meego.com branch -cm "would like to experiment e.g. xsetroot right after the start_X_server() to enhance the UX." MeeGo.com:MeeGo:1.2:oss uxlaunch

  • The new project was downloaded to his local environment. Now, it's possible to edit the source.
  • The new project was created in the community OBS under msugano's home (Build Service > Projects > home:msugano:branches:MeeGo.com:MeeGo:1.2:oss > uxlaunch).
  • However, the above project page says The project this package belongs to currently has no build targets defined.
  • Hence, msugano clicked on the "build targets" to specify, but could not find any target build that looked relevant for the DE. (lbt fixed this => thanks)
  • Then msugano received the advice to use the command line instead. (The following is not needed any more, since webui now works, but anyway FYI).

$ osc meta prj Project:DE:Trunk:Testing (copy the below)

 <repository name="standard">
   <path repository="standard" project="Project:DE:MeeGo:1.2"/>
   <arch>armv8el</arch>
   <arch>i586</arch>
 </repository>

$ osc meta prj -e home:msugano:branches:MeeGo.com:MeeGo:1.2:oss (vim starts & paste the above).


Reducing memory use

On N900 MeeGo is really tight on memory. That is why it feels sometimes so sluggish. There are few things that can be done about it.

1. Remove unused applifed processes.

As dialer UI has now been rewritten, it does not use meegotouch-applifed to manage its lifecycle. Therefore, no apps are using applifed in DE, and applifed package can be removed. You can remove it from your image with:

zypper remove meegotouch-applifed ; killall applifed

2. Remove volume-control

Volume control process consumes memory. By removing this you will save memory, but you cannot change volume. This can be done temporarily by killing process meego-volume-control or permanently by removing meego-volume-control.desktop from /etc/xdg/autostart and rebooting.

Screenshot

  • How to take a screenshot?
Start widgetsgallery
Select ->debug_tools->xx_wg_take_screenshot
Command line alternative
[meego@localhost ~]$ export DISPLAY=:0 && gst-launch-0.10 ximagesrc num-buffers=1 ! ffmpegcolorspace ! pngenc ! filesink location=screenshot.png

Kernel Compiling

1. Download Meego kernel for N900

# git clone http://git.gitorious.org/meego-device-adaptation/n900_kernel.git n900_kernel

or use http://meego.gitorious.org/meego-device-adaptation/n900_kernel/archive-tarball/master to download manually

2. Compiling Meego Kernel

Execute following commands in command prompt

# export ARCH=arm
# export CROSS_COMPILE=arm-none-linux-gnueabi-

Note: You should have arm tool chain in your host machine

Enabling CAIF Protocol support for ST Ericsson Modems (or do whatever changes you need for the kernel)

# make omap2plus_defconfig
# make menuconfig  ( Note: select caif protocol support in Networking and driver sections)

Do kernel modifications here!

# make zImage
# make modules
# make modules_install INSTALL_MOD_PATH=$path to install modules


Finally kernel images available @ $Meego_kernel_source/arch/arm/boot/zImage


3. Copy modules to N900 device ( Note: Already device should have meego os)

  1. scp -r $meego_compiled_modules_installed_path root@192.168.2.15:/

Note: connect device with host via usb cable before executing this command


4. Loading Compiled Meego kernel


Download flasher from http://tablets-dev.nokia.com/maemo-dev-env-downloads.php?f=maemo_flasher-3.5_2.5.2.2.tar.gz

Load Kernel using

# sudo ./flasher-3.5  -l -k  $Meego_kernel_source/arch/arm/boot/zImage	 -b

Note: Before executing this command,please power off the device.

Now connect USB cable with device. You will see Meego home screen after 2 or 3 minuteson this page.

Starting GPRS from console

From N900 DE console or over ssh write to add Access Point Name:

/usr/lib/ofono/test/create-internet-context internet

And take use GPRS connection:

/usr/lib/ofono/test/activate-context

And deactive GPRS connection:

/usr/lib/ofono/test/deactivate-context

If somehow modem is not running (online), you have to write:

/usr/lib/ofono/test/enable-modem
/usr/lib/ofono/test/online-modem

Links

Placeholder, let's start linking relevant information

Personal tools