* How to create connman_1.40.bbappend to enable and to build connman with iwd? @ 2021-11-25 23:03 Jupiter 2021-11-26 16:30 ` Daniel Wagner 0 siblings, 1 reply; 10+ messages in thread From: Jupiter @ 2021-11-25 23:03 UTC (permalink / raw) To: yocto; +Cc: comman, Daniel Wagner, Armin Kuster Hi, Please correct me, but it seems to me the connman is moving to a direction to ditch out wpa_supplicant and to use iwd, but the Honister still configure connman with wpa_supplicant by default, appreciate your advice: - Is connman with iwd stable enough? - How can I create a connman_1.40.bbappend to replace wpa_supplicant by iwd configure? - Where are the documents for configuring and building connman with iwd? Where is the operational guidance to run connman with iwd? Can I use the same connman dbus APIs or are there any dbus API changes to run connman with iwd? My apology for FAQs. Thank you very much. Kind regards, - JH ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: How to create connman_1.40.bbappend to enable and to build connman with iwd? 2021-11-25 23:03 How to create connman_1.40.bbappend to enable and to build connman with iwd? Jupiter @ 2021-11-26 16:30 ` Daniel Wagner 2021-11-26 21:49 ` Jupiter 0 siblings, 1 reply; 10+ messages in thread From: Daniel Wagner @ 2021-11-26 16:30 UTC (permalink / raw) To: Jupiter; +Cc: yocto, comman, Armin Kuster Hi, On Fri, Nov 26, 2021 at 10:03:10AM +1100, Jupiter wrote: > Please correct me, but it seems to me the connman is moving to a > direction to ditch out wpa_supplicant and to use iwd, but the Honister > still configure connman with wpa_supplicant by default, appreciate > your advice: Indeed, I recommend to use iwd instead of wpa_supplicant. There is no active development happening in ConnMan on the wpa_supplicant plugin. That means the wpa_supplicant plugin might work perfectly fine for your use case and there is no need to use iwd. But don't expect any big help if there are problems with wpa_supplicant. > - Is connman with iwd stable enough? Hard to answer as there is not definition of 'stable enough'. The best advice is to test your use cases and figure out if it fits your requirements. > - How can I create a connman_1.40.bbappend to replace wpa_supplicant > by iwd configure? This is a question for the Yocto mailing(s) list. > - Where are the documents for configuring and building connman with > iwd? There is none, but there is not much you need to do. During the configure step you do something like ./configure --disble-wifi --enable-iwd That's all. > Where is the operational guidance to run connman with iwd? Can I > use the same connman dbus APIs or are there any dbus API changes to > run connman with iwd? There is no change in ConnMan's D-Bus APIs. Depending on your use cases you might be able to remove the ConnMan from your design and only use iwd. This is the case when you are only interested in WiFi networks. I know some project went this way as it makes their system simpler and more robust. > My apology for FAQs. No worries, I still hope someone with writing skill steps up at one point and helps out at this front. Daniel ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: How to create connman_1.40.bbappend to enable and to build connman with iwd? 2021-11-26 16:30 ` Daniel Wagner @ 2021-11-26 21:49 ` Jupiter 2021-11-29 6:52 ` Jupiter 0 siblings, 1 reply; 10+ messages in thread From: Jupiter @ 2021-11-26 21:49 UTC (permalink / raw) To: Daniel Wagner; +Cc: comman Hi Daniel, Greatly appreciate your kind response, please see my comments and clarifications: > Indeed, I recommend to use iwd instead of wpa_supplicant. There is no > active development happening in ConnMan on the wpa_supplicant > plugin. That means the wpa_supplicant plugin might work perfectly fine > for your use case and there is no need to use iwd. But don't expect any > big help if there are problems with wpa_supplicant. Yes, I indeed have issues with 1.40 after upgrading to OE Honister, the WiFi connection is broken, the connman 1.40 assigned a 169.154.0.0/16 range IP address, no DHCP message received: connmand[9988]: DHCP index 3: switch listening mode (0 ==> 1) connmand[9988]: DHCP index 3: sending DHCP discover request connmand[9988]: DHCP index 3: sending DHCP discover request connmand[9988]: DHCP index 3: sending DHCP discover request No DHCP packet response received. Please correct me, but I believe dhcp server is managed by connmand as I found dhcp.c in the connman source, the dhcp issue is not related to wpa-supplicant, right? I am running CONNMAN_DHCP_DEBUG=1 connmand -n -d src/dhcp.c:src/network.c, please let me know if you need more debug messages. > Hard to answer as there is not definition of 'stable enough'. The best > advice is to test your use cases and figure out if it fits your > requirements. That is fine, I can see clearly the connman direction, I'll move to using iwd for testing, I am still learning connman, not in the position to contribute in development, but at least I can contribute for testing and debugging :-). > ./configure --disble-wifi --enable-iwd I'll try it in Yocto build. > There is no change in ConnMan's D-Bus APIs. Depending on your use cases > you might be able to remove the ConnMan from your design and only use > iwd. This is the case when you are only interested in WiFi networks. I > know some project went this way as it makes their system simpler and > more robust. My IoT device is running both WiFi and 4G LTE network interfaces, I definitely need connman to manage network switching between 4G LTE and WiFi . Thank you very much Daniel. Kind regards, - jupiter ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: How to create connman_1.40.bbappend to enable and to build connman with iwd? 2021-11-26 21:49 ` Jupiter @ 2021-11-29 6:52 ` Jupiter 2021-11-29 9:04 ` VAUTRIN Emmanuel (Canal Plus Prestataire) 0 siblings, 1 reply; 10+ messages in thread From: Jupiter @ 2021-11-29 6:52 UTC (permalink / raw) To: Daniel Wagner; +Cc: comman Hi Daniel, I finally built and managed to run connman 1.40 with iwd, the wpa_supplicant is disabled, but there is no WiFi IP address, who is running DHCP, connman or iwd? Running CONNMAN_DHCP_DEBUG=1 connmand -n -d src/dhcp.c:src/network.c, it did not send DHCP discover requests, something is broken or not configured properly. Thank you. - jupiter On 11/27/21, Jupiter <jupiter.hce@gmail.com> wrote: > Hi Daniel, > > Greatly appreciate your kind response, please see my comments and > clarifications: > >> Indeed, I recommend to use iwd instead of wpa_supplicant. There is no >> active development happening in ConnMan on the wpa_supplicant >> plugin. That means the wpa_supplicant plugin might work perfectly fine >> for your use case and there is no need to use iwd. But don't expect any >> big help if there are problems with wpa_supplicant. > > Yes, I indeed have issues with 1.40 after upgrading to OE Honister, > the WiFi connection is broken, the connman 1.40 assigned a > 169.154.0.0/16 range IP address, no DHCP message received: > > connmand[9988]: DHCP index 3: switch listening mode (0 ==> 1) > connmand[9988]: DHCP index 3: sending DHCP discover request > connmand[9988]: DHCP index 3: sending DHCP discover request > connmand[9988]: DHCP index 3: sending DHCP discover request > > No DHCP packet response received. > > Please correct me, but I believe dhcp server is managed by connmand as > I found dhcp.c in the connman source, the dhcp issue is not related to > wpa-supplicant, right? > > I am running CONNMAN_DHCP_DEBUG=1 connmand -n -d > src/dhcp.c:src/network.c, please let me know if you need more debug > messages. > >> Hard to answer as there is not definition of 'stable enough'. The best >> advice is to test your use cases and figure out if it fits your >> requirements. > > That is fine, I can see clearly the connman direction, I'll move to > using iwd for testing, I am still learning connman, not in the > position to contribute in development, but at least I can contribute > for testing and debugging :-). > >> ./configure --disble-wifi --enable-iwd > > I'll try it in Yocto build. > >> There is no change in ConnMan's D-Bus APIs. Depending on your use cases >> you might be able to remove the ConnMan from your design and only use >> iwd. This is the case when you are only interested in WiFi networks. I >> know some project went this way as it makes their system simpler and >> more robust. > > My IoT device is running both WiFi and 4G LTE network interfaces, I > definitely need connman to manage network switching between 4G LTE and > WiFi . > > Thank you very much Daniel. > > Kind regards, > > - jupiter > -- "A man can fail many times, but he isn't a failure until he begins to blame somebody else." -- John Burroughs ^ permalink raw reply [flat|nested] 10+ messages in thread
* RE: How to create connman_1.40.bbappend to enable and to build connman with iwd? 2021-11-29 6:52 ` Jupiter @ 2021-11-29 9:04 ` VAUTRIN Emmanuel (Canal Plus Prestataire) 2021-11-29 21:06 ` Jupiter 0 siblings, 1 reply; 10+ messages in thread From: VAUTRIN Emmanuel (Canal Plus Prestataire) @ 2021-11-29 9:04 UTC (permalink / raw) To: comman Hi Jupiter, Pretty strange that you are facing such problems on dhcp, which is a basic major feature. By my side, I have been using wpa_supplicant, via yocto, for years, on set-top-boxes deployed projects and it works perfectly, after few patches, maybe you can try the HEAD. Have you checked that your IP configuration method is hdcp? Maybe checking the services list will give a clue: dbus-send --system --print-reply --dest=net.connman / net.connman.Manager.GetServices I have started the migration to iwd, which required some fixes, and I have still not reached the same behavior as with wpa_supplicant (but I am close). Unfortunately, I had no more time to spend on this activity, but I hope giving a new try before Christmas. To integrate iwd on yocto (hardknott), in connman recipe, we are using this line: PACKAGECONFIG[iwd] = "--enable-iwd --enable-wifi, --disable-iwd, iwd, iwd" And to activate it via the local.conf PACKAGECONFIG_remove_pn-connman = "wifi" PACKAGECONFIG_append_pn-connman = " iwd" Best Regards, Emmanuel ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: How to create connman_1.40.bbappend to enable and to build connman with iwd? 2021-11-29 9:04 ` VAUTRIN Emmanuel (Canal Plus Prestataire) @ 2021-11-29 21:06 ` Jupiter 2021-11-30 9:59 ` VAUTRIN Emmanuel (Canal Plus Prestataire) 0 siblings, 1 reply; 10+ messages in thread From: Jupiter @ 2021-11-29 21:06 UTC (permalink / raw) To: VAUTRIN Emmanuel (Canal Plus Prestataire); +Cc: comman Hi Emmanuel, Thanks for your advice. > Have you checked that your IP configuration method is hdcp? When I built connman 1.37 with wpa_supplicant on Zeus, it managed both WiFi and 4G LTE network interfaces well. I did not configure anything for DHCP, I did not even find DHCP package and running dhcpd service, I thought that wpa_supplicant managed DHCP server and connman managed DHCP client, is it correct? I only had DHCP issues when I upgraded to Honister connman 1.40. Could you please elaborate how the DHCP works in connman with iwd and how to configure DHCP? > Maybe checking the services list will give a clue: > dbus-send --system --print-reply --dest=net.connman / > net.connman.Manager.GetServices The dbus is indeed broken, any clues how to debug it further? # dbus-send --system --print-reply --dest=net.connman / net.connman. Manager.GetServices method return time=1628090207.390874 sender=:1.3 -> destination=:1.39 serial=522 array [ ] > I have started the migration to iwd, which required some fixes, and I have > still > not reached the same behavior as with wpa_supplicant (but I am close). > Unfortunately, I had no more time to spend on this activity, but I hope > giving > a new try before Christmas. > > To integrate iwd on yocto (hardknott), in connman recipe, we are using this > line: > PACKAGECONFIG[iwd] = "--enable-iwd --enable-wifi, --disable-iwd, iwd, iwd" > And to activate it via the local.conf > PACKAGECONFIG_remove_pn-connman = "wifi" > PACKAGECONFIG_append_pn-connman = " iwd" Thanks for tips, I added those and rebuilt them, but it does not make any difference. here are more debug logs: # systemctl status connman -l * connman.service - Connection service Loaded: loaded (8;;file://solar/lib/systemd/system/connman.service/lib/systemd/system/connman.service8;;; enabled; vendor preset: enabled) Active: active (running) since Wed 2021-08-04 15:11:21 UTC; 7min ago Main PID: 203 (connmand) CGroup: /system.slice/connman.service `-203 /usr/sbin/connmand -n Aug 04 15:11:31 solar connmand[203]: wwan0 {create} index 5 type 1 <ETHER> Aug 04 15:11:31 solar connmand[203]: wwan0 {update} flags 4098 <DOWN> Aug 04 15:11:31 solar connmand[203]: wwan0 {newlink} index 5 address 52:20:05:11:99:CB mtu 1500 Aug 04 15:11:31 solar connmand[203]: wwan0 {newlink} index 5 operstate 2 <DOWN> Aug 04 15:11:31 solar connmand[203]: Adding interface wwan0 [ cellular ] Aug 04 15:11:33 solar connmand[203]: wwan0 {newlink} index 5 address 5E:9C:83:62:CB:D4 mtu 1500 Aug 04 15:11:33 solar connmand[203]: wwan0 {newlink} index 5 operstate 2 <DOWN> Aug 04 15:11:37 solar connmand[203]: wwan0 {update} flags 4240 <DOWN> Aug 04 15:11:37 solar connmand[203]: wwan0 {newlink} index 5 address 00:00:00:00:00:00 mtu 1500 Aug 04 15:11:37 solar connmand[203]: wwan0 {newlink} index 5 operstate 2 <DOWN> # systemctl status iwd -l * iwd.service - Wireless service Loaded: loaded (8;;file://solar/lib/systemd/system/iwd.service/lib/systemd/system/iwd.service8;;; enabled; vendor preset: enabled) Active: active (running) since Wed 2021-08-04 15:11:22 UTC; 7min ago Main PID: 206 (iwd) CGroup: /system.slice/iwd.service `-206 /usr/libexec/iwd Aug 04 15:11:24 solar iwd[206]: 48.0 Mbps Aug 04 15:11:24 solar iwd[206]: 54.0 Mbps Aug 04 15:11:24 solar iwd[206]: HT Capabilities: Aug 04 15:11:24 solar iwd[206]: HT20 Aug 04 15:11:24 solar iwd[206]: Short GI for 20Mhz Aug 04 15:11:24 solar iwd[206]: HT RX MCS indexes: Aug 04 15:11:24 solar iwd[206]: 0-7 Aug 04 15:11:24 solar iwd[206]: 32 Aug 04 15:11:24 solar iwd[206]: Ciphers: CCMP TKIP BIP Aug 04 15:11:24 solar iwd[206]: Supported iftypes: station ap p2p-client p2p-go # CONNMAN_DHCP_DEBUG=1 connmand -n -d src/dhcp.c:src/network.c connmand[3865]: Connection Manager version 1.40 connmand[3865]: Adding configuration wifi connmand[3865]: Adding configuration cellular connmand[3865]: Ignore group named 'global' because prefix is not 'service_' connmand[3865]: Adding service configuration cellular connmand[3865]: Checking loopback interface settings connmand[3865]: System hostname is solar connmand[3865]: lo {newlink} index 1 address 00:00:00:00:00:00 mtu 65536 connmand[3865]: lo {newlink} index 1 operstate 0 <UNKNOWN> connmand[3865]: sit0 {newlink} index 2 address 00:00:00:00:08:00 mtu 1480 connmand[3865]: sit0 {newlink} index 2 operstate 2 <DOWN> connmand[3865]: wlan0 {create} index 4 type 1 <ETHER> connmand[3865]: wlan0 {update} flags 4099 <UP> connmand[3865]: wlan0 {newlink} index 4 address D4:CA:6E:A4:E8:B4 mtu 1500 connmand[3865]: wlan0 {newlink} index 4 operstate 2 <DOWN> connmand[3865]: Adding interface wlan0 [ wifi ] connmand[3865]: wwan0 {create} index 5 type 65534 <NONE> connmand[3865]: wwan0 {update} flags 4240 <DOWN> connmand[3865]: wwan0 {newlink} index 5 address 00:00:00:00:00:00 mtu 1500 connmand[3865]: wwan0 {newlink} index 5 operstate 2 <DOWN> # journalctl -xeu connman.service -- Journal begins at Wed 2021-08-04 15:10:56 UTC, ends at Wed 2021-08-04 15:30:41 UTC. -- Aug 04 15:11:18 solar systemd[1]: Starting Connection service... Aug 04 15:11:21 solar systemd[1]: Started Connection service. Aug 04 15:11:21 solar connmand[203]: Connection Manager version 1.40 Aug 04 15:11:22 solar connmand[203]: Adding configuration wifi Aug 04 15:11:22 solar connmand[203]: Adding configuration cellular Aug 04 15:11:22 solar connmand[203]: Ignore group named 'global' because prefix is not 'service_' Aug 04 15:11:22 solar connmand[203]: Adding service configuration cellular Aug 04 15:11:22 solar connmand[203]: Checking loopback interface settings Aug 04 15:11:22 solar connmand[203]: System hostname is solar Aug 04 15:11:23 solar connmand[203]: lo {newlink} index 1 address 00:00:00:00:00:00 mtu 65536 Aug 04 15:11:23 solar connmand[203]: lo {newlink} index 1 operstate 0 <UNKNOWN> Aug 04 15:11:23 solar connmand[203]: sit0 {newlink} index 2 address 00:00:00:00:08:00 mtu 1480 Aug 04 15:11:23 solar connmand[203]: sit0 {newlink} index 2 operstate 2 <DOWN> Aug 04 15:11:23 solar connmand[203]: mlan0 {create} index 3 type 1 <ETHER> Aug 04 15:11:23 solar connmand[203]: mlan0 {update} flags 4098 <DOWN> Aug 04 15:11:23 solar connmand[203]: mlan0 {newlink} index 3 address D4:CA:6E:A4:E8:B4 mtu 1500 Aug 04 15:11:23 solar connmand[203]: mlan0 {newlink} index 3 operstate 2 <DOWN> Aug 04 15:11:23 solar connmand[203]: Adding interface mlan0 [ wifi ] Aug 04 15:11:24 solar connmand[203]: mlan0 {dellink} index 3 operstate 2 <DOWN> Aug 04 15:11:24 solar connmand[203]: (null) {remove} index 3 Aug 04 15:11:24 solar connmand[203]: Remove interface (null) [ wifi ] Aug 04 15:11:25 solar connmand[203]: wlan0 {create} index 4 type 1 <ETHER> Aug 04 15:11:25 solar connmand[203]: wlan0 {update} flags 4098 <DOWN> Aug 04 15:11:25 solar connmand[203]: wlan0 {newlink} index 4 address D4:CA:6E:A4:E8:B4 mtu 1500 Aug 04 15:11:25 solar connmand[203]: wlan0 {newlink} index 4 operstate 2 <DOWN> Aug 04 15:11:25 solar connmand[203]: Adding interface wlan0 [ wifi ] Aug 04 15:11:25 solar connmand[203]: wlan0 {update} flags 4163 <UP,RUNNING> Aug 04 15:11:25 solar connmand[203]: wlan0 {newlink} index 4 address D4:CA:6E:A4:E8:B4 mtu 1500 Aug 04 15:11:25 solar connmand[203]: wlan0 {newlink} index 4 operstate 0 <UNKNOWN> Aug 04 15:11:26 solar connmand[203]: wlan0 {newlink} index 4 address D4:CA:6E:A4:E8:B4 mtu 1500 Aug 04 15:11:26 solar connmand[203]: wlan0 {newlink} index 4 operstate 0 <UNKNOWN> Aug 04 15:11:26 solar connmand[203]: wlan0 {update} flags 4099 <UP> Aug 04 15:11:26 solar connmand[203]: wlan0 {newlink} index 4 address D4:CA:6E:A4:E8:B4 mtu 1500 Aug 04 15:11:26 solar connmand[203]: wlan0 {newlink} index 4 operstate 2 <DOWN> Aug 04 15:11:31 solar connmand[203]: wwan0 {create} index 5 type 1 <ETHER> Aug 04 15:11:31 solar connmand[203]: wwan0 {update} flags 4098 <DOWN> Aug 04 15:11:31 solar connmand[203]: wwan0 {newlink} index 5 address 52:20:05:11:99:CB mtu 1500 Aug 04 15:11:31 solar connmand[203]: wwan0 {newlink} index 5 operstate 2 <DOWN> Aug 04 15:11:31 solar connmand[203]: Adding interface wwan0 [ cellular ] Aug 04 15:11:33 solar connmand[203]: wwan0 {newlink} index 5 address 5E:9C:83:62:CB:D4 mtu 1500 Aug 04 15:11:33 solar connmand[203]: wwan0 {newlink} index 5 operstate 2 <DOWN> Aug 04 15:11:37 solar connmand[203]: wwan0 {update} flags 4240 <DOWN> Aug 04 15:11:37 solar connmand[203]: wwan0 {newlink} index 5 address 00:00:00:00:00:00 mtu 1500 Aug 04 15:11:37 solar connmand[203]: wwan0 {newlink} index 5 operstate 2 <DOWN> Aug 04 15:24:07 solar connmand[203]: Terminating Aug 04 15:24:07 solar systemd[1]: Stopping Connection service... Aug 04 15:24:07 solar connmand[203]: Remove interface wlan0 [ wifi ] Aug 04 15:24:07 solar connmand[203]: Remove interface wwan0 [ cellular ] Aug 04 15:24:07 solar connmand[203]: Removing configuration wifi Aug 04 15:24:07 solar connmand[203]: Removing configuration cellular Aug 04 15:24:07 solar connmand[203]: wlan0 {remove} index 4 Aug 04 15:24:07 solar connmand[203]: wwan0 {remove} index 5 Aug 04 15:24:07 solar connmand[203]: Exit Aug 04 15:24:07 solar systemd[1]: connman.service: Deactivated successfully. Aug 04 15:24:07 solar systemd[1]: Stopped Connection service. Aug 04 15:30:39 solar systemd[1]: Starting Connection service... Aug 04 15:30:39 solar systemd[1]: Started Connection service. Aug 04 15:30:39 solar connmand[4713]: Connection Manager version 1.40 Aug 04 15:30:39 solar connmand[4713]: Adding configuration wifi Aug 04 15:30:39 solar connmand[4713]: Adding configuration cellular Aug 04 15:30:39 solar connmand[4713]: Ignore group named 'global' because prefix is not 'service_' Aug 04 15:30:39 solar connmand[4713]: Adding service configuration cellular Aug 04 15:30:39 solar connmand[4713]: Checking loopback interface settings Aug 04 15:30:39 solar connmand[4713]: System hostname is solar Aug 04 15:30:39 solar connmand[4713]: lo {newlink} index 1 address 00:00:00:00:00:00 mtu 65536 Aug 04 15:30:40 solar connmand[4713]: lo {newlink} index 1 operstate 0 <UNKNOWN> Aug 04 15:30:40 solar connmand[4713]: sit0 {newlink} index 2 address 00:00:00:00:08:00 mtu 1480 Aug 04 15:30:40 solar connmand[4713]: sit0 {newlink} index 2 operstate 2 <DOWN> Aug 04 15:30:40 solar connmand[4713]: wlan0 {create} index 4 type 1 <ETHER> Aug 04 15:30:40 solar connmand[4713]: wlan0 {update} flags 4099 <UP> Aug 04 15:30:40 solar connmand[4713]: wlan0 {newlink} index 4 address D4:CA:6E:A4:E8:B4 mtu 1500 Aug 04 15:30:40 solar connmand[4713]: wlan0 {newlink} index 4 operstate 2 <DOWN> Aug 04 15:30:40 solar connmand[4713]: Adding interface wlan0 [ wifi ] Aug 04 15:30:40 solar connmand[4713]: wwan0 {create} index 5 type 65534 <NONE> Aug 04 15:30:40 solar connmand[4713]: wwan0 {update} flags 4240 <DOWN> Aug 04 15:30:40 solar connmand[4713]: wwan0 {newlink} index 5 address 00:00:00:00:00:00 mtu 1500 Aug 04 15:30:40 solar connmand[4713]: wwan0 {newlink} index 5 operstate 2 <DOWN> connman should send dhcp requests repeatedly, that seems another issue. ~# ip route show # ifconfig wlan0 Link encap:Ethernet HWaddr D4:CA:6E:A4:E8:B4 UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Thank you very much Emmanuel. Kind regards, - jupiter ^ permalink raw reply [flat|nested] 10+ messages in thread
* RE: How to create connman_1.40.bbappend to enable and to build connman with iwd? 2021-11-29 21:06 ` Jupiter @ 2021-11-30 9:59 ` VAUTRIN Emmanuel (Canal Plus Prestataire) 2021-11-30 10:59 ` Jupiter 0 siblings, 1 reply; 10+ messages in thread From: VAUTRIN Emmanuel (Canal Plus Prestataire) @ 2021-11-30 9:59 UTC (permalink / raw) To: comman Jupiter, > When I built connman 1.37 with wpa_supplicant on Zeus, it managed both > WiFi and 4G LTE network interfaces well. I did not configure anything > for DHCP, I did not even find DHCP package and running dhcpd service, > I thought that wpa_supplicant managed DHCP server and connman managed > DHCP client, is it correct? I only had DHCP issues when I upgraded to > Honister connman 1.40. I have no idea about the integration of ConnMan 1.40 on Honister, I have updated it by myself on Hardknott with additional patches, integrated after the 1.40. > Could you please elaborate how the DHCP works in connman with iwd and > how to configure DHCP? I think normally it shall work directly, no need to configure something special to activate it by default. My meaning was to (re)activate it dynamically to check if it worked in that case, for example by calling: gdbus call --system -d net.connman -o ${SERVICE_PATH} -m net.connman.Service.SetProperty IPv4.Configuration "<{'Method': <'dhcp'>}>" after a gdbus call --system -d net.connman -o ${SERVICE_PATH} -m net.connman.Service.SetProperty IPv4.Configuration "<{'Method': <'manual'>}>" > The dbus is indeed broken, any clues how to debug it further? > # dbus-send --system --print-reply --dest=net.connman / net.connman. > Manager.GetServices > method return time=1628090207.390874 sender=:1.3 -> destination=:1.39 serial=522 > array [ > ] Pretty strange... Can you confirm it worked with your former configuration on 1.37? To keep moving, I propose you to test the following configurations, and check if you get back a coherent service list: 1. PreferredTechnologies=wifi in main.conf, 2. ConnMan HEAD on Honister SRCREV = "0ef47336dc92b101c6d87ed3a9fff4db36096007" 3. ConnMan 1.37 (from Zeus ?) on Honister 4. ConnMan 1.39 on Hardknott By our side we will migrate to Honister next weeks / months, but I hardly doubt your problem is related to Yocto integration. Best Regards, Emmanuel ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: How to create connman_1.40.bbappend to enable and to build connman with iwd? 2021-11-30 9:59 ` VAUTRIN Emmanuel (Canal Plus Prestataire) @ 2021-11-30 10:59 ` Jupiter 2021-11-30 14:44 ` VAUTRIN Emmanuel (Canal Plus Prestataire) 0 siblings, 1 reply; 10+ messages in thread From: Jupiter @ 2021-11-30 10:59 UTC (permalink / raw) To: VAUTRIN Emmanuel (Canal Plus Prestataire); +Cc: comman Hi Emmanuel, > Pretty strange... Can you confirm it worked with your former configuration > on 1.37? Yes it worked on 1.37 with wpa_supplicant built by Zeus if you would like to see the result, sorry very lengthy :-): root@solar:~# dbus-send --system --print-reply --dest=net.connman / net.connman.Manager.GetServices method return time=1638267429.462818 sender=:1.4 -> destination=:1.22 serial=128 reply_serial=2 array [ struct { object path "/net/connman/service/cellular_505016005871803_context1" array [ dict entry( string "Type" variant string "cellular" ) dict entry( string "Security" variant array [ ] ) dict entry( string "State" variant string "ready" ) dict entry( string "Strength" variant byte 80 ) dict entry( string "Favorite" variant boolean true ) dict entry( string "Immutable" variant boolean false ) dict entry( string "AutoConnect" variant boolean true ) dict entry( string "Name" variant string "Telstra" ) dict entry( string "Roaming" variant boolean false ) dict entry( string "Ethernet" variant array [ dict entry( string "Method" variant string "auto" ) dict entry( string "Interface" variant string "wwan0" ) dict entry( string "Address" variant string "72:DD:6D:D2:FD:91" ) dict entry( string "MTU" variant uint16 1500 ) ] ) dict entry( string "IPv4" variant array [ dict entry( string "Method" variant string "fixed" ) dict entry( string "Address" variant string "10.114.35.221" ) dict entry( string "Netmask" variant string "255.255.255.252" ) dict entry( string "Gateway" variant string "10.114.35.222" ) ] ) dict entry( string "IPv4.Configuration" variant array [ dict entry( string "Method" variant string "fixed" ) dict entry( string "Address" variant string "10.114.35.221" ) dict entry( string "Netmask" variant string "255.255.255.252" ) dict entry( string "Gateway" variant string "10.114.35.222" ) ] ) dict entry( string "IPv6" variant array [ ] ) dict entry( string "IPv6.Configuration" variant array [ dict entry( string "Method" variant string "off" ) ] ) dict entry( string "Nameservers" variant array [ string "10.4.130.164" string "10.4.58.204" ] ) dict entry( string "Nameservers.Configuration" variant array [ ] ) dict entry( string "Timeservers" variant array [ ] ) dict entry( string "Timeservers.Configuration" variant array [ ] ) dict entry( string "Domains" variant array [ ] ) dict entry( string "Domains.Configuration" variant array [ ] ) dict entry( string "Proxy" variant array [ dict entry( string "Method" variant string "direct" ) ] ) dict entry( string "Proxy.Configuration" variant array [ ] ) dict entry( string "mDNS" variant boolean false ) dict entry( string "mDNS.Configuration" variant boolean false ) dict entry( string "Provider" variant array [ ] ) ] } struct { object path "/net/connman/service/wifi_d4ca6ea4e988_4a757069746572496f54_managed_psk" array [ dict entry( string "Type" variant string "wifi" ) dict entry( string "Security" variant array [ string "psk" ] ) dict entry( string "State" variant string "idle" ) dict entry( string "Strength" variant byte 73 ) dict entry( string "Favorite" variant boolean false ) dict entry( string "Immutable" variant boolean false ) dict entry( string "AutoConnect" variant boolean false ) dict entry( string "Name" variant string "JupiterIoT" ) dict entry( string "Ethernet" variant array [ dict entry( string "Method" variant string "auto" ) dict entry( string "Interface" variant string "mlan0" ) dict entry( string "Address" variant string "D4:CA:6E:A4:E9:88" ) dict entry( string "MTU" variant uint16 1500 ) ] ) dict entry( string "IPv4" variant array [ ] ) dict entry( string "IPv4.Configuration" variant array [ dict entry( string "Method" variant string "dhcp" ) ] ) dict entry( string "IPv6" variant array [ ] ) dict entry( string "IPv6.Configuration" variant array [ dict entry( string "Method" variant string "auto" ) dict entry( string "Privacy" variant string "disabled" ) ] ) dict entry( string "Nameservers" variant array [ ] ) dict entry( string "Nameservers.Configuration" variant array [ ] ) dict entry( string "Timeservers" variant array [ ] ) dict entry( string "Timeservers.Configuration" variant array [ ] ) dict entry( string "Domains" variant array [ ] ) dict entry( string "Domains.Configuration" variant array [ ] ) dict entry( string "Proxy" variant array [ ] ) dict entry( string "Proxy.Configuration" variant array [ ] ) dict entry( string "mDNS" variant boolean false ) dict entry( string "mDNS.Configuration" variant boolean false ) dict entry( string "Provider" variant array [ ] ) ] } struct { object path "/net/connman/service/wifi_d4ca6ea4e988_43656e74617572323447526f757465723230_managed_psk" array [ dict entry( string "Type" variant string "wifi" ) dict entry( string "Security" variant array [ string "psk" string "wps" ] ) dict entry( string "State" variant string "idle" ) dict entry( string "Strength" variant byte 47 ) dict entry( string "Favorite" variant boolean false ) dict entry( string "Immutable" variant boolean false ) dict entry( string "AutoConnect" variant boolean false ) dict entry( string "Name" variant string "Centaur24GRouter20" ) dict entry( string "Ethernet" variant array [ dict entry( string "Method" variant string "auto" ) dict entry( string "Interface" variant string "mlan0" ) dict entry( string "Address" variant string "D4:CA:6E:A4:E9:88" ) dict entry( string "MTU" variant uint16 1500 ) ] ) dict entry( string "IPv4" variant array [ ] ) dict entry( string "IPv4.Configuration" variant array [ dict entry( string "Method" variant string "dhcp" ) ] ) dict entry( string "IPv6" variant array [ ] ) dict entry( string "IPv6.Configuration" variant array [ dict entry( string "Method" variant string "auto" ) dict entry( string "Privacy" variant string "disabled" ) ] ) dict entry( string "Nameservers" variant array [ ] ) dict entry( string "Nameservers.Configuration" variant array [ ] ) dict entry( string "Timeservers" variant array [ ] ) dict entry( string "Timeservers.Configuration" variant array [ ] ) dict entry( string "Domains" variant array [ ] ) dict entry( string "Domains.Configuration" variant array [ ] ) dict entry( string "Proxy" variant array [ ] ) dict entry( string "Proxy.Configuration" variant array [ ] ) dict entry( string "mDNS" variant boolean false ) dict entry( string "mDNS.Configuration" variant boolean false ) dict entry( string "Provider" variant array [ ] ) ] } struct { object path "/net/connman/service/wifi_d4ca6ea4e988_576946692d463236335f4578742032_managed_psk" array [ dict entry( string "Type" variant string "wifi" ) dict entry( string "Security" variant array [ string "psk" string "wps" ] ) dict entry( string "State" variant string "idle" ) dict entry( string "Strength" variant byte 40 ) dict entry( string "Favorite" variant boolean false ) dict entry( string "Immutable" variant boolean false ) dict entry( string "AutoConnect" variant boolean false ) dict entry( string "Name" variant string "WiFi-F263_Ext 2" ) dict entry( string "Ethernet" variant array [ dict entry( string "Method" variant string "auto" ) dict entry( string "Interface" variant string "mlan0" ) dict entry( string "Address" variant string "D4:CA:6E:A4:E9:88" ) dict entry( string "MTU" variant uint16 1500 ) ] ) dict entry( string "IPv4" variant array [ ] ) dict entry( string "IPv4.Configuration" variant array [ dict entry( string "Method" variant string "dhcp" ) ] ) dict entry( string "IPv6" variant array [ ] ) dict entry( string "IPv6.Configuration" variant array [ dict entry( string "Method" variant string "auto" ) dict entry( string "Privacy" variant string "disabled" ) ] ) dict entry( string "Nameservers" variant array [ ] ) dict entry( string "Nameservers.Configuration" variant array [ ] ) dict entry( string "Timeservers" variant array [ ] ) dict entry( string "Timeservers.Configuration" variant array [ ] ) dict entry( string "Domains" variant array [ ] ) dict entry( string "Domains.Configuration" variant array [ ] ) dict entry( string "Proxy" variant array [ ] ) dict entry( string "Proxy.Configuration" variant array [ ] ) dict entry( string "mDNS" variant boolean false ) dict entry( string "mDNS.Configuration" variant boolean false ) dict entry( string "Provider" variant array [ ] ) ] } struct { object path "/net/connman/service/wifi_d4ca6ea4e988_4a757069746572496f74546563686e6f6c6f6779323447_managed_psk" array [ dict entry( string "Type" variant string "wifi" ) dict entry( string "Security" variant array [ string "psk" ] ) dict entry( string "State" variant string "idle" ) dict entry( string "Strength" variant byte 33 ) dict entry( string "Favorite" variant boolean false ) dict entry( string "Immutable" variant boolean false ) dict entry( string "AutoConnect" variant boolean false ) dict entry( string "Name" variant string "JupiterIotTechnology24G" ) dict entry( string "Ethernet" variant array [ dict entry( string "Method" variant string "auto" ) dict entry( string "Interface" variant string "mlan0" ) dict entry( string "Address" variant string "D4:CA:6E:A4:E9:88" ) dict entry( string "MTU" variant uint16 1500 ) ] ) dict entry( string "IPv4" variant array [ ] ) dict entry( string "IPv4.Configuration" variant array [ dict entry( string "Method" variant string "dhcp" ) ] ) dict entry( string "IPv6" variant array [ ] ) dict entry( string "IPv6.Configuration" variant array [ dict entry( string "Method" variant string "auto" ) dict entry( string "Privacy" variant string "disabled" ) ] ) dict entry( string "Nameservers" variant array [ ] ) dict entry( string "Nameservers.Configuration" variant array [ ] ) dict entry( string "Timeservers" variant array [ ] ) dict entry( string "Timeservers.Configuration" variant array [ ] ) dict entry( string "Domains" variant array [ ] ) dict entry( string "Domains.Configuration" variant array [ ] ) dict entry( string "Proxy" variant array [ ] ) dict entry( string "Proxy.Configuration" variant array [ ] ) dict entry( string "mDNS" variant boolean false ) dict entry( string "mDNS.Configuration" variant boolean false ) dict entry( string "Provider" variant array [ ] ) ] } ] > To keep moving, I propose you to test the following configurations, > and check if you get back a coherent service list: > 1. PreferredTechnologies=wifi in main.conf, > 2. ConnMan HEAD on Honister > SRCREV = "0ef47336dc92b101c6d87ed3a9fff4db36096007" > 3. ConnMan 1.37 (from Zeus ?) on Honister > 4. ConnMan 1.39 on Hardknott I don't think it is a connman issue, it seems to me my Yocto build problem, something wrong with the libraries, dbus, wpa_supplicant, and other network things, as per Daniel's advice, it is better to move to use iwd, but I have the same problem for both connman with wpa_supplicant and connman with iwd, both broken dbus and could not get WiFi IP address, I think that dbus failure could be related to the failure of IP address, I'll keep digging. > By our side we will migrate to Honister next weeks / months, but I hardly > doubt your problem is related to Yocto integration. Are you using connman with wpa_supplicant or iwd when you built Hardknott? If your connman works on Hardknott, it should also work on Honister, just be careful the syntax has been changed to use : not _, for example do_install::append, FILES:${PN}, it took me a while to lean the new syntax. Thank you. - jupiter ^ permalink raw reply [flat|nested] 10+ messages in thread
* RE: How to create connman_1.40.bbappend to enable and to build connman with iwd? 2021-11-30 10:59 ` Jupiter @ 2021-11-30 14:44 ` VAUTRIN Emmanuel (Canal Plus Prestataire) 0 siblings, 0 replies; 10+ messages in thread From: VAUTRIN Emmanuel (Canal Plus Prestataire) @ 2021-11-30 14:44 UTC (permalink / raw) To: comman > Yes it worked on 1.37 with wpa_supplicant built by Zeus if you would > like to see the result, sorry very lengthy :-): Allright great, much better. > Are you using connman with wpa_supplicant or iwd when you built > Hardknott? We have been using Yocto with ConnMan and wpa_supplicant for many years (since Jethro I think), and it worked pretty well each time (except few regressions, sometimes). I have started the integration of iwd, and started to contribute some fixes. Unfortunately, as it is not my priority, I have stopped working on it, and I have still not reached the same behavior as with wpa_supplicant, for now. > If your connman works on Hardknott, it should also work on > Honister, just be careful the syntax has been changed to use : not _, > for example do_install::append, FILES:${PN}, it took me a while to > lean the new syntax. There where some major changes with Honister, maybe you should update to Hardknott, as first step, and add the 1.40 recipe on it as second step. B.R. Emmanuel ^ permalink raw reply [flat|nested] 10+ messages in thread
[parent not found: <16BAEC7B11896AEA.23256@lists.yoctoproject.org>]
* How to create connman_1.40.bbappend to enable and to build connman with iwd? [not found] <16BAEC7B11896AEA.23256@lists.yoctoproject.org> @ 2021-11-26 6:26 ` Jupiter 0 siblings, 0 replies; 10+ messages in thread From: Jupiter @ 2021-11-26 6:26 UTC (permalink / raw) To: yocto; +Cc: oe-core, comman, Daniel Wagner, Armin Kuster, Alexander Kanavin Hi, Given the high profile of iwd and advocating connman with iwd, I believe someone have already built Yocto connman and iwd, surprisingly, I could not even find an iwd recipe in https://github.com/openembedded/openembedded/tree/master/recipes, nor can I find connman document and instructions to replace wpa_supplicant by iwd, what could I be missing here? Appreciate your kind advice. Thank you. Kind regards, - jh On 11/26/21, JH via lists.yoctoproject.org <jupiter.hce=gmail.com@lists.yoctoproject.org> wrote: > Hi, > > Please correct me, but it seems to me the connman is moving to a > direction to ditch out wpa_supplicant and to use iwd, but the Honister > still configure connman with wpa_supplicant by default, appreciate > your advice: > > - Is connman with iwd stable enough? > > - How can I create a connman_1.40.bbappend to replace wpa_supplicant > by iwd configure? > > - Where are the documents for configuring and building connman with > iwd? Where is the operational guidance to run connman with iwd? Can I > use the same connman dbus APIs or are there any dbus API changes to > run connman with iwd? > > My apology for FAQs. > > Thank you very much. > > Kind regards, > > - JH > -- "A man can fail many times, but he isn't a failure until he begins to blame somebody else." -- John Burroughs ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2021-11-30 14:44 UTC | newest] Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-11-25 23:03 How to create connman_1.40.bbappend to enable and to build connman with iwd? Jupiter 2021-11-26 16:30 ` Daniel Wagner 2021-11-26 21:49 ` Jupiter 2021-11-29 6:52 ` Jupiter 2021-11-29 9:04 ` VAUTRIN Emmanuel (Canal Plus Prestataire) 2021-11-29 21:06 ` Jupiter 2021-11-30 9:59 ` VAUTRIN Emmanuel (Canal Plus Prestataire) 2021-11-30 10:59 ` Jupiter 2021-11-30 14:44 ` VAUTRIN Emmanuel (Canal Plus Prestataire) [not found] <16BAEC7B11896AEA.23256@lists.yoctoproject.org> 2021-11-26 6:26 ` Jupiter
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).