Wednesday, December 7, 2011

How to use Nokia N9 as music production tool - encoding your sequencer's tracks with Dolby Headphone using the Nokia N9

Nokia N9 has Dolby Headphone effect, which is gives pretty neat effect - makes the sound being perceived to be less inside the head. I have tried with several tracks that it can be helpful sometimes and I could even use that in my music. However, I don't have Dolby Headphone encoder in my Logic Studio (as far as I know). However, if you want to spend the time, you can use N9 for the task and here is how:

1. Record your (stereo) audio track in your audio sequencer (like Logic, Cubase, whatever). Add a loud beep or loud peaky drum sample to the beginning of the track.
2. Mount the N9 to your computer. Then copy the track to N9. I have not tried wav files, if these don't get indexed, you may have to do a detour and encode the file to lossless flac format.
2. Go to Settings application -> Applications -> Music. Turn on the switch Dolby Headphone.
3. Connect your computer audio input to the headphone output of your N9 (assuming you have the cable)
4. Start recording on sequencer (another stereo track) and go to Music player on N9, locate your track and play back the sound.
5. Now cut the track so that it starts from the loud peak in the beginning.
6. Line up the original track and the track you just recorded visually - the peaks should align exactly with each other.
7. Now you can cut the synchronization sound from your track and mute the original track and you have a track with Dolby Headphone encoding on it.

This roundtrip will add noise of course because it goes through analog domain (DA->analog head phone amp->analog input->AD-conversion) and it will also otherwise reduce the quality slightly. However, many synthesizers I use have only analog outputs and it does not prevent me to use them and I have never had trouble with noise. The added noise may be negligible.

This is not the fastest way to do Dolby Headphone encoding for your audio track in your sequencer probably and certainly is not the official way, but this is a neat effect that you can do with the built-in software of your N9 and is kinda awesome feature. And I think the quality of the audio output in the N9 is so good that I could consider using this myself like I explained above.

I have been using this kind of syncing with a peaking signal in DSLR movie making (where I have recorded the sound separately with a audio recorder (I have Zoom H4N for that)) and it works because unlike in the prehistoric times when you could not sync two tracks if they were from separate machines (as there was speed variation, e.g. if you had two drum machines from same manufacturer, set both to 120 bpm and then record both separately and then try to line up the tracks, it started going out of sync in mere seconds if these were not midi synced with each other), but with modern equipment this is not a problem. The tracks will line up nicely.

N9 Software Update with MacOSX or Linux (part 1)

This has been available for some time, but in case you have not noticed it, the new software release really worths installing as it significantly improves the performance of the device. You can see that for example the scrolling smoothness will be improved after updating from. Latest software release for Nokia N9 via Nokia page is 20.2011.40-4.

You can get a Mac and Linux flasher from here:

