Difference between revisions of "Cosmo Linux Mobile Data"

From Planet Computers

Jump to: navigation, search
(No summary)
Line 82: Line 82:
The program will now be executed at every login.
The program will now be executed at every login.
====5 - Troubleshoot====
====5 - Troubleshoot====

Revision as of 17:30, 22 July 2020

The following guide will help you setting up mobile data for your Cosmo Communicator under Debian Linux.

This guide assumes that you have already installed Linux on your Cosmo using the Linux for Cosmo guide.

The current Debian/KDE image uses NetworkManager to handle WIFI and mobile data connections, but mobile data is not working correctly  when using it under Cosmo. In order to enable mobile data we have to remove NetworkManager and use connman instead. Connman is an alternative connection manager software, which will be used to handle both mobile data and WIFI connection. As connman integration in KDE is not as seemless as NetworkManager it is suggested to proceed only if you need mobile data under Linux.

Please note that Linux expects the SIM to be inserted in slot 0.

1 - Install connman

On your Cosmo, open a terminal (Menu -> Applications -> System -> Terminal)

Type the following commands to install connman:

sudo apt install connman cmst mobile-broadband-provider-info ofono-scripts
sudo apt remove network-manager plasma-nm
sudo reboot

2 - Enable Roaming

Roaming needs to be explicitly enabled beforehand if needed. To enable roaming type this command in a terminal:


3 - Configure APN

The next step is to configure the APN for your specific network operator, which can usually be found online or by contacting your operator.

Usually, this will simply involve setting up the network's access point name through the set-context-property. For example, for the Three UK network we have to setup the access point name "three.co.uk":

 /usr/share/ofono/scripts/set-context-property 0 AccessPointName three.co.uk

For Telenor Hungary, the access point name is simply "online", so the command would be:

/usr/share/ofono/scripts/set-context-property 0 AccessPointName online

To double check that the information has been set properly you can use the list-contexts command:


The output of list-contexts should be similar to the output of the screenshot below (see the important bit - AccessPointName = three.co.uk):

22 46.jpg

Finally, we need to activate the connection using the following command:

/usr/share/ofono/scripts/activate-context 1

The command should produce no output and yout connection should now be active.

22 39.jpg

You can use the connman system tray application (cmst) to check the status of the network connection:


In the Status tab you can see the status of the mobile and WIFI connection.

22 05.jpg

The screenshot above shows a working mobile connection (State: Online).

The Details tab provides additional information as shown in the screenshot below.

22 19.jpg

Your settings will be stored and the system will try to re-established the last connection at boot. You can also re-enable the connection by issuing the activate-context command again:

/usr/share/ofono/scripts/activate-context 1

Note that you might also be required to send the set-roaming-allowed command if using the device while roaming.

4 - Running cmst at login

Because cmst will be used to handle both mobile and WIFI connection, it's a good idea to run automatically it at every login. To do that, Go to Menu -> Applications -> Settings -> System Settings.

22 04.jpg

Inside System Settings, select Startup and Shutdown, tap on the "Add Program..." button, type "cmst" and tap on the OK button.

22 58.jpg

The program will now be executed at every login.

22 34.jpg

5 - Troubleshoot

Linux mobile data is still experimental at this stage, and not all features are enabled.

Powering OFF and ON the mobile chipset using cmst does not always work as expected - a reboot will fix the issue.

If cmst shows a working connection but you can't browse the Internet, it might be because the DNS jas not been automatically populated. In this case you can set one using the following command:

sudo echo "nameserver" > /etc/resolv.conf