Maemo Leste - Third update (May + June) 2018

kernel networking connectivity raspberry pi icd n900 droid4 nexus5 | 2018-05-15

It's been a while since our second update and there's quite some stuff to talk about!

On the software side

Networking

This month was focussed on connectivity. A lot of progress has been made in this area. Internet Connectivity Daemon (icd) is now quite functional and works together nicely with the new libicd-network-wpasupplicant plugin which adds wireless connectivity using wpa_supplicant as a backend. The connui (which provide network settings and network UI) packages are also mostly ready, which means that we have a network daemon with wireless plugin, and working UI.

At this point, open wireless networks, WEP networks, WPA and RSN (WPA2) PSK and EAP networks should work. Not all EAP protocols are implemented yet, but it's enough to be able to connect to well known networks like eduroam or spacenet:

Further required improvements are listed here, in this milestone:

https://github.com/maemo-leste/bugtracker/milestone/7

Some of these points are quite important, such as verifying server side certificates, others are more for completeness sake, like supporting all EAP authentication mechanisms.

See section Wireless Connectivity Screenshots on the Nokia N900 at the end of this update for 13 screenshots showing off some of the current wireless functionality on the Nokia N900.

As of today, it is also possible to connect to a network directly from the normal network scanning dialog, instead of having to use the settings UI to first add a network.

IPv6 is not yet implemented by us in icd2, but there is a milestone that details what should be done: https://github.com/maemo-leste/bugtracker/milestone/8

In the previous April update, we have mentioned packaging wl1251-cal which should make wireless on the N900 more bearable - it does, but it somehow makes it impossible (currently) to bring up the network interface upon startup, we're still trying to figure out why this is happening.

Accessibility

There is quite a bit of progress on accessibility! Currently Maemo Leste is really only usable if the device has a keyboard, or a working USB OTG port to attach a USB keyboard; but this will change, since we hope to have an integrated virtual keyboard soon. Localisation of the virtual keyboard layout should also work for the initial release.

Devices

There are no new images to go along with this update, but we hope to release new ones in a few weeks from now, with the connectivity and virtual keyboard working.

On the Nokia N900 side, not a lot of extra hardware enablement has been committed, but in an attempt to save some power, the kernel now supports disabling the touchscreen entirely, instead of always keeping it powered, see #118

On the Motorola Droid 4 side:

  • The Motorola Droid 4 now properly locks/unlocks using the power key, this was fixed in mce in #71.
  • The Motorola Droid 4 battery applet no longer complains about an empty battery constantly: #90

The Motorola Droid 4 does not yet have any GPU acceleration, but we're hoping to change that in the coming months, by adding support similar to the Nokia N900 acceleration. We're hoping to leverage previous drivers for the Pandaboard (same gpu, same OMAP soc) in combination with this DRI3 driver: https://github.com/TexasInstruments/dri3wsegl There is some documentation on the wiki: https://leste.maemo.org/Motorola_Droid_4/PowerVR

The Motorola Droid 4 will also likely be used to do our first phone call (and other modem) tests, since support for phone calls on the droid seems to be furthest along.

Finally, a user tried our Droid 4 image on a very similar device: the Droid Bionic (thinking he had actually gotten a Droid 4), and it actually seemed to work:

Support for a tablet: our device list has long mentioned an Allwinner A33 tablet, but nothing else was published/known, that changes now with this device page on our wiki: https://leste.maemo.org/A33-TurboX-Twister

There are no tablet images available yet, and for the different Allwinner tablets we might need to make different images (or more complicated images that support multiple devices), but it's nice to see the software work on a tablet as well!

Documentation/Community

The amount of people actively working on the project has increased slightly, but the amount of people writing code has been steady since the start. We hope that more people will get involved. There is a semi lengthy thread at talk.maemo.org:

https://talk.maemo.org/showthread.php?t=100192&page=1

And we now are actively working on wiki:

https://leste.maemo.org

The device pages from maemo-leste.github.io are now migrated to the wiki:

https://leste.maemo.org/Category:Device

Next we'll been trying to document the current state of Maemo Leste in a more clear manner, and we'll try to clearly document what could (easily) be picked up by new developers. Any help here is also required - so if anything is unclear, please join us in IRC or on the talk.maemo.org thread and ask away!

What is next?

We are making steady progress towards the Nokia N900 alpha release. Most of the work done for this milestone also directly benefits other devices, but we are trying to get at least one device properly supported quickly.

In the coming weeks, we are going to try to:

  • Document more about the current state of the project and how people can help out;
  • Stabilise the wireless plugin;
  • Finish the virtual keyboard;
  • Get new pre-alpha images for developers ready

After that, one of the developers will briefly look at supporting the Nexus 5, because it is a device that is pretty decently supported by mainline, has 3D acceleration and there is some progress on calls using the modem as well.

After this is done, there are several things that would make sense to focus on:

  • 2G/3G/4G ofono plugin for icd2, creating a UI for 2G, 3G and 4G connectivity for devices with a supported modem;
  • Provide a port of Qt4 so that many other applications can be built;
  • Look into phone calls with (one of) the Nokia N900, Droid 4 and Nexus 5;
  • Finishing the USB slave/OTG support widgets and daemons #107;
  • Look at solving some of the parallel boot issues #83; when enabling OpenRC parallel boot, these issues actually go away, but for some reason the Nokia N900 specifically doesn't work with parallel boot yet.

All in all, we're marching ahead and hopefully will be able to reach the Nokia N900 alpha release milestone.

Interested?

If you're interested in specifics, or helping out, or wish to have a specific package ported, please see our bugtracker.

Join us! We really need more people helping out. At this point, we specifically need developers who can work on porting packages, help out with reverse engineering, and debug driver issues.

We're currently on irc.libera.chat in #maemo-leste, but also hang out in #maemo. We also monitor the github issues closely.

Wireless Connectivity Screenshots on the Nokia N900

Merlijn Wajer