Yet Another Velop Conversion

Converting my third and final Velop (Linksys WHW03 V1) to OpenWrt.

Previously:

Procedure

  1. Plug ethernet cable into left hand socket (when labeling is correctly oriented) on Velop. Into laptop on the other end.
  2. Power cycle, wait a while, hold down red “reset” button on Velop’s underside. Took me 2 or 3 tries to get my laptop’s ethernet device to acquire a 192.168.1.0/24 address.
  3. Load http://192.168.1.1/fwupdate.html in laptop’s browser
  4. Click the Browse... button, find openwrt-ipq40xx-generic-linksys_whw03-squashfs-factory.bin
  5. Click the Update button
  6. Wait a while nervously
  7. Be happy when the browser shows you some JSON:
{
"result": "OK"
}
  1. Switch Velop’s cable end to right hand socket. Let laptop acquire another IP address in 192.168.1.0/24.
  2. ssh root@192.168.1.1
  3. cd /tmp
  4. scp bediger@192.168.1.135:openwrt-24.10.0-ipq40xx-generic-linksys_whw03-squashfs-sysupgrade.bin .
  5. sysupgrade -n /tmp/openwrt-24.10.0-ipq40xx-generic-linksys_whw03-squashfs-sysupgrade.bin
  6. Wait a few minutes for the upgrade to take place.

I had to figure out what IPv4 address my laptop’s ethernet port had acquired to do step 11.

I did step 12, upgrading OpenWrt from the “factory” image to the “squashfs” image, because the “factory” image was missing useful things, like the LuCi web interface.

Did some re-configuring.

/etc/config/network

config device
        option name 'br-lan'
        option type 'bridge'
        list ports 'lan'
        list ports 'wan' <-- add this line
...
config interface 'lan'                    
        option device 'br-lan'            
        option proto 'dhcp' <-- change from 'static' to 'dhcp'
        #option ipaddr '192.168.1.1'      <-- comment out
        #option netmask '255.255.255.0'   <-- comment out
        #option ip6assign '60'            <-- comment out

config interface 'wan'                    
        option device 'wan'               
        #option proto 'dhcp'  <-- comment out
                                          
#config interface 'wan6'                  <-- comment out
#       option device 'wan'               <-- comment out
#       option proto 'dhcpv6'             <-- comment out

The option proto 'dhcp' entry means that you have to have the Velop cabled using the right hand RJ-45 socket to be able to reach OpenWrt Linux over ssh.

Unless you comment out the option proto 'dhcp', the wan interface tries to obtain an IPv4 address via DHCP. The OpenWrt configuration process gives it the same MAC address as the lan device, so the “bridged” interfaces send out DHCP requests that never get answered correctly, or at least don’t make it back to the wan interface.

There might be some bizarro setups you could do where the wan interface had its own cabled connection, and the “lan” also had its own cabled connection, but that’s not what I want. I turned off DHCP on the wan interface. It does not have an IP address.

/etc/config/system

config system
        option hostname 'Velop2' <-- change from 'OpenWrt'
...
config timeserver 'ntp'
        option enabled '1'
        option enable_server '0'
        list server '10.0.0.1'  <-- new line
        #list server '1.openwrt.pool.ntp.org' <-- comment out
        #list server '2.openwrt.pool.ntp.org' <-- comment out
        #list server '3.openwrt.pool.ntp.org' <-- comment out

Stop and disable services

root@OpenWrt:~# /etc/init.d/dnsmasq disable
root@OpenWrt:~# /etc/init.d/dnsmasq stop
root@OpenWrt:~# /etc/init.d/odhcpd disable
root@OpenWrt:~# /etc/init.d/odhcpd stop
root@OpenWrt:~# /etc/init.d/firewall disable
root@OpenWrt:~# /etc/init.d/firewall stop

Right after I did the disabling, the Velop locked up. I cycled power and got it back.

Set up radios

I configured the final Velop’s three radios sing the LuCi web interface, which I got to using an URL like http://10.0.0.77. I used ip -br n on my Dell R530, which is mostly a router, to find the IPv4 address of the OpenWrt Velop. OpenWrt’s web server does not have TLS configured, so you have to use http://.

I entered “root” and the root password I set earlier, then hovered my mouse pointer over “Network” and clicked on the “Wireless” menu entry to bring up a screen looking like this:

web browser showing LuCi wireless networking display

For each of the 3 radios on Network tab, Wireless menu entry:

  1. Clicked the “Enable” button, which I believe turns the radio on, and triggered a 90 second LuCi wait.
  2. Set the “Channel” pulldown in the “operating frequency” row to “Auto”
  3. Set country code to “US”
  4. Changed ESSID - I named each one something different so I could identify non-working r
  5. Clicked the “Wireless Security” tab
    • chose “WPA2-PSK” encryption
    • set a WiFi password, filling in the “Key” field.
  6. Clicked “Save”, which took me back to the main “Wireless” page.

After updating all these items on all 3 radios, I clicked “Save & Apply”. I think this caused a reboot.

But the radios were on!