The flash image is not currently available outside Nokia but is inside the exe that you can download from the Nokia web site for updating the N9. Unfortunately this exe obviously only runs on Windows (I for example don't have any Windows machines around and for me the Windows exe is completely useless).

If someone manages to extract the flash image from the exe, it can be in theory flashed with Mac and Linux flashers. If you manage to succeed with that, please let me know and I will mention about it on my blog. Please write me at karoliina dot t dot salminen at gmail dot com or write to the comments on this post (please note that the comments are moderated to avoid spam and it will take time for me to approve them, so don't be afraid if you don't see them appearing immediately).

I tried to send a question about this to Nokia customer care [about how can I update my N9 with my Mac] but I was unable to do so because the form required all the lengthy numbers like serial number and my personal N9 was not with me today so I could not check it.

UPDATE: Got information that there indeed is a beta version (unstable) Mac Nokia Updater out there. It does not state that it would support Nokia N9. I downloaded it and tried it with my N9. It didn't work, it stated that N9 is not supported.

Also people have been using a software called navifirm to extract the flash image out of the Nokia software updater exe to enable flashing it using Mac. However, according to my Googling this software also runs on Windows, so it may not be so straightforward for Mac users to use that route. Maybe the beta version of the software updater for Mac is the best bet at the moment in case it would start supporting N9 (that I hope but don't know).

It seems I still don't have a solution for this. If you know a working solution how to get N9 flashed with Mac, please let me know. If I will find a solution for this, I will post a new blog post with instructions how to do it with Mac.

Sunday, February 27, 2011

More QML learnings

I was trying to figure out how to connect button click to C++. Here is very short how (sorry for bad formatting due to this html which does not like code):

For this I had these includes:
#include < QtGui/QApplication >
#include < QString >
#include < QDeclarativeEngine >
#include < QDeclarativeView >
#include < QtDeclarative >
#include "qmlapplicationviewer.h"
#include < QDebug >

Then continued with my program specific includes

int main(int argc, char *argv[])
QApplication app(argc, argv);
QmlApplicationViewer viewer;
qmlRegisterType < Metar > ("MetarClasses",1,0,"Metar");
Metar met;

return app.exec();

metar.h (from my unfinished application):

#include < QDeclarativeEngine >
#include < qdir.h >

class Metar : public QObject {

explicit Metar(QObject *parent = 0);
QString readMetar(QString location);

public slots:

void replyFinishedSlot(QNetworkReply *reply);
void retrieveMetarClickedSlot();

QNetworkAccessManager* nam;



implements clicked function

void Metar::retrieveMetarClickedSlot(){

qDebug () << "Click" << "\n";
QString myreply = readMetar("EFHF");
qDebug () << "METAR=" << myreply << "\n";


Then QML:


import Qt 4.7
import QtQuick 1.0
import MetarClasses 1.0

Then button that sends click to the metar class:
id: met


anchors.centerIn: parent
height: 50; width: 400
text: "Retrieve metar"

(The button is custom button not defined in this snipplet, use your own button or button from meego (follow Kate Alhola's Forum Nokia blog's instructions how to do that).

Monday, November 22, 2010

Two My First MeeGo Conference Videos Online

I was shooting a lots of videos at the MeeGo conference with my HDSLR equipment and I managed to put the first ones online. I will upload more videos later, but I decided to get these published now that I have something in a timely manner shortly after the #meegoconf.

These first two do not feature any presentations or presenters, devices (like the Lenovo idea pad which I did not receive myself btw), they are just trying to illustrate the location and few attendants. The latter one has myself also for a short moment visible.

First one (not color corrected, no music, clips just joined together):
Raw footage from Aviva Stadium

Second one (color corrected, with music):
Aviva Stadium (with Music)

If you were there, I hope you like the imagery I captured and it will help keeping the first MeeGo Conference in your memories.

I may publish some of the videos later on Vimeo but because I am not plus member, I can't upload there more than one video per week, therefore these first ones are coming via Youtube (worse quality), sorry about it.

Wednesday, October 27, 2010

First learning project with QML, the very basics - how to make a button

There has been a lots of discussion about the QML recently, so I decided to look at it myself as well. I think that QML is a very good new technology in the Qt and it makes it very much easier to implement out of the box UIs which are not bound to traditional UI logic, e.g. to what for example traditional desktop toolkits (like gtk+) tends to limit.

After one evening of doing things with varying success (in some places syntax is a bit weird and it required some patience to get over it) for one evening and I got a simple button and a dialpad with buttons implemented. Well it is not very usable dialpad, it even does not have 0 or any other buttons that might be necessary on it. Actually I was thinking of doing a calculator and that's why I collected the buttons like this. I did not try it on N900 yet, but started trying it out on desktop because it is the fastest way to learn this new thing. After getting into it it started to feel pretty nice and many of the difficulties I immediately faced in the beginning were RTFM errors. Good idea is to read some documentation about it before swearing too many curse words - after all it is not bad at all. I got some help from Kate Alhola who is a guru with the QML already and it saved my time a little bit.

Here is what I did: I downloaded latest Qt SDK 4.7.0 to my Mac. I also installed it on my Linux laptop, but this example I created in the evening on Mac. I created empty QML project with Qt Creator. I added the following files to the project.

qmlwiz.qml (this is going to be my main, renders here a numeric keypad)
SimpleButton.qml (this contains the button code)

Unfortunately Blogger strips down all indents and the code looks a bit ugly, but I hope you can still read it somewhat. At least this is quite short reducing the chance of confusion.


import Qt 4.7

Rectangle {
id: simpleButton
width: 60; height: 60;
radius: 10
border.color: "gray"
border.width: 2

gradient: Gradient {
GradientStop { position: 0.0; color: "gray" }
GradientStop { position: 0.33; color: "lightgray" }
GradientStop { position: 1.0; color: "darkgray" }

states: [
State {
name: "up"
PropertyChanges { target: down_anim; running: false }
PropertyChanges { target: up_anim; running: true }

State {
name: "down"
PropertyChanges { target: down_anim; running: true }

// transition is unfinished, possibly not needed at all, because states take care of it
transitions: [
Transition {
from: "up"; to: "down"

MouseArea {
anchors.fill: parent
onPressed: parent.state = "down"
onReleased: parent.state = "up"

SequentialAnimation {
id: down_anim
NumberAnimation {
target: simpleButton; properties: "scale"
from: 1.0; to: 0.8; duration: 100
easing.type: "OutExpo"

NumberAnimation {
target: simpleButton; properties: "opacity"
from: 1.0; to: 0.5; duration: 100
easing.type: "OutExpo"

SequentialAnimation {
id: up_anim

NumberAnimation {
target: simpleButton; properties: "opacity"
from: 0.5; to: 1.0; duration: 10
easing.type: "OutExpo"
NumberAnimation {
target: simpleButton; properties: "scale"
from: 0.8; to: 1.0; duration: 10


Text {
anchors.centerIn: parent
id: button_text
text: "0"
property alias label: button_text.text



import Qt 4.7

Rectangle {
width: 800
height: 480

transform: Rotation { origin.x: 30; origin.y: 30; axis { x: 0; y: 1; z: 0 } angle: -10 }
Rectangle {
SimpleButton { x:100; y:100; label: "7" }
SimpleButton { x:100; y:100+64; label: "4" }
SimpleButton { x:100; y:100+64+64; label: "1" }
SimpleButton { x:100+64; y:100; label: "8" }
SimpleButton { x:100+64; y:100+64; label: "5" }
SimpleButton { x:100+64; y:100+64+64; label: "2" }
SimpleButton { x:100+64+64; y:100; label: "9" }
SimpleButton { x:100+64+64; y:100+64; label: "6" }
SimpleButton { x:100+64+64; y:100+64+64; label: "3" }

Text {
text: "Karoliina's Magic Keypad"

To run the application, there is a button with green triangle on near to the bottom of the left hand side toolbar on the Qt Creator. When the main program file is selected on the file list and this button is pressed, the program is run from Main.

I looked the documentation further and discovered that there is also a repeater functionality which can be used to build e.g. the dialpad or calcpad shown above without repeating the SimpleButton instantiations manually for each number.

There is plenty of room to make this nicer, actually I like a lot a such button that is composited from two layers: basic layer illustrates the button itself. Then a translucent highlight layer is composited on top of the button when press down occurs. When mouse button release occurs, the composited top layer is faded away with alpha channel ramp. I may try that next, but I did not have time to do the graphics for the highlight yet (as it looks the best when it is made with e.g. Inkscape and not attempted computationally). I may try that later. Now I wanted to finish something before going to sleep.

Bottom line is that QML is very nice and super easy. With short time it is possible to learn to do some quite nice things already. I rotated the scene a bit because I like how the menus on Colin McRae: Dirt are rotated. Actually with QML it is very easy to make similar dynamic animated rotation so that the scene slightly turns by itself on time back and forth. To do that, I was thinking using the NumberAnimation. I may try that after doing the composited button which I think is even cooler. Then I need to also hook these to C++ application to do the calculation logic on the C++ side. Kate has a nice AR-Drone control app doing this exactly already, so I need to look her code to see how to do it. Quick look reveals that it is very easy. I need to try maybe tomorrow if I have time.

Thursday, June 24, 2010

Karoliina and Meego band live playing Meego-Song

We had an opportunity to play live at Nokia Summer Party. I had earlier composed this song for our internal team building event, but then I went and asked from Eastway if we could fit our band to the schedule. So this is it, engineers from Meego playing live! It was fun. Jani Mikkonen made on-topic nice lyrics on it. It was fun for us! I hope you will enjoy it. I play the Nord Modular, Jani Mikkonen is singing and Peter Vajda is on bass. The rest of the band is myself on the last few weeks at my home studio, playing the tracks in the Logic Pro one by one. The final part has very many tracks and voices at one time, sad that it is hard to hear from this recording. We will put a proper hifi quality soundtrack later online separately.

Here is the vid. Enjoy the summer:

Meego Band Live on Vimeo:

Yes jou meegou!

Wednesday, February 17, 2010

Wanna send SMS from your app? Easy to use SMS and Messaging API to Maemo 5

Are you a developer and are you interested in messaging API (on your N900)?
Kate Alhola recently released a very interesting blog post about the API she created and it seems that it got under the flood of the MeeGo related posts. So here is her great article, please go and read it if you are interested on this, I think it is worth it:

Easy to use SMS and Messaging API to Maemo 5

Wednesday, January 20, 2010

Why Maemo is a powerful platform? Because of native applications!

I have been thinking what is the major difference of Maemo compared to many other platforms, and I think it is that it offers native Linux for developers. Instead of living in the limitations of javascript, Maemo enables you to do much more and enables you to use the full computing power available from this little computer. I feel that the train went already for Java, I was in the middle of the previous Java-bubble that pretty much exploded in around year 2000 depression. Been there, experience it first hand. Needless to say I don't believe in Java or .NET or similar hypes anymore. The future is for mixed offering including both native and high level environments. And that is what Maemo exactly is today, you can use both high level languages _and_ more importantly low level languages.

Coding native applications can be tricky for newbie developers, but the possibilities are vast compared to running just for example javascript on top of some runtime or some proprietary environment with proprietary closed APIs.

What helps nowadays more in Maemo is the Qt, it makes the development of native applications a magnitude easier and more efficient. Instead of tinkering a lot with the user interface, now you can build one even with Qt Creator / Qt Designer.

Qt for Maemo 5, that Antonio Aloisio and Kate Alhola among others made it possible with their long work of hildonizing Qt, is now available as beta now from the Qt-labs. This technology luckily became officially supported from the roots of community supported port and hopefully this will get now even greater audience than before and attract more Maemo developers and prospective Maemo developers than before.

While Gtk is available and Maemo 5 applications have been done with Gtk, I would recommend to use Qt in the new future projects. PeterMaemo is saying that Qt is "forward-compatible technology on Maemo for years to come...", I want to believe in that because the most wise thing to do is now stick with Qt for years to come to have best possible backwards compatibility for UI applications.

Recently there have been interesting development on native iPhone apps which utilize the power of the CPU (which would not be possible with some runtime without the CPU of the device being a supercomputer), like X-plane flight simulator, a controller for RC aircraft that streams video to the device and uses augmented reality to make a game on top of the cake, Voice Band where one can sing notes in a sequencer which translates them to notes and plays back with instruments so one can do convincing sounding compositions on the road without any musical instruments other than one's voice etc.

I would be eager to see this kind of apps to emerge on Maemo. Maemo 5 has OpenGL ES 2.0 support, Qt, and a native application development environment. I think that is very cool, and one can do really creative and innovative things with it. If somebody will do X-plane quality simulator for N900, I will certainly even willing to pay for it. Same goes for Voice Band, I would eager to use it when I am not front of my iMac which is stationary in the corner of our living room - you know, you can't really control when and how you compose, the ideas just pop in the head by itself in uncontrolled manner and they are gone (at least happens in my case) if they are not right away utilized. And I would like also augmented reality apps for the Maemo. Maemo has great camera and it is the most open phone out there, so I would think it would be the ideal place to hack this kind of things. And what's more, there is even TV-out on the Nokia N900, I was thinking that one could connect data glasses to the TV out potentially and the image from camera and some computation could be used as augmented reality - not just in someday in the future, but right now today on Maemo 5! If you have some great idea, now it is a good time for pursuing it. Just remember to use Qt as UI toolkit and it has a good chance to survive also the future incarnations of the platform (you may need to do modifications to places where you use the lower layer, but if you do it wisely and in portable manner, you might not be so unlucky with future generation of Maemo and the Maemo devices).

A long time ago I was doing a loudspeaker box design program with Qt (actually that was before I even joined Maemo). The project unfortunately almost died. However, Kate found one day a backup from one hard drive and she uploaded the code to our home gforge. Luckily it worked out of the box with Qt 4.5.x on Today's Ubuntu and possibly will also work with Qt 4.6. And luckily enough, the UI was actually designed with Qt-designer, so basically it is easily replaceable, and I can possibly produce a Maemo-version. Loudspeaker box design program may be niche, but since the current availability of them for other platforms than Windows is poor, it could be possibly cool to make this application a reality. It currently calculates correctly just closed box and the vented box calculation is broken. I will look if I can make it work with the vented boxes as well and then it could become somewhat useful compared to otherwise nothing available. It will not have all the features of e.g. WinISD initially, but it is cross platform and will run on Mac, Linux and Maemo, so that should be something. The cool thing about Qt is that you don't need any high level language that would potentially cripple the features and performance to achieve cross platform compatibility (the calculation algorithm takes some time even on desktop machine, so it would be possibly too heavy for some Java app or similar). I think I will give it a try because it turned out that I will need this little software myself right now, so do it yourself is the best help yourself. It will be free GPL software.

I hope many people get inspired with the vast possibilities of the great Maemo platform and start making really cool things that utilize the CPU and GPU of Maemo device fully. Anybody can for example write a simple calculator app with some high level language, or maybe like somebody wrote the silly "I am rich -app" for iPhone, even entirely on QML, but when there are dozens of little calculator apps and silly apps which have no usefulness after 1 minutes of trying, it starts to be no point to be yet another on the sea of many. My recommendation: find something that does not already exist, get yourself an inspiration, aim for superhigh quality, and just go for it! Maemo is cool, but it is even cooler with your app, and your audience will love your creation!

Tuesday, December 15, 2009

Nokia N900 in Amsterdam

I created another video (I previously announced Maemo summit video). This video is also from the Maemo summit trip, but features more about the Nokia N900 Maemo 5 user interface - if you haven't tried it yourself, it is something unlike anything you have used before, in a positive way - I liked this chosen Maemo-5 UI concept from the very beginning and I was happy to see it becoming reality. Try N900 in a Nokia flagship store or somewhere else if you are still thinking and not already an owner of the device.

The Bounce Evolution, desktop and browser were all filmed in a hotel room in Amsterdam. Then there are few scenes from the city and new scenes from the Maemo summit - featuring possibly some of those who were missing from the previous Maemo summit video. I intended to use the footage in another video, but I did not finish it. I found the reuse for it on this video. I hope you like it. The UI videos are not cut, just trimmed - meaning that what you see is what you get.

The video can be watched in Youtube in the following URL:

Nokia N900 in Amsterdam

Video: Karoliina Salminen
Music: Karoliina Salminen
Music remix: Juan Manuel Avila

Few words about the music remixer artist: Juan is from Fin-music mailing list - it was a virtual gathering place a group of hobbyist musicians (which were specialized to electronic music and who almost all wanted to do some Jean-Michel Jarre) used to have while they were gathering around exceptionally talented artist that called himself Fin (Christian Worton). We were sharing our creations with each other and giving feedback and sharing ideas and tried to sound like Fin (Fin sounded superb by default). Juan was one of the active members on the list and luckily now Facebook has connected this group of fellows again. Juan also composes his own music (I have few of his CDs he have given to me) but he is also excellent in doing remixes. Many thanks for him for making a remix of the Maemo summit opening soundtrack (please see my maemo summit opening video if you want to hear the original to compare, you can find it on youtube, by looking the list of my videos, it should be there one of the first ones on the list as it is a quite recent video of mine).

Friday, December 11, 2009

Maemo Summit 2009 video

I recorded quite a bit video footage at Maemo Summit 2009 which was held in Amsterdam, Netherlands. I did not have presentation there (because my proposal did not get approved (clutter app development)), but I recorded what the others were talking about, the people attending, the happenings around the Maemo summit 2009 and the place, Amsterdam.

I have been editing the footage for a quite some time now and finally decided to release the first my video about Maemo Summit despite I have only clips from perhaps 1/5 of the scenes I was filming at the summit. It is three and half minutes and features 720p HD video and music. No speeches, just audiovisual experience to deliver some feelings from Maemo summit 2009.

Be sure to click the HD and full screen buttons for a better viewing experience.

Maemo Summit 2009 Video

The video was shot with Canon EOS 5D Mark II + 24-105 4L IS USM at 1080p30 and edited afterwards with Final Cut Pro and then downgraded to 720p30 for Youtube. I hope you enjoy the short video. Please give me also feedback. Comments on my blog are enabled for the first two weeks after the release of the blog entry.

Wednesday, November 25, 2009

New ring tone your new Nokia N900: Superlectro

You have got new N900 but having hard time which ring tone to choose for your device and the songs you have are not suitable length and are not looping? Think no more, here is the solution:

I created a new ring tone intended to be used with the Nokia N900. The style is electronic and I clipped it so that it (almost perfectly) loops, so when you set it as ring tone and it continues to play, it continues from beginning (almost) seamlessly. The song sounds surprisingly loud on the device, thus justifying that it can be used as ring tone.

You can download the song from my page:
Direct download link

If you have any difficulties with the above direct link, please try going to this page and then download the song manually by clicking the download link:
Superlectro Ringtone Song page on

Click "Lataa mp3" link to download the file in case the page represents itself in Finnish to you and if you don't talk Finnish.

I will upload the file later to server, but it is not there yet. It is likely to appear later to url: -folder.

To install the ring tone to Nokia N900 device, do this (it is very easy, but steps are presented here just in case you are new to the new unconventional UI paradigm of the Maemo5):
1. either download the song with the device browser directly or if you use your computer, first copy the mp3-file to the device.
2. Go to Settings
3. Select Profiles applet
4. You see page with Silent and General -buttons. It is pannable. Scroll (pan) it down. Ring tone button comes visible.
5. Press the Ring tone button to choose the ring tone.
6. Click Add on the right hand bottom side of the screen
7. Go up from Audio clips folder since it is most likely not in the audio clips folder with the button located to the left hand top side of the dialog.
8. Point your ring tone mp3 file (you need to point the file, you can't choose Artist/Album/whatever)
9. If you did it right, the new ring tone starts to play
10. Move the volume slider of the ring tone to maximum (because this is hifi-recording it is not _that_ loud for the little speakers of the N900, even if it is loud with my terms).
11. Click save and you are done!

Next time somebody calls you, you have personalized a ring tone not everybody else has, unless everybody else downloads my ring tone also of course. I hope you like it and have fun with it. You can use this of course with any device, but I have only tested it on N900 and with the speakers of N900 it sounds quite good to me (irritation level with this tune is low + volume level is good (=loud enough to be heard from pocket in a somewhat noisy environment) when it is set to max).

Thursday, October 15, 2009

Maemo Summit 2009 Opening Video on Youtube

Maemo Summit 2009 Opening video on Youtube

My computer just finished uploading the opening of 2009 Maemo Summit to Youtube. It features the N900 video and Peter Schneider's welcome. If you see embedded version of this video, please make sure you click the Youtube logo to see it in HD (after clicking HD, you can click full screen to get the most benefit out of it).

The video Peter Schneider plays features my music. The video content is from two Nokia N900 videos that I remixed together. I edited the soundtrack of this video so that the music part mixes sound from the event (same thing but poorer quality) and the original soundtrack so that the music has higher fidelity than what you could record on the N900 hall on Maemo Summit at Westgasfabrik. It was pretty hard to sync the two soundtracks together. I am not so advanced user with Final Cut Pro yet and it involved lots of handwork to do it (zooming and looking the waveforms closely on Soundtrack Pro).

Unfortunately I was kind of busy with releasing this (since people seem to be eager to see the videos now rather than later), so editing and filtering is not best possible and there is for example some visible noise on it. The film was filmed with Canon EOS 5D mark II with ISO setting (automatically turned into that) 25600 (the very high ISO explains why there is some noise in the video - in same conditions my old video camera would have turned almost black and white and greenish and would have produced quite low resolution video). The video was shot in the P-mode that automatically sets the ISO etc. values. I propably should have shot the video in the M-mode instead but I had too little time to set it up with the M-mode before the show started.

I do all filming nowadays with the Canon EOS 5D mark II, and have stopped using video cameras. The lens used was Canon EF 24-105 f 4 L IS USM.

Anyway, have fun with the video:

Wednesday, September 2, 2009

Hands on with the new amazing Nokia N900

There has bee a lots of interest around this new device and the Maemo 5 operating system. Lots of positive comments and then I have read some comments where people doubt that the transitions would be just some flash animations and not a real thing (which of course is not true). Well, this is a OpenGL hardware accelerated Maemo device, and all you see is real. Quim Gil just posted on Twitter a link to a new video showing how the Maemo UI works, if you had doubts, you can put the doubt aside and see by yourself. The user experience is slick and beautiful.

You can find the video from here:

In my opinion, the UI experience on the Maemo 5 has improved greatly over what it used to be and also over the competition. It is really pleasant to use and there are not so many things that would be annoying. There certainly is lots of wow, and this kind of shows the innovation these days is occuring in the mobile space rather than on desktop, desktop environments are already lagging behind and the transitions on these UIs are not so practical they are in Maemo where they are all well thought and well implemented and not just random eye candy and special FX without purpose. Maemo 5 really rocks on this segment.

There is also an article about hands on experience on N900. Slashgear is reporting from Nokia World conference. There is both video and lots of good pictures included. This shows how the device looks like rather than the UI. The video I mentioned above is better showing how the UI functions.

And here is yet another hands on video. This is also very good:

And here is the replacement for a gaming console.

The Nokia N900 can be used as accelerometer equipped controller and connected to a TV. Hint for game developers: Here is the great platform to start developing games. The platform supports full OpenGL ES 2.0 and a OpenGL-ES game does not even need to care that much what Maemo version it will run on, Maemo 5, Maemo 6, and the GL is standard. It is not a bad long term investment to invest on Maemo. The N900 has a capable graphics accelerator (for this small mobile device) as can be seen from the Bounce game and from also the UI which heavily relies on the accelerated 3D graphics. The capacity of the device is great - it has plenty of RAM and there is plenty of flash too on the user's home directory. And if the RAM would not be enough, there is also virtual memory like on any modern operating system nowadays. The games don't need to be that simple and amateurish anymore "mobile games", I am quite confident that anything that has been done for Wii could be done for this device, in other words, this could be used as a serious gaming device despite that is not what it was primarily targeted for (as it is Internet device really). But like computers, there are many uses for the single device. Also, the device can be always connected, so massive multiplayer games would be superb on this. Looking forward to try some serious 3rd party games in the future! Hey Austin, if you read this, please port the X-plane, I want it.

Thursday, August 27, 2009

Nokia announced Maemo 5 based N900

Our secret N900 "The Device" is no longer so secret as it just got announced. I can't though show yet my own videos about it (I will post them some time later, so stay tuned), but there is already plenty of announced material that might interest you. Others have already announced links to them I am sure. I really love our device and I am sure you want it too!

New site, lots of cool pictures and information:

There is a video in Youtube (not my video, but cool nonetheless):
N900 interaction documentary

I recommend watching the above video if you are eager to see (I am sure you are) how our completely renewed fancy UI works. It is very cool and it works!

Friday, November 28, 2008

New ring tone for your Maemo device or any other mobile device

I recently created a new song ( these can be found from my music blog from ) and here is a shortened version of it which I tried to make useful as use as a ring tone for mobile devices. It is a bit more equalized and bit more compressed also than the hifi-version of the song. By all means, you can use also the actual song as a ring tone, but this has been cut to start from the middle to be more useful - ring tones usually play only a short time and long intro part is not very useful on them then.

I have this on my N810 and also in my N95 and I think it works pretty well. You can in principle use it with any mobile device which understands mp3 format and allows you to assign these files as ring tones.

I am planning to do a measurement of the frequency response of the tiny speakers to equalize this better for them (now this has too much mid frequencies maybe for the tiny speakers, because this mix is still "almost hifi"). I haven't done that yet, I should dig my measurement microphone from storage to be able to do that (the Internet tablet / phone mix would be counter-equalized with that). However, this version already works on your device, so feel free to use it.

Download it from here:
Sky Party - ring tone version 1

The file bitrate is 128 kbit/s and the file size is 2188433 bytes which is around 2MB. You can install it by for example reading this with the N810, saving the file and then assigning it as a ring tone for the internet call. Alternatively you can download it with your computer, use the USB cable to connect the computer to the device and then copy the file to the device's file system.

If you are using Mac to download the file (instead of the mentioned Internet tablet for example), you may need to right click the file with CTRL + mouse button or otherwise the Quicktime starts to play it instead of downloading the file.

All feedback is welcome.

Monday, October 13, 2008

Maemo videos

I am back, with a blog on another service. I attended the Akademy 2008 and Maemo Summit 2008 conferences. I have created a video of both of them. These are no presentation videos but rather attempt to record the spirit of the time and place to a collection of video clips which are presented in a sequence on these short movies. Both conferences were quite interesting and a success. It was great to meet new people, especially on the Akademy conference, I have been participating many years in the Guadec conferences, but this was my first Akademy.

Here is the Akademy video. Nokia gave devices for KDE developers and I have quite many faces who received one on the video. Have a look if you are interested:

Akademy 2008 KDE conference - Nokia gave out N810 devices for free from Karoliina Salminen on Vimeo.

Kate Alhola had linked to my Maemo summit video on her earlier post. Because of technical issue on her blog software, she embedded the Youtube link. The Youtube offers poor quality, especially the audio quality is severely degraded since Youtube only supports mono sound. Here is the same video in 720p HD quality and stereo in the Vimeo-service (by the way it is the best video service I have found to the date):

Maemo Summit 2008 from Karoliina Salminen on Vimeo.

If you go to the vimeo page, you can watch these videos in 720p HD when you click the full screen button.

Tuesday, August 19, 2008

Diablo Maemo SDK installation issue solution

In Ubuntu hardy:

Host kernel mmap_min addr value is incompatible with the QEMU version used in scratchbox.

Quick help:

$ sudo su
$ nano /etc/sysctl.conf
edit line which begins 'vm.mmap_min_addr' (search it with CTRL-W) to
'vm.mmap_min_addr = 4096'
CTRL-X for save & quit
$ sysctl -p

VDSO problem with scratchbox in Ubuntu Hardy?

Quick help:

$ sudo su
$ nano /etc/sysctl.conf

Add line 'vm.vdso_enabled = 0' to the end of file.
Press ctrl-x to exit and save.

Then run 'sysctl -p' (while remaining as root)

Sunday, August 17, 2008

Developing Qt Applications on Maemo

Kate Alhola's and Antonio Aloisio's presentation on Akademy 2008 about how to develop Qt Application on Maemo.

Developing Maemo Qt Applications from Karoliina Salminen on Vimeo.