I am trying to add the ability for BeagleBone Black to act as a Wi-Fi access point like BeagleBone Black Wireless did. I have been told to use hostapd and have worked on this, but I can’t get it running. (As you’ll see, we are using an older distribution because our custom boards and software for our prototypes are all written with this; it works, and we don’t have time to fight through an upgrade.)
The dongle is a Cudy WU650 Version 1.0 built around the Realtek 8821 chip.
I have it plugged in to the USB A port on the Beagle.
I have the Beagle powered from a 5V supply.
I have the Beagle plugged in to a Windows 10 PC via the miniUSB port and use PuTTY and/or Cloud9.
Here’s the output of version.sh
git:/opt/scripts/:[e4e4854ef8ff9ada5c85553376043ee7679167ca]
eeprom:[A335BNLT00C02411SBB02285]
model:[TI_AM335x_BeagleBone_Black]
dogtag:[BeagleBoard.org Debian Buster IoT Image 2021-02-15]
bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot SPL 2019.04-00002-gc9b3922522 (Aug 24 2020 - 16:42:18 -0500)]:[location: dd MBR]
bootloader:[eMMC-(default)]:[/dev/mmcblk1]:[U-Boot 2019.04-00002-gc9b3922522]:[location: dd MBR]
UBOOT: Booted Device-Tree:[am335x-boneblack-uboot-univ.dts]
UBOOT: Loaded Overlay:[AM335X-PRU-RPROC-4-19-TI-00A0.kernel]
UBOOT: Loaded Overlay:[BB-ADC-00A0.kernel]
UBOOT: Loaded Overlay:[BB-BONE-eMMC1-01-00A0.kernel]
UBOOT: Loaded Overlay:[BB-I2C2-RTC-DS3231]
kernel:[4.19.94-ti-r68]
nodejs:[v10.23.1]
/boot/uEnv.txt Settings:
uboot_overlay_options:[enable_uboot_overlays=1]
uboot_overlay_options:[uboot_overlay_addr4=/lib/firmware/BB-W1-P9.24-00A0.dtbo]
uboot_overlay_options:[uboot_overlay_addr5=/lib/firmware/BB-I2C2-RTC-DS3231.dtbo]
uboot_overlay_options:[disable_uboot_overlay_video=1]
uboot_overlay_options:[disable_uboot_overlay_audio=1]
uboot_overlay_options:[uboot_overlay_pru=AM335X-PRU-RPROC-4-19-TI-00A0.dtbo]
uboot_overlay_options:[enable_uboot_cape_universal=1]
pkg check: to individually upgrade run: [sudo apt install --only-upgrade <pkg>]
pkg:[bb-cape-overlays]:[4.14.20210809.0-0~buster+20210816]
pkg:[bb-customizations]:[1.20210810.1-0~buster+20210810]
pkg:[bb-usb-gadgets]:[1.20200504.0-0~buster+20200504]
pkg:[bb-wl18xx-firmware]:[1.20200813.1-0~buster+20200813]
pkg:[kmod]:[26-1]
pkg:[librobotcontrol]:[1.0.5-git20200715.0-0~buster+20200716]
pkg:[firmware-ti-connectivity]:[20190717-2rcnee1~buster+20200305]
groups:[debian : debian adm kmem dialout cdrom floppy audio dip video plugdev users systemd-journal input bluetooth netdev i2c gpio admin spi iio docker tisdk weston-launch xenomai cloud9ide pwm eqep remoteproc]
cmdline:[console=ttyO0,115200n8 bone_capemgr.uboot_capemgr_enabled=1 root=/dev/mmcblk1p1 ro rootfstype=ext4 rootwait coherent_pool=1M net.ifnames=0 lpj=1990656 rng_core.default_quality=100 quiet]
dmesg | grep remote
[ 72.003254] remoteproc remoteproc0: wkup_m3 is available
[ 72.055865] remoteproc remoteproc0: powering up wkup_m3
[ 72.055895] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 217148
[ 72.056175] remoteproc remoteproc0: remote processor wkup_m3 is now up
[ 73.687848] remoteproc remoteproc1: 4a334000.pru is available
[ 73.696156] remoteproc remoteproc2: 4a338000.pru is available
dmesg | grep pru
[ 73.687848] remoteproc remoteproc1: 4a334000.pru is available
[ 73.688047] pru-rproc 4a334000.pru: PRU rproc node pru@4a334000 probed successfully
[ 73.696156] remoteproc remoteproc2: 4a338000.pru is available
[ 73.696338] pru-rproc 4a338000.pru: PRU rproc node pru@4a338000 probed successfully
dmesg | grep pinctrl-single
[ 1.027573] pinctrl-single 44e10800.pinmux: 142 pins, size 568
dmesg | grep gpio-of-helper
[ 1.041057] gpio-of-helper ocp:cape-universal: ready
lsusb
Bus 001 Device 002: ID 0bda:c811 Realtek Semiconductor Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
The USB dongle is showing up as Bus 001 Device 002 which I take to be USB1.
Following some hostapd instructions I wrote this hostapd.conf file.
interface=usb1
# "a" simply means 5GHz
hw_mode=a
# the channel to use, 0 means the AP will search for the channel with the least interferences (ACS)
channel=0
ieee80211d=1
country_code=US
ieee80211n=1
# 802.11ac support
ieee80211ac=1
wmm_enabled=1
ssid=Test_BBB
auth_algs=1
wpa=2
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
wpa_passphrase=BeagleBone
when I execute
hostapd hostapd.conf
I get this
root@beaglebone:/etc/hostapd# hostapd hostapd.conf
Configuration file: hostapd.conf
nl80211: Driver does not support authentication/association or connect commands
nl80211: deinit ifname=usb1 disabled_11b_rates=0
nl80211 driver initialization failed.
usb1: interface state UNINITIALIZED->DISABLED
usb1: AP-DISABLED
usb1: CTRL-EVENT-TERMINATING
hostapd_free_hapd_data: Interface usb1 wasn't started
Does this mean that driver nl180211 doesn’t provide access point support?
If so, what driver do I need to have this support and how do I get it?
And if this isn’t the problem, any ideas?
As I said, we cannot take the time to move to a new distribution now, so I’d appreciate suggestions geared for our implementation.