How To Connect BBGW To Internet BBGW by blog_1buq8n - July 3, 2021September 28, 20210 This post covers getting started with Beaglebone Green Wireless and connecting to internet using BBGW Wi-Fi. Received BBGW (BeagleBone Green Wireless) a customized BeagleBone from SeeedStudio. If you have used BBB (BeagleBone Black) then you might notice few difference like there is no 5V DC Jack socket in BBGW. I had trouble connecting to internet from BBGW. Lets get started with How To Connect BBGW To Internet. If you have LCD cape and USB keyboard, you can setup Wi-Fi easily on BBGW. Lets get started with setting up without LCD cape and using command line. Contents First Power Up BBGW There are lot of guide on setting up BBGW via USB. It is pretty straightforward, connect the USB to your computer/laptop, It will boot Linux from onboard eMMC. Wait for some time to see Wi-Fi access point on Wi-Fi, it will appear as “BeagleBoneXXXXXX”. Connect to this Wi-Fi and you will get default page asking for SSID of your Wi-Fi and enter the password. BeagleBone Green Wireless Setup This will setup your BBGW. Note down the IP address from this page as you will require to ssh. The detailed steps are available at seedstudio wiki. So far it is good and all steps works as mentioned. Once you press “done” it will redirect to “support” page. On this page you can connect to your BBGW board and run LED blink program from the browser itself. Its pretty cool to use BoneScript provided by BBGW to try and test your LED blink program. Connect To BBGW Here will check different ways to connect to BBGW. I had connected using default steps. I had verified if BBGW is connected or not. It will show display at the top of the BeagleBoard page like this: Connect using Cloud9 IDE – You can connect to BBGW using Cloud9 IDE as well, just type http://192.168.8.1:3000 and you are connected to BBGW. Cloud9 connected to BBGW Connect using SSH – From the previous section you can easily ssh to BBGW. Use ifconfig to find your BBGW network address. beaglebone# ifconfig Now use your favorite desktop terminal client program either Putty or teraterm or mobxterm to ssh to BBGW with the IP, In my case BBGW IP address is 192.168.0.106, this might be different in your case. $ ssh root@192.168.0.106 Just hit enter, as there is no default password for root. If you are doing ssh using default. The default username:password is [debian:temppwd]. BeagleBone Green Wireless Connect To Internet So far, everything went rather smoothly, but setting up networking was more of a challenge. Before we get into details, I have tried to upgrade flasher image to latest image. My default image on BBGW is “BeagleBoard.org Debian Image 2016-06-14”. The command dog cat will tell you what image you are at in BBGW, “cat /etc/dogtag”. The default Wi-Fi access point password for latest flasher images is “BeagleBone”. When I tried to run apt-get update @beaglebone:~# sudo apt-get update Ign http://security.debian.org jessie/updates InRelease Ign https://deb.nodesource.com jessie InRelease Ign http://repos.rcn-ee.com jessie InRelease Ign http://httpredir.debian.org jessie InRelease Ign http://httpredir.debian.org jessie-updates InRelease Err http://security.debian.org jessie/updates Release.gpg Unable to connect to security.debian.org:http: It is saying “unable to connect to repos.rcn-ee.com. The next thing I tried is to ping “googl.com” but with no response. @beaglebone:~# ping google.com PING google.com (172.1.8.1) 56(84) bytes of data. From 192.168.0.105 icmp_seq=1 Destination Host Unreachable From 192.168.0.105 icmp_seq=2 Destination Host Unreachable From 192.168.0.105 icmp_seq=3 Destination Host Unreachable This start to google and verify network settings for BBGW. I had two options: change the routing table or route the traffic through my laptop. Wi-Fi settings can be verified using “connmanctl”. connmanctl> enable wifi Error wifi: Already enabled connmanctl> scan wifi Scan completed for wifi connmanctl> services *AO SARVESH wifi_2cf7f106b7a1_53415256455348_managed_psk Gowda wifi_2cf7f106b7a1_476f776461_managed_psk connmanctl> agent on Agent registered connmanctl> connect wifi_2cf7f106b7a1_53415256455348_managed_psk Error /net/connman/service/wifi_2cf7f106b7a1_53415256455348_managed_psk: Already connected connmanctl> quit In order to route BBGW traffic via my laptop, I have updated Wi-Fi properties on my laptop to allow other network users to connect through my computer’s internet connection. cat /etc/resolv.conf # Generated by Connection Manager nameserver 0.0.0.0 nameserver 192.168.0.1 nameserver 8.8.8.8 This did not work well. @beaglebone:~# ping google.com PING google.com (172.1.8.1) 56(84) bytes of data. From 192.168.0.105: icmp_seq=36 Redirect Network(New nexthop: 192.168.0.1) From 192.168.0.105: icmp_seq=39 Redirect Network(New nexthop: 192.168.0.1) Then next option is to change the routing table and add details in /etc/network/interfaces. I had edited interfaces file using vi. auto wlan0 iface wlan0 inet static address 192.168.0.222 netmask 255.255.255.0 gateway 192.168.0.1 wpa-ssid {ssid} wpa-psk {password} Here I had specified static IP to the BBGW so that, I can easily SSH to BBGW. With this change most of the things broken and now I am not able to ping to BBGW also. It is not showing IP address on the start page now. It just says, board is ready and can’t display my Wi-Fi access point. This point I can’t ping to previous board IP. But there is workaround for this and you can do SSH using SoftAp0 IP. SSH to the BBGW using SoftAp0 and revert back the changes in /etc/network/interfaces file. $ ssh root@192.168.8.1 Now both the methods have failed so we had contacted IRC channel (#beagle). The problem seems to be with nameserver. root@beaglebone:~# connmanctl state State = online OfflineMode = False SessionMode = False root@beaglebone:~# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1 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: usb0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether e4:15:f6:fd:a4:91 brd ff:ff:ff:ff:ff:ff inet 192.168.7.2/24 brd 192.168.7.255 scope global usb0 valid_lft forever preferred_lft forever inet6 fe80::e615:f6ff:fefd:a491/64 scope link valid_lft forever preferred_lft forever 3: wlan0: <BROADCAST,MULTICAST,DYNAMIC,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 2c:f7:f1:06:b7:a1 brd ff:ff:ff:ff:ff:ff inet 192.168.0.106/24 brd 192.168.0.255 scope global wlan0 valid_lft forever preferred_lft forever inet6 fe80::2ef7:f1ff:fe06:b7a1/64 scope link valid_lft forever preferred_lft forever 4: SoftAp0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether e4:15:f6:fd:a4:90 brd ff:ff:ff:ff:ff:ff inet 192.168.8.1/24 brd 192.168.8.255 scope global SoftAp0 valid_lft forever preferred_lft forever inet6 fe80::e615:f6ff:fefd:a490/64 scope link valid_lft forever preferred_lft forever root@beaglebone:~# ip route 0.0.0.0 via 192.168.0.1 dev wlan0 default via 192.168.0.1 dev wlan0 192.168.0.0/24 dev wlan0 proto kernel scope link src 192.168.0.106 192.168.0.1 dev wlan0 scope link 192.168.7.0/24 dev usb0 proto kernel scope link src 192.168.7.2 192.168.8.0/24 dev SoftAp0 proto kernel scope link src 192.168.8.1 root@beaglebone:~# cat /etc/resolv.conf # Generated by Connection Manager nameserver 0.0.0.0 nameserver 192.168.0.1 The router (TP-Link) is telling the BeagleBone that the nameservers are “0.0.0.0” and “192.168.0.1”. The other devices in network connects to next nameserver when “0.0.0.0” is not reachable. This is not working in case of BBGW as somehow “0.0.0.0” isn’t reachable and BBGW is not trying to the next dns server. The solution is to set the nameserver for BBGW. This will be done using “connmanctl config SERVICE nameservers 192.168.0.1. Here SERVICE is the name of your Wi-Fi connection, shown by “connmanctl services” (in the right column) connmanctl> services *AO SARVESH wifi_2cf7f106b7a1_53415256455348_managed_psk connmanctl> config wifi_2cf7f106b7a1_53415256455348_managed_psk nameservers 192.168.0.1 connmanctl> exit root@beaglebone:~# ping google.com PING google.com (142.250.67.238) 56(84) bytes of data. 64 bytes from bom07s24-in-f14.1e100.net (142.250.67.238): icmp_seq=1 ttl=116 tim This shows updated nameserver entries in “/etc/resolv.conf” file. @beaglebone:~# cat /etc/resolv.conf # Generated by Connection Manager nameserver 192.168.0.1 With this I am able to finally run apt-get update on my BeagleBone Green Wireless board. Hope you have enjoyed this How To Connect BBGW To Internet short guide. You can connect your BBGW using “ssh debian@beaglebone” and/or “ssh debian@beaglebone.local”, Enter password as “debian:temppwd”. if you use multiple beaglebones, be sure to give them individual hostnames with “ sudo hostnamectl set-hostname HOSTNAME ” (replace HOSTNAME by the desired name for the beaglebone). systemctl status $(pidof gpsd) Share this:Click to share on Twitter (Opens in new window)Click to share on Facebook (Opens in new window)MoreClick to share on LinkedIn (Opens in new window)Click to share on WhatsApp (Opens in new window)Click to email a link to a friend (Opens in new window)Like this:Like Loading... Related