More hardware fun: loudspeakers comparison on Jolla!

Hello people! :)

I know, I know, I promised I’d publish this post months ago…but I’ve been very busy with my thesis (Oh, by the way, I got my master’s degree last month! Anyone looking for a Qt/QML developer? :D) so I had to postpone this until now.

But better late than never, right? :)

If you haven’t read the previous post, let me sum up what I’m trying to accomplish here:
basically, Jolla’s loudspeaker SUCKS, it does, really :)
I thought it could be fun to buy a few genuine loudspeakers from phones which are known to have loud buzzers and try implanting them in my Jolla, just to see if it would actually make a big difference.

I used GsmArena’s loudness tests (they do it for all phone reviews) to select 9 loudspeakers and then bought them from online shops.

Test method

What I did was:
1) Open the phone
2) Replace the original loudspeaker with one from the test batch
3) Record a video of my Jolla playing Jolla’s ringtone via the new loudspeaker
4) Use Audacity to analyze the audio stream and collect the raw spectrum data
5) Import the spectrum data on plot.ly to generate an interactive plot! :)
6) Analyze/Enjoy the results :)

DISCLAIMER: I am no electronics engineer, I am a software developer who loves tinkering with whatever  happens to be under his hands. This test doesn’t take impedance or resonance into account, it’s just plug-and-play fun. For example, the amplifier on the Jolla is probably another bottleneck!

Results

The results are a video and two interactive plots.

The video contains all the audio tests, so you can listen to it to form your own idea about the performance of those speakers on the Jolla ;)

The interactive plots provide an easy way to compare the loudness of Jolla’s original loudspeaker to the ones in the testbed. You can pan/zoom and show/hide some of the loudspeakers in order to make a clean comparison between only 2 datasets, for instance.

PLEASE HIDE SOME OF THE CURVES TO BE ABLE TO ANALYZE THE DATA, OR YOU’LL JUST SEE A MESS :) IT’S ENOUGH TO CLICK ON THE LEGEND ITEMS TO HIDE THE CORRESPONDING CURVE ;)

IFRAME WARNING (sorry)

Due to the fact that this plot uses a logarithmic scale (because of the dB values), it may not be easy to understand how one speaker compares to another one (i.e. -50dB vs -25dB doesn’t mean that the latter is 2x louder!).

For this reason, in the next step I converted the data to a more easily readable format.
Taking into account that the results are measured in dB using dBFS, we can give a rough estimate of how Jolla’s loudspeaker compares to the other ones by using the formula:

this will give us the amplitude ratio, i.e. how much higher/lower the amplitude of the signal created by the competitor buzzer is, using Jolla’s loudspeaker as a reference (0%). A value of 100% means that the signal amplitude was 2x than Jolla’s one on that particular frequency. Using the toggles to hide some of the curves is particularly useful to be able to get a better visual over the results :)

Try deselecting all the results but the ones from Jolla and Xperia E1 by tapping on the corresponding legend entries, for example ;)

The amplitude is related to acoustic energy, so a higher amplitude corresponds to a louder sound. (more info here)

As we can see, Jolla’s loudspeaker is pretty weak…there are some buzzers which manage to get below its level at some frequencies, but some loudspeakers are a lot louder at other ones. Xperia E1’s produces a signal whose amplitude is a massive 600% higher than Jolla’s, at 8441 Hertz frequency!


 

Now, the next steps…

  1. Choose the best one
  2. Fit it inside Jolla’s housing
  3. Find a way to connect the (different) loudspeaker pins to the motherboard audio out pins

Anyone who feels like helping out? :)

Hacking my Jolla: loudspeaker hardware mod

Hello people :)

As I think Jolla’s loudspeaker is a bit too weak, I’ve been thinking about ways to fix that. Ended up disassembling my Jolla, Nokia N8 and Sony Ericsson K750i and rip their loudspeakers off their metal hearts :)

Then I set up Jolla’s mediaplayer to play Jolla’s ringtone in an infinite loop, and then started the game :)

First I connected Jolla’s loudspeaker to the pins, then N8’s, then K750i’s.

K750i’s loudspeaker is too big to fit in Jolla’s loudspeaker housing, but the one from N8 could fit after some manual work on the cover :D

Check out the video to see how the 3 loudspeakers performed when implanted on Jolla! :)

DISCLAIMER: I’m total noob at electronics, I just found a way to do what I wanted to do, no guarantee that this is the right way to do it ;)

Nemomobile Glacier UI, the first component: Button

Hello people :)

I took inspiration from the current qtquickcontrols-tizen repo and built the repo for the new Nemo components for Glacier UI! So, first of all, a big thank you to Tomasz Olszak (nickname: tolszak) and Jarosław_Staniek (nickname: staniek) for their awesome work on Qt for Tizen!

I changed quite a lot of stuff from qtquickcontrols-tizen repo in the attempt to improve the overall quality and make things easier for the people who will contribute to building Glacier components. I hope I succeeded at that task :)

For those who don’t know what Glacier is: It is the new UI for Nemomobile, you can find some mockups here:http://play.qwazix.com/grog/?p=344

Yes, it will be as awesome as it looks from the mockups! :D

Nemomobile UI Components are built on top on QtQuickControls, the UI QML controls of Qt5, the ones which will be used for both Desktop and Android/iOS app development in QML!

This way it will be easy to port software developed for iOS/Android/Sailfish using QtQuickControls to Nemomobile :)

Together with the repository I published the Button component, which is the first component of the new Glacier UI! Hurray for the button! :D

I published the Button in a separate commit so that those of you who would like to contribute have an example of what to modify/add to create a new UI control

I have recorded a short video showing the Button component, here it is :)

If you want to be part of the development please do not hesitate to come talk to me (faenil) at #nemomobile IRC channel (FreeNode server) and…let’s make it happen!

REPOSITORY URL: https://github.com/faenil/qtquickcontrols-nemo

Cheers,

faenil (Andrea Bernabei)

Some updates to Nemomobile’s wiki (guide for N9/N950 and VM development)

Nemo’s wiki is a mess…
there is old stuff everywhere, old guides, old tutorial, old commands, old setups.

We have to change that and make it easier for people to join and have fun with us…

But who wants to modify a wiki? We want to hack! :P

But someone has to do that….

So I thought it was worth helping a bit in that sense as well, I wrote a guide to getting started with Wayland VM virtualbox image, a guide to getting started with N9/N950 Nemo apps development, and the current status matrix of Nemo Wayland :)

Check them out! :)

If you want to develop apps for Nemomobile or contribute to Nemomobile development using N9/N950, read:
Nemo Wayland armv7hl (N9/N950) development tutorial

For the VirtualBox VM image check:
Nemo Wayland VM development tutorial

Current status matrix of Nemo Wayland:
Nemo Wayland status

Come join us on #nemomobile IRC channel! :)

Enjoy! :)