User Tools

Site Tools


opnsenseonvelocloudedge510

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
opnsenseonvelocloudedge510 [2025/11/05 07:10] – created Fabián Rodríguezopnsenseonvelocloudedge510 [2025/11/06 14:13] (current) Fabián Rodríguez
Line 1: Line 1:
 +====== OPNsense installation on the Velocloud EDGE 510 router ======
 +The Velocloud EDGE 510 is a discontinued enterprise router now widely available on platforms like eBay for under $50 CAD. Following this guide transforms it into a fully functional firewall/router. Online reports show this should also be possible with the Edge 520 model.
 +
 +> For those seeking a plug-and-play experience, [[https://legoutdulibre.com|Le Goût du Libre.com]] offers ready to use units with OPNsense pre-flashed for 40$ CAD in Montreal, Canada (local pickup only) - or you can [[https://www.ebay.com/itm/297261007996|buy your own on eBay]] and follow this tested and revised guide, based on multiple installations.
 +
 +While the router's performance is modest by today’s standards, it features:
 +
 +  * Intel Atom C2358 CPU, 4 GB RAM, 8 GB eMMC
 +  * 2 USB ports
 +  * 4×1 Gbps Ethernet ports
 +  * Reliable serial access and coreboot compatibility
 +
 +This makes it a perfect candidate for homelab setups, network experimentation, and educational deployments. With OPNsense 25.7.6 (based on FreeBSD 14.3-RELEASE-p4), it supports full firewall and routing capabilities. 
 +
 +Special thanks go to [[https://github.com/PhoenixSheppy/VeloCloud-Edge-510-OPNsense-Conversion-Guide?tab=readme-ov-file|PhoenixSheppy on Github]] and to [[https://forum.netgate.com/topic/142371/what-is-this-board-help|the Netgate forum contributors]], which this guide is based on.
 +
 +== Pre-install notes ==
 +
 +  * WAN port=GE4 and LAN port=GE1 when booting into the stock Velocloud OS.
 +  * LAN port=GE1 port and WAN port=GE2 port, starting from the OPNsense USB Liveboot stage. **⚠️ Changing these assignments in OPNsense may render the router unreachable.**
 +  * The IP configuration after installation is as follows:
 +    * **WAN**: DHCP (address automatically obtained from the provider)
 +    * **LAN**: Static IP 192.168.1.1, with DHCP leases distributed within this range
 +  * Wi-Fi is not enabled, despite antennas and wifi radio being present on some models. The wireless chipset on this router is not well supported by OPNsense. In general, OPNsense recommends using external access points with VLAN configuration for Wi-Fi.
 +  * **⚠️ Despite having Gigabit ports, actual performance may be limited by the processor, RAM, and enabled OPNsense features.** Check the OPNsense official documentation for more details.
 +
 +
 == OPNsense installer preparation and router coreboot configuration == == OPNsense installer preparation and router coreboot configuration ==
  
-  - Get the OPNsense **VGA** installer (yes, VGA) at https://opensense.org/download and create a USB installer from it using BalenaEtcher or your preferred method+  - Get the OPNsense **VGA** installer (yes, VGA) at https://opensense.org/download and create a USB installer from it using BalenaEtcher or your preferred method. **Keep this key handy in case you need to reinstall OPNsense when experimenting**
   - Remove the small metal plate on the back of the router, at the right of the network ports, this will expose a mini-USB port. Connect a mini-USB cable into the device, and the other end to your PC.    - Remove the small metal plate on the back of the router, at the right of the network ports, this will expose a mini-USB port. Connect a mini-USB cable into the device, and the other end to your PC. 
   - Using a program like Putty, connect at 115200 Baud, and connect the power cable in the router, you should see some output as it boots up. Allow it to boot into VeloCloud OS.   - Using a program like Putty, connect at 115200 Baud, and connect the power cable in the router, you should see some output as it boots up. Allow it to boot into VeloCloud OS.
Line 12: Line 39:
   - From there, let's configure the network. Connect a network cable from your router or switch to the 4th port (GE4) and allow it to establish a link and connect. Connect your computer to port 1 (GE1).   - From there, let's configure the network. Connect a network cable from your router or switch to the 4th port (GE4) and allow it to establish a link and connect. Connect your computer to port 1 (GE1).
   - Change to the existing ''firmware'' directory: <code>cd /root/firmware</code>   - Change to the existing ''firmware'' directory: <code>cd /root/firmware</code>
-  - Grab a copy of the modified corebooot firmware :<code>wget https://raw.githubusercontent.com/PhoenixSheppy/VeloCloud-Edge-510-OPNsense-Conversion-Guide/refs/heads/main/firmware/2017-4-10-coreboot.rom  +  - Grab a copy of the modified corebooot firmware : \\ ''wget <nowiki>https://raw.githubusercontent.com/PhoenixSheppy/VeloCloud-Edge-510-OPNsense-Conversion-Guide/refs/heads/main/firmware/2017-4-10-coreboot.rom</nowiki>''\\ \\ This output should follow:\\ <code>Connecting to raw.githubusercontent.com (185.199.108.133:443)
-velocloud vc-edge:~/firmware  - wget https://raw.githubusercontent.com/PhoenixShep +
-py/VeloCloud-Edge-510-OPNsense-Conversion-Guide/refs/heads/main/firmware/2017-4- +
-10-coreboot.rom +
-Connecting to raw.githubusercontent.com (185.199.108.133:443)+
 2017-4-10-coreboot.r 100% |*******************************|  8192k  0:00:00 ETA 2017-4-10-coreboot.r 100% |*******************************|  8192k  0:00:00 ETA
 velocloud vc-edge:~/firmware  -</code> velocloud vc-edge:~/firmware  -</code>
   - Change directory again :<code>cd ..</code>   - Change directory again :<code>cd ..</code>
-  - Let's update the DMI (Desktop Management Interface) data region in the firmware image: <code>./dmi-tool -u firmware/2017-4-10-coreboot.rom +  - Let's update the DMI (Desktop Management Interface) data region in the firmware image:\\ ''./dmi-tool -u firmware/2017-4-10-coreboot.rom''\\ \\ This output should follow:\\ <code>Updating flash with current DMI info ...
-Updating flash with current DMI info ...+
 Current DMI: Current DMI:
 decoding ... decoding ...
 SN=CKPG933, UUID_str=a04d141b-0ff4-4e25-bbf0-ded5867a5296, BSN=PH0TTRNNNBP7L1, pname=2R0220 bversion=haEDG SN=CKPG933, UUID_str=a04d141b-0ff4-4e25-bbf0-ded5867a5296, BSN=PH0TTRNNNBP7L1, pname=2R0220 bversion=haEDG
 Done. Please power cycle the board if the flash has been updated</code> Done. Please power cycle the board if the flash has been updated</code>
-  - Follow that with this command: <code>./dmi-tool -w -p EDGE510 -v 1 +  - Follow that with this command:\\ ''./dmi-tool -w -p EDGE510 -v 1''\\ \\ This output should follow:\\ <code>Programming DMI  ...
-Programming DMI  ...+
 Current DMI: Current DMI:
 decoding ... decoding ...
Line 37: Line 58:
 Done. Please power cycle the board if the flash has been updated Done. Please power cycle the board if the flash has been updated
 </code> </code>
-  -Finally, let's flash that firmware : <code>flashrom --programmer internal --write firmware/2017-4-10-+  -Let'now flash that firmware : \\ ''flashrom --programmer internal --write firmware/2017-4-10-coreboot.rom''\\ \\ This output should follow:\\ <code>flashrom v0.9.8-r1888 on Linux 3.14.79 (x86_64)
-oreboot.rom +
-flashrom v0.9.8-r1888 on Linux 3.14.79 (x86_64)+
 flashrom is free software, get the source code at http://www.flashrom.org flashrom is free software, get the source code at http://www.flashrom.org
  
Line 54: Line 73:
 Erasing and writing flash chip... Erase/write done. Erasing and writing flash chip... Erase/write done.
 Verifying flash... VERIFIED. Verifying flash... VERIFIED.
-velocloud vc-edge: - 
 </code> </code>
-  - To finalize, the watchdog timer that reboots the systems and prevents from running another OS has to be disabled. Run the following command:<code>i2cset -y 1 0x24 0x00 0x00 && i2cset -y 1 0x24 0x01 0x00</code>+  - To finalize, the watchdog timer that reboots the systems and prevents from running another OS has to be disabled. **This is a critical step, and can't be skipped**. Run the following command:<code>i2cset -y 1 0x24 0x00 0x00 && i2cset -y 1 0x24 0x01 0x00</code>
  
 After you've run those two commands, your device is ready to install OPNsense. After you've run those two commands, your device is ready to install OPNsense.
Line 66: Line 84:
   - Unplug the network cable from the ''GE4'' port and plug it into the ''GE2'' port. This is where OPNsense will search for and configure its WAN connection.   - Unplug the network cable from the ''GE4'' port and plug it into the ''GE2'' port. This is where OPNsense will search for and configure its WAN connection.
   - Plug a network cable from your PC into the ''GE1'' port. This is where OPNsense will configure the LAN and provide DHCP leases. Make sure your PC connection to the router is stable, if you loose the SSH connection to the router during installation (for example, by your PC going into sleep mode), you will have to start over from that step.   - Plug a network cable from your PC into the ''GE1'' port. This is where OPNsense will configure the LAN and provide DHCP leases. Make sure your PC connection to the router is stable, if you loose the SSH connection to the router during installation (for example, by your PC going into sleep mode), you will have to start over from that step.
-  - Plug the power cable again. The boot sequence **will take 3-4 minutes**, be patient.\\The serial output should scroll by and briefly show the OPNsense logo and menu. The last few lines of output should look something like:<code>/boot/kernel/carp.ko size 0xfb90 at 0x244d000+  - Plug the power cable again. The boot sequence **will take 3-4 minutes**, be patient.\\ The serial output should scroll by and briefly show the OPNsense logo and menu. The last few lines of output should look something like:<code>/boot/kernel/carp.ko size 0xfb90 at 0x244d000
 /boot/kernel/if_gre.ko size 0xaa30 at 0x245d000 /boot/kernel/if_gre.ko size 0xaa30 at 0x245d000
 /boot/entropy size=0x1000 </code> /boot/entropy size=0x1000 </code>
  
-After 3-4 minutes, you should be able to ping the router at 192.168.1.1.+After **3-4 minutes**, you should be able to ping the router at 192.168.1.1.
  
 == OPNsense installation via SSH == == OPNsense installation via SSH ==
  
   - The installer can the be launched by SSH, from your PC in a terminal:<code>$ ssh installer@192.168.1.1</code>   - The installer can the be launched by SSH, from your PC in a terminal:<code>$ ssh installer@192.168.1.1</code>
-  - When prompted, enter the password : ''opnsense''\\The installer should launch. All questions can be kept as default except the following :+  - When prompted, enter the password : ''opnsense''\\ The installer should launch. All questions can be kept as default except the following :
     - At the second step, choose **UFS/UEFI Hybrid**. ZFS is ideal on systems with more storage and resources, but not practical on this configuration. You can decide to try it anyways, this is a homelab device to experiment.     - At the second step, choose **UFS/UEFI Hybrid**. ZFS is ideal on systems with more storage and resources, but not practical on this configuration. You can decide to try it anyways, this is a homelab device to experiment.
     - At the third step, choose the internal storage eMMC storage as target for installation. This will replace the factory Velocloud OS. In this example an external 64GB USB key used for the installer was detected as ''da0'', the other storage (''da1'') indicating 7GB is the internal storage.     - At the third step, choose the internal storage eMMC storage as target for installation. This will replace the factory Velocloud OS. In this example an external 64GB USB key used for the installer was detected as ''da0'', the other storage (''da1'') indicating 7GB is the internal storage.
   - After that, proceed with defaults. You will see progress indicators. This should take **under 8 minutes**.   - After that, proceed with defaults. You will see progress indicators. This should take **under 8 minutes**.
   - You can then change the root password (default is ''opnsense''), or just choose **Complete Install**.    - You can then change the root password (default is ''opnsense''), or just choose **Complete Install**. 
-  - Next step, choose **Reboot** and the serial output should show the boot sequenceshowing the text OPNsense logo and menuand messages, as aboveAgain, this will take ''3-4 minutes''.+  - Next step, choose **Shutdown** and wait for a couple of minutes. **Remove the USB key**disconnect and reconnect the power cablethe router will then bootThis will take **3-4 minutes**. 
 + 
 +You should now be able to ping the router at 192.168.1.1 and complete the configuration by opening a browser to https://192.168.1.1/ui/core/initial_setup - you may have to accept a security exception as the SSL certificate used is self-signed. 
 + 
 +The default user and password (unless changed during the installation), are ''root'' and ''opnsense'', respectively. Refer to the official OPNsense documentation for further details. 
  
 == References == == References ==
opnsenseonvelocloudedge510.1762355428.txt.gz · Last modified: by Fabián Rodríguez