I flashed my original firmware v.2 & u-boot 3.0 to OpenWRT 21.02 snapshot today. I first tried the original method but it failed so I then tried your method with positive result.
Used console cable connection.
Actually it works so smooth I would have no problem seeing this method as formal install method if the other one doesn’t work.
The only thing I changed was to shorten the filenames a lot because PuTTY didn’t manage well with the longest lines of text.
I used the instructions above, had to copy image on EdgeOS to eMMC (uboot is version 3 on my router). After installing snapshot version (USB+terminal cable), I "upgraded" it to May 30 rc2 version using Sysupgrade. I'm more general purpose user than developer and more of GUI than CLI guy, but without these instructions it would have been impossible to get it up and running.
For me, reasons for choosing OpenWRT and EdgeRouter was 4G/5G wireless internet connection. I do have ZTE MC801A modem which has powerful hardware, but quite sad firmware. My ISP has CG-NAT on 4G, public IPv4 costs extra, public IPv6 is free, /64 prefix without PD. So I need something that can handle this IPv6 and is well documented, and I'll use ZTE as bridge. I can do basic things with Cisco IOS, but IPv6/64 without PD seems to be such new thing, that there aren't too many examples on Cisco side, therefore using OpenWRT. For hardware side, EdgeRouter 4 seems very powerful (I do have C897 and I'm used to snappy hardware in metal enclosure!) and is reasonably priced.
Thanks for damex and other people contributing for ER4-version!
soon after device was implemented - there happened to be a bug (not directly related to edgerouter 4) regarding not having a usb storage available for initramfs. it should be fixed by now and if it is still not - please report back so it could be checked even further.
Team I'm having the same issue not being able to mount sda1 because it does not exist. I'm at that point in the load instructions and not sure how to continue. I would like to follow pdecat's lead in copying the file locally to then mount it not needing the USB but I'm currently booted into OpenWRT. My understanding (am I wrong) is that if I just power down the device at this point and power it back up I would be back to the very start of the process running the Edgerouter 4 firmware again? I would like to verify this before I proceed with anything...
Thank you everyone for your support as I'm a brand new Openwrt user (trying to be).
The easiest way to install on er4 is to load the initramfs image from a USB flash drive and from the ram running OpenWrt install the sysupgrade image as usual from luci.
I have done everything you mention but stuck at the mount so I can't load sysupgrade.
USB flash drive method
- Download the initramfs-kernel.bin and sysupgrade.tar images to a USB flash drive that is formatted as vfat/fat32
- Connect the flash drive to the Edgerouter's front USB port
- Reboot or power on the Edgerouter
- Interrupt the uboot process by pressing any key
- Start USB detection by typing
usb start
- Load the initramfs-kernel to memory by typing
fatload usb 0:1 0x20000000 openwrt-21.02.3-octeon-ubnt_edgerouter-4-initramfs-kernel.bin
- Once loaded, load the image by typing
bootoctlinux 0 numcores=4 endbootargs mem=0
This should have booted the factory image and now prompts you the OpenWrt banner
- Mount the USB flash drive for the sysupgrade image by typing
mkdir /tmp/sda **-- Complete to here**
mount /dev/sda1 /tmp/sda **--Can't execute this step**
I get:
root@OpenWrt:/# mount /dev/sda1 /tmp/sda
[52199.609403] /dev/sda1: Can't open blockdev
[52199.614360] /dev/sda1: Can't open blockdev
mount: mounting /dev/sda1 on /tmp/sda failed: No such file or directory
root@OpenWrt:/#
Is this truly running openwrt only in RAM so I can start over and do the local copy as others have done?
You only need the initramfs image (with installed luci package) on the USB. Once loaded in ram and booted just open luci in webbrowser and run the sysupgrade image with the luci upgrade process.
Probably, and if you have actually by accident installed in on flash, well I guess it is possible at least once in the universe. But anyway, that is the goal to install it so in that case you have managed your first OpenWrt install.
Following the chatter here. Just flashed the ER-4 I had sitting on the shelf with 24.10. I had the same issue with no USB (/dev/sda1) to copy the sysupgrade.tar to. So, my workaround was to boot the initial kernel.bin image with the internet(eth0) plugged in. The router was set to 192.168.1.1, and I plugged my laptop into eth1, and it pulled 192.168.1.164. I put a root password, ran 'opkg update and opkg install openssh-sftp-server', and configured those packages. I then just used Filezilla to copy the sysupgrade.tar file to \tmp and ran it from there. It rebooted, and voila, I was all set to go with Openwrt with Luci.
So I think maybe some of the issues around this usb install are related to partition numbers. I created single ext4 partition on my usb stick and copied the .bin and .tar 24.10.1 files onto it.
usb start
Load the initramfs-kernel to memory by typing # I changed to using the ext4 loader and partition to 0
ext4load usb 0:0 0x20000000 openwrt-24.10.1-octeon-generic-ubnt_edgerouter-4-initramfs-kernel.bin
Once loaded, load the image by typing
bootoctlinux 0 numcores=4 endbootargs mem=0
This should have booted the factory image and now prompts you the OpenWrt banner
Mount the USB flash drive for the sysupgrade image by typing
mkdir /tmp/sda
mount /dev/sda /tmp/sda #removed the 1 as single partion needs no reference
Flash OpenWrt to the internal flash by finally typing