/
4. OpenWrt Image
Made with
Page icon

4. OpenWrt Image

If you’re on Deutsche Telekom fiber, you need the pppoe-wan credentials. If you’ve built the custom MT7615 kernel module, make sure mt7615-common.ko is in the instance home folder.
When building the OpenWrt image, you can customize the default config files and include or exclude system packages. If the ⚙️3. OpenWrt Config satisfies your needs or you’re looking for a quick start, you can use this script from bin to automate the build. Otherwise follow the steps below.
Bash
Copy
. <(curl -fsS https://properinter.net/bin/build_bpi_r4_dt_gpon_image.sh) Enter pppoe-wan username: [email protected] Enter pppoe-wan password: 51428761 MT7615 kernel module [~/mt7615-common.ko]: Hit:1 http://security.ubuntu.com/ubuntu noble-security InRelease [...] 22806532 bytes (23 MB, 22 MiB) copied, 0.0891981 s, 256 MB/s Calculating checksums... bin/targets/mediatek/filogic/openwrt-mediatek-filogic-bananapi_bpi-r4-sdcard.img.gz OpenWrt image copied to ~/openwrt-mediatek-filogic-bananapi_bpi-r4-sdcard.img.gz

1. Prepare the OpenWrt image builder

Bash
Copy
# install system dependencies sudo apt update sudo apt install -y build-essential libncurses-dev zlib1g-dev gawk git \ gettext libssl-dev xsltproc rsync wget unzip python3 python3-setuptools # prepare openwrt image builder wget https://downloads.openwrt.org/snapshots/targets/mediatek/filogic/openwrt-imagebuilder-mediatek-filogic.Linux-x86_64.tar.zst tar --use-compress-program=unzstd -xvf openwrt-imagebuilder-mediatek-filogic.Linux-x86_64.tar.zst

2. Prepare the OpenWrt configuration

Bash
Copy
cd openwrt-imagebuilder-mediatek-filogic.Linux-x86_64 mkdir files cd files git clone https://github.com/proper-internet/etc.git rm -rf etc/.git # update network configuration with your ISP credentials sed -i -e "s/[email protected]/[email protected]/" config/network sed -i -e "s/'password'/'51428761'/" config/network # update wireless configuration SSID and keys (optional) vim etc/config/wireless cd ..

3. Include the MT7615 custom kernel module

If you’ve decided to build the 2.1. Kernel module for MT7165, then mt7615-common.ko should be in the instance home folder. Skip this step otherwise.
Bash
Copy
mkdir -p files/lib/modules/6.6.61 cp ~/mt7615-common.ko ./files/lib/modules/6.6.61/

4. Build the OpenWrt image

Change the PACKAGES environment variable to include or exclude packages in your image.
Bash
Copy
export PROFILE=bananapi_bpi-r4 export PACKAGES="luci luci-ssl iptables-nft sqm-scripts luci-app-sqm wireguard-tools luci-proto-wireguard netperf htop pciutils unbound-daemon unbound-control luci-app-unbound odhcpd kmod-mt7615e kmod-mt7615-common kmod-mt7615-firmware gawk curl ca-bundle ca-certificates tcpdump adblock luci-app-adblock -dnsmasq -odhcpd-ipv6only" make image PROFILE="$PROFILE" PACKAGES="$PACKAGES" FILES="files" # the sd card image is located in bin/targets/mediatek/filogic/ cp bin/targets/mediatek/filogic/openwrt-mediatek-filogic-bananapi_bpi-r4-sdcard.img.gz ~/

Flash the OpenWrt image

Flash the SD card with the OpenWrt image you’ve just built.
user@local:~#
Bash
Copy
scp [email protected]:~/openwrt-mediatek-filogic-bananapi_bpi-r4-sdcard.img.gz . gunzip openwrt-mediatek-filogic-bananapi_bpi-r4-sdcard.img.gz # get the device path using diskutil (e.g. /dev/disk4) diskutil list diskutil unmountDisk /dev/disk4 # flash the sd card with the openwrt image sudo dd bs=1M if=openwrt-mediatek-filogic-bananapi_bpi-r4-sdcard.img of=/dev/disk4 85+1 records in 85+1 records out 89915396 bytes transferred in 18.030707 secs (4986793 bytes/sec)
You can now stop the Ubuntu instance and move on to 5. First Boot.

References