How to enable WiFi on Colibri iMX8x v1.0B in TorizonCore

I have installed TorizonCore 5.4.0 on my iMX8x SoM but I don’t know how to enable wifi.
I’m trying to follow instructions on Toradex web sites but without success (How to connect to a Wi-Fi network).

colibri-imx8x-v10b-06494187:~$ uname -a
Linux colibri-imx8x-v10b-06494187 5.4.129-5.5.0-devel+git.cbd9a66dd673 #1-TorizonCore SMP PREEMPT Thu Sep 30 18:35:02 UTC 2021 aarch64 aarch64 aarch64 GNU/Linux
colibri-imx8x-v10b-06494187:~$
colibri-imx8x-v10b-06494187:~$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:14:2d:63:17:eb brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.9/24 brd 192.168.1.255 scope global dynamic noprefixroute ethernet0
       valid_lft 76286sec preferred_lft 76286sec
    inet6 fe80::377d:4538:d8c4:e197/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0
4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:98:6c:03:aa brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever
colibri-imx8x-v10b-06494187:~$

It seems that connmanctl command is not available

colibri-imx8x-v10b-06494187:~$ connmanctl
-sh: connmanctl: command not found
colibri-imx8x-v10b-06494187:~$

I want to be able to list available wlan networks and connect to them but I don’t know how to enable wifi adapter. I can see the wifi module with two antennas on my colibri board.

What should I do to be able to list and connect to wireless networks?

Greetings @frka,

The connmanctl utility is only available on our 5.X BSP not TorizonCore. For TorizonCore it uses the nmcli utility for configuring WiFi. On that article you’re referencing it explains this. Are you perhaps looking at the “BSP 5, 3, and 2.8” tab instead of the TorizonCore tag?

Best Regards,
Jeremias

Ok… it seems like wifi is enabled by default:

colibri-imx8x-v10b-06494187:~$ nmcli r
WIFI-HW  WIFI     WWAN-HW  WWAN    
enabled  enabled  enabled  enabled 
colibri-imx8x-v10b-06494187:~$

But I don’t see any wireless network listed:

colibri-imx8x-v10b-06494187:~$ nmcli d wifi list
colibri-imx8x-v10b-06494187:~$

I also don’t see wifi device listed:

colibri-imx8x-v10b-06494187:~$ nmcli device
DEVICE     TYPE      STATE      CONNECTION 
ethernet0  ethernet  connected  network0   
docker0    bridge    connected  docker0    
sit0       iptunnel  unmanaged  --         
lo         loopback  unmanaged  --         
colibri-imx8x-v10b-06494187:~$

Do I need to enable it somehow?

Strange on my device running nmcli device wifi list returns a list of all WiFi networks in range.

Just to double-check do you have antenna’s properly attached on the WiFi chip on the Colibri i.MX8X module?

If you do not then the range of detection will be very minuscule and likely not pick up anything.

Best Regards,
Jeremias

I’m concerned that I don’t see wifi adapter in the list of network devices. Please see above nmcli device command output.

For example, this is output from my PC:

kristian@ackar:~$ nmcli device
DEVICE             TYPE      STATE         CONNECTION             
wlp0s20f3          wifi      connected     open.coreincubator.com 
docker0            bridge    connected     docker0                
br-035aa40b2a46    bridge    connected     br-035aa40b2a46        
br-e90f7a9855cb    bridge    connected     br-e90f7a9855cb        
p2p-dev-wlp0s20f3  wifi-p2p  disconnected  --                     
enp0s31f6          ethernet  unavailable   --                     
lo                 loopback  unmanaged     --                     
kristian@ackar:~$

As you can see on my PC I can see wlp0s20f3 which is wifi device. But I don’t see anything similar on my iMX8X module.

I don’t have anntenas attached but wireless access point is very close (few centimeters) from wifi adapter on iMX8X.

Hi @frka !

Could you please share all the information that is display by the sticker glued on top of the module?

Could you also share the output of the ip link command?

Best regards,

colibri-imx8x-v10b-06494187:~$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ethernet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:14:2d:63:17:eb brd ff:ff:ff:ff:ff:ff
3: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0
4: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default 
    link/ether 02:42:98:6c:03:aa brd ff:ff:ff:ff:ff:ff
colibri-imx8x-v10b-06494187:~$

Hi @frka !

Thanks for the answers.

Could you please check if you installed the right TorizonCore image?

Please take a look at the red warning message on this Toradex Download Links (Torizon, Linux BSP, WinCE and Partner Demos) article on TorizonCore Embedded Linux Images section.

Best regards,

Hi @henrique.tx !

I’m using Toradex Easy Installer and always pay attention to install TorizonCore for 1.0B HW.
Precisely I have installed TorizonCore for 1.0B HW v5.4.0.

What else can cause not showing wifi device on my Colibri iMX8X?

By some reason “nmcli d wifi list” does not work for TorizonCore 5.4.0
TorizonCore 5.4.0-devel-202109+build.18 colibri-imx8x-v10b-06494276 ttyLP3

colibri-imx8x-v10b-06494276 login: torizon
Password:
colibri-imx8x-v10b-06494276:~$ nmcli d wifi list
colibri-imx8x-v10b-06494276:~$

But it works for TorizonCore 5.2.0:
TorizonCore with PREEMPT_RT 5.2.0-devel-202103+build.9 colibri-imx8x-v10b-06494276 ttyLP3

colibri-imx8x-v10b-06494276 login: torizon
Password:
colibri-imx8x-v10b-06494276:~$ nmcli d wifi list
IN-USE BSSID SSID MODE CHAN RATE SIGNAL BARS SECURITY
CC:40:D0:11:8C:BA NETGEAR50 Infra 10 52 Mbit/s 9 * WPA2
18:B1:69:CA:A8:CC sonicwall-BD08-1 Infra 5 540 Mbit/s 4 –

IN-USE BSSID SSID MODE CHAN RATE SIGNAL BARS SECURITY
CC:40:D0:11:8C:BA NETGEAR50 Infra 10 52 Mbit/s 9 * WPA2
18:B1:69:CA:A8:CC sonicwall-BD08-1 Infra 5 540 Mbit/s 4 –
colibri-imx8x-v10b-06494276:~$

After further testing I can confirm that there is indeed an issue here with the 5.4.0 release. On my Colibri i.MX8X 1.0B device the nmcli d wifi list command returns nothing on 5.4.0. However it does properly return something on TorizonCore 5.3.0.

Unfortunately, the Colibri i.MX8X 1.0B will not be supported past 5.4.0. This is due to this specific hardware revision using early silicon in the chip. Therefore there’s really only two practical options here:

  • Stick to 5.3.0 and earlier where WiFi seems to work properly.
  • Or begin using later revisions of the Colibri i.MX8X hardware (e.g. 1.0D). As these revisions use up-to-date silicon and will continue to be supported past 5.4.0. Where this issue appears to be resolved.

Best Regards,
Jeremias