Flash your BeagleBone Black Wireless with Ubuntu 18.04 and don’t worry about changing the OS for at least next several years. This long-term-support (LTS) Ubuntu version enables you to install LTS versions of several software, for example, robotics middle-ware ROS.
In this post, let’s go over step-by-step instructions to flash the new BeagleBone Black Wireless eMMC with Ubuntu 18.04 LTS and enable on-board Wi-Fi. The instructions are easy to follow even for those just getting started with BBB.
Please leave any questions or feedback in the comments section.
- BeagleBone Black Wireless
- 5V/2A DC power adapter
- MicroSD Card (with adaptor) of capacity 2 GB or more
- FTDI USB to Serial Cable
- Ubuntu/Windows PC
- Install Etcher on your PC.
Prepare microSD Card
Connect microSD card to the PC. Use SD card adapter if your PC has a SD card slot. Or, use USB SD card adapter to plug it into one of the USB slots. Either way works fine. Download and save the pre-built Ubuntu 18.04 LTS image from elinux.org to your PC. Open Etcher and select the downloaded BBB image file with extension .img.xz.
Select the drive that represents your SD card or USB SD card adapter. In Ubuntu terminal, do ls /dev/ to note the inserted device name. In my case, it was /dev/sdb. On a Windows, a new drive will appear in My Computer.
Be sure to select the correct drive. Choosing a wrong drive may wipe out even your hard drive. Hit Flash!
Eject SD card once Etcher finishes flashing. Now, SD card is ready for the next step.
Flash BeagleBone Black eMMC
With BBB powered off, insert micro SD card into its slot. The slot for microSD is beneath the board on the opposite end of Ethernet connector.
Insert USB-Serial cable into the J1 Serial Debug header as show in the video. Connect other end of the cable to a free USB slot of the PC.
Remove all the capes and use a fully charged power supply or ac adapter. Don’t power it on yet!
Setup the serial program (screen) on the PC. This shows progress messages coming from BBB serial debug header.
Press & hold the boot select button (S2) and apply power. Once powered on, release the button.
Boot messages should appear on the PC serial terminal. There is also a visual sign on BBB indicating flashing procedure in progress. 4 User LEDs (D2-D5) next to the Ethernet jack will show a Cyclone-Sweep pattern (see video). Once the flashing process is complete the board is powered down.
Boot from eMMC
Manually remove power if BBB is not powered-down at the end of above procedure. Remove microSD card from its slot. Keep Serial Debug header connected so you can see boot messages. Finally, power on the board by pressing POWER button .
Voila! BBB boots Ubuntu 18.04 from eMMC.
Wi-Fi might be enabled by default with some Linux images. However, you can use
connmanctl utility to enable it manually.
ubuntu@arm:~$ sudo connmanctl
[sudo] password for ubuntu:
Error getting VPN connections: The name net.connman.vpn was not provided by any
connmanctl> enable wifi
Error wifi: Already enabled
connmanctl> scan wifi
Scan completed for wifi
Divya 213 2.4G wifi_38d269d11b40_44697679612032313320322e3447_managed_psk
DIRECT-cR[TV]Time killer wifi_38d269d11b40_4449524543542d63525b54565d54696d65206b696c6c6572_managed_psk
connmanctl> agent on
// Connect to your Wi-Fi hotspot
connmanctl> connect wifi_38d269d11b40_44697679612032313320322e3447_managed_psk
// Find out IP address of BeagleBone Black Wireless
wlan0: flags=-28605<UP,BROADCAST,RUNNING,MULTICAST,DYNAMIC> mtu 1500
inet *192.168.1.16* netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::3ad2:69ff:fed1:1b40 prefixlen 64 scopeid 0x20<link>
ether 38:d2:69:d1:1b:40 txqueuelen 1000 (Ethernet)
RX packets 38 bytes 4684 (4.6 KB)
RX errors 0 dropped 6 overruns 0 frame 0
TX packets 56 bytes 8886 (8.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
// Ping Google to confirm connection
ubuntu@arm:~$ ping www.google.com
PING www.google.com (18.104.22.168) 56(84) bytes of data.
64 bytes from lax17s03-in-f4.1e100.net (22.214.171.124): icmp_seq=1 ttl=53 time=26.5 ms
64 bytes from lax17s03-in-f4.1e100.net (126.96.36.199): icmp_seq=2 ttl=53 time=37.2 ms
64 bytes from lax17s03-in-f4.1e100.net (188.8.131.52): icmp_seq=3 ttl=53 time=25.2 ms
--- www.google.com ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 25.218/29.658/37.205/5.365 ms
- How to flash BeagleBone Black eMMC with Ubuntu 16.04 – Kiran Palla
- BeagleBoardUbuntu – eLinux.org
- How to Setup WiFi on the BeagleBone Black Wireless – DigiKey Maker.io