connman-services-reboot manual

critical

Image Types:
basesdk-amd64 / hmi-armhf / hmi-amd64 / sdk-amd64
Image Deployment:
APT, OSTree
Type:
functional

Description

Tests Network connection management: ensuring that ConnMan can connect to actual networks even after the device under test is rebooted


Pre Conditions

  1. Ensure Rootfs is remounted as read/write.
  2. $ sudo mount -o remount,rw /
  3. Install dependencies
  4. $ sudo apt install wget
  5. Restart the system to restore the filesystem state to read-only before running the test.
  6. $ sudo reboot
  7. The device must have wifi, otherwise skip this test.
  8. Please note that connman disables wifi by default on a fresh image. To enable:
  9. $ connmanctl enable wifi
  10. If it's already enabled, connmanctl will give the error "Error wifi: Already enabled" that may be ignored.

Execution Steps

  1. Run the ConnMan CLI Interface:
  2. $ connmanctl
  3. When run without arguments, connmanctl will launch in interactive mode with a "connmanctl>" prompt.
  4. Scan wifi:
  5. $ connmanctl> scan wifi
  6. Wait for "Scan completed for wifi" before continuing (this may take a few seconds and will appear above connmanctl prompt).
  7. Turn on the agent, to manage additional information if required:
  8. $ connmanctl> agent on
  9. connmanctl should return "Agent registered".
  10. List services available:
  11. $ connmanctl> services
  12. Select required service and use the "service ID" (second column) to connect:
  13. $ connmanctl> connect <service ID>
  14. If it's connecting to a wifi service that needs additional information connmanctl will output an "Agent RequestInput (…)" line followed by a prompt for the required information, such as "Passphrase? ".
  15. Ensure ConnMan returns "Connected <service ID>" before continuing.
  16. Quit from connmanctl interactive mode with:
  17. $connmanctl> quit
  18. On the terminal enter $wget www.google.com
  19. Wget is successfull
  20. Reboot the target
  21. Once the target is rebooted again execute the above wget command on the terminal

Expected

If success "Connected <service ID>" will be printed by connmanctl, otherwise "Agent ReportError <service ID>" will be printed.

On executing the wget command the connection should succeed and you should be able to ping any website

After rebooting the target it is still able to reconnect to the wi-fi network or to the mobile hotspot and ping any website like www.google.com

Notes

  • Warning: Connman changes are persistent (over reboot!). After finishing testing, it might be wise to perform the dhcp test to ensure that the network is in a sensible state.
  • For ALL tests the enable step will give an "In progress" error if the device is already enabled. This is to be expected.
  • When testing the SDK image in VirtualBox with an Asus USB-N10 Wireless adapter, firmware-realtek needs to be installed on the host.