green and black digital device
anki vector

As long as the servers are down

Vector will be trapped in your homes

To make a portable WirePod server, your Vector needs to be able to communicate with it. You could configure your server (raspberry pi, T95 device) to connect to a hotspot as well as Vector…but then your phone now comes into play

The help make this happen, we need to turn the device into an Access Point (AP)
Thankfully doing this is easy…so here are the steps

STEP 1 – Install Pre-reqs

The first this we do is update, the install

sudo apt-get update
sudo apt-get install dnsmasq hostapd bridge-utils

STEP 2 – Configure DHCP

Edit the DHCP conf file like so –

sudo nano /etc/dhcpcd.conf

Add this entry in the file to disable auto wifi connections

denyinterfaces wlan0

press CTRL X to exit and save. NOTE: when using nano, to save and exit press
CTRL X (to exit) – you will be asked to save the file, press Enter to save and exit.

Next we configure DNSMASQ to assign IPs to the devices that will connect to the AP
Move the original file elsewhere and edit a new one

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig
sudo nano /etc/dnsmasq.conf

In the new file, enter these entries to create a IP range of 192.168.5.100 – 192.168.5.200

interface=wlan0
listen-address=192.168.5.1
bind-interfaces
server=8.8.8.8
domain-needed
bogus-priv
dhcp-range=192.168.5.100,192.168.5.200,24h

STEP 3 – Free wlan0

Before you can use your wifi as an AP, you need to release it from the clutches of NetworkManager. To do so edit the NetworkManager’s configuration file

sudo nano /etc/NetworkManager/NetworkManager.conf

under [ifupdown] section, make sure managed is set to false like so

[ifupdown]
managed=false

Save and close the file. The restart network manager

sudo systemctl restart NetworkManager

STEP 4 – Create Access Point

Edit the hostapd file

sudo nano /etc/hostapd/hostapd.conf

And create an AP called WirePod-AP with a password of wirepod5 as the content of the file

interface=wlan0
driver=nl80211
ssid=WirePod-AP
hw_mode=g
channel=11
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_key_mgmt=WPA-PSK
wpa_passphrase=wirepod5
rsn_pairwise=CCMP

Save and exit the file. Now we tell hostapd which config file to load via editing the default config file

sudo nano /etc/default/hostapd

Find the DEAMON_CONF entry, remove the # at the beginning of the line and change its value to this

DAEMON_CONF="/etc/hostapd/hostapd.conf"

Then save and exit. The next step is to unmask and enable the hostapd service with these commands

systemctl unmask hostapd    
systemctl enable hostapd

Almost done, now we need to assign our wifi device a static IP like so

sudo nano /etc/network/interfaces

Then paste the text below in it

allow-hotplug wlan0
iface wlan0 inet static
    address 192.168.5.1
    netmask 255.255.255.0
    network 192.168.5.0
    broadcast 192.168.5.255
    post-up systemctl restart dnsmasq.service

Some times the dnsmasq service will run before the wifi card is available, so we add the line
post-up systemctl restart dnsmasq.service
To make sure to restart the service once the wifi card comes up.

NOTE – if you manage the ethernet etho in this file, e.g.

allow-hotplug eth0
iface wlan0 eth0 dhcp


this may cause it to not get an IP via DHCP, so make sure to deleted out any eth0 commands so the file should look like this

source /etc/network/interfaces.d/*
# Network is managed by Network manager
auto lo
iface lo inet loopback

allow-hotplug wlan0
iface wlan0 inet static
    address 192.168.5.1
    netmask 255.255.255.0
    network 192.168.5.0
    broadcast 192.168.5.255
    post-up systemctl restart dnsmasq.service

STEP 5 – Wrap UP!

Now we enable the hostapd service buy running these commands

systemctl unmask hostapd    
systemctl enable hostapd
systemctl start hostapd  
reboot

We reboot at the end to make sure when we restart we can see the “WirePod-AP” access point. If all good, go ahead and connect your Vector to the access point, and if wire-pod is running on that device, Vector should be able to be paired with, connect to the WirePod-AP and be activated with no issues.

STEP 6 – Share Internet Via Ethernet

If you want to share your network via the ethernet port so Alexa can work on Vector while connected to your AccessPoint, enter the following commands in the terminal

echo 1 > /proc/sys/net/ipv4/ip_forward

Edit this file /etc/sysctl.conf and make sure net.ipv4.ip_forward=1 is in there

sudo nano /etc/sysctl.conf

Then activate the changes by running this command

sudo sysctl -p

Then enter these commands one after the other to implement the sharing

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i wlan0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT

To save the changes, enter these commands

sudo iptables-save > /etc/iptables.rules

That’s it. If you run into any issues, feel free to contact me here

Similar Posts