We will need to change the wpa-supplicant.conf file as below, by modifying poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa_supplicant.conf-sane ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=0 update_config=1 network={ ssid="MYSSID" psk="MY-SECURE-PASSKEY" proto=RSN key_mgmt=WPA-PSK } Now, once we modified wpa_supplicant configuration files, we need to create an script which will start the wpa_supplicant application which uses this conf file to connect to WiFi access point. $ vim poky/meta/recipes-core/initscripts/initscripts-1.0/start-wifi.sh #!/bin/sh ifconfig wlan0 192.168.1.150 route add default gw 192.168.1.1 wpa_supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf : exit 0 As you can see above, if you don’t have DHCP enabled and server is unable to assign IP address to wifi device wlan0 , we have assigned free IP address manually i.e. 192.168.1.150 in your case it may be different.

Implementation details

Now, we need to modify initscript bitbake recipe to start the above script during the boot, modify initscripts.bb SRC_URI so bitbake build system considers this as source file from local files folder and then we modify install function “do_install” to copy this start-wifi.sh to filesystem etc initscripts directory. $ vim poky/meta/recipes-core/initscripts/initscripts_1.0.bb SRC_URI = " file://start-wifi.sh \ " do_install () { install -m 0755 ${WORKDIR}/start-wifi.sh ${D}${sysconfdir}/init.d update-rc.d -r ${D} start-wifi.sh start 99 2 3 4 5 . } MASKED_SCRIPTS = " \ start-wifi \ " Now if you compile the root file system which contains initscripts and boot the board with this new file system, you can see start-wifi.sh script is executed during initial booting which starts wpa_supplication and WiFi is already connected.

Gotchas and common issues

  • Permission checks - verify user access rights and sudo privileges before executing system-level operations.

  • Environment configuration - double-check path variables and dependency versions to prevent runtime failures.

  • Backup safeguards - maintain configuration backups before applying system or database modifications.

Following these steps ensures clean configuration and reliable execution for modifying bitbake/yocto initscripts to start wifi during boot.