New Xiaomi Router AC2100

@elipatov: I tried to replicate the issue on my device but I don't have any problems with SSL certificates. If you are using the basic image the problem may be related to the fact that ca-bundles or ca-certificates are not installed by default. Just install ca-bundle from the official repository and it should be working fine (it's included in my advanced image but of course it can also be installed on top of the basic image). In the next version of precompiled images I will include it also in the basic image.

Regarding the RealTime Graph and iperf tests: I think this is normal.

@ilyas: Names for my 19.07 and 19.07.3 tree reverted according to the recommended naming convetion from post 396. I'll also update the precompiled images later (even if it doesn't change anything than just a slight change of the device name I want to have the precompiled version on the same state as the code repository).

Updated version of the 19.07.3 images: Names in these images are according to the discussed naming convention. ca-bundle is now included also in the basic image.

Supported Model: Xiaomi Redmi Router AC2100 (RM2100 white edition)

Additionally to the images also all kmods are included in the zip files. The images are now completely compatible to the official download repository.

Basic version (including ca-bundle, hostapd, iw-full and wpa-supplicant-mesh-openssl):

Full list of included packages in the basic version:

CONFIG_TARGET_ramips=y
CONFIG_TARGET_ramips_mt7621=y
CONFIG_TARGET_ramips_mt7621_DEVICE_xiaomi_redmi-router-ac2100=y
CONFIG_ALL_KMODS=y
CONFIG_DEVEL=y
CONFIG_KERNEL_BUILD_DOMAIN="buildhost"
CONFIG_KERNEL_BUILD_USER="builder"
# CONFIG_KERNEL_KALLSYMS is not set
CONFIG_OPENSSL_ENGINE=y
CONFIG_OPENSSL_PREFER_CHACHA_OVER_GCM=y
CONFIG_OPENSSL_WITH_ASM=y
CONFIG_OPENSSL_WITH_CHACHA_POLY1305=y
CONFIG_OPENSSL_WITH_CMS=y
CONFIG_OPENSSL_WITH_DEPRECATED=y
CONFIG_OPENSSL_WITH_ERROR_MESSAGES=y
CONFIG_OPENSSL_WITH_PSK=y
CONFIG_OPENSSL_WITH_SRP=y
CONFIG_OPENSSL_WITH_TLS13=y
CONFIG_PACKAGE_ca-bundle=y
CONFIG_PACKAGE_hostapd=y
# CONFIG_PACKAGE_iw is not set
CONFIG_PACKAGE_iw-full=y
CONFIG_PACKAGE_libiwinfo-lua=y
CONFIG_PACKAGE_liblua=y
CONFIG_PACKAGE_libopenssl=y
CONFIG_PACKAGE_libopenssl-conf=y
CONFIG_PACKAGE_libubus-lua=y
CONFIG_PACKAGE_libustream-openssl=y
CONFIG_PACKAGE_lua=y
CONFIG_PACKAGE_openssl-util=y
CONFIG_PACKAGE_rpcd=y
CONFIG_PACKAGE_rpcd-mod-file=y
CONFIG_PACKAGE_rpcd-mod-iwinfo=y
CONFIG_PACKAGE_uhttpd=y
CONFIG_PACKAGE_wpa-supplicant-mesh-openssl=y
# CONFIG_PACKAGE_wpad-basic is not set

Advanced version including a lot more addons (useful things like OpenVPN, SothetherVPN, wireguard, socat, stunnel, ddns, wol, tcpdump, iperf3...):

If you use this image, please keep in mind to disable the startup of services you don't need (e.g. SoftetherVPN). Otherwise you will waste resources for things you don't use (you can disable services easily by going to System-->Startup in LUCI). Be careful: watchcat is also included. By default a script is predefined to reboot the device if 8.8.8.8 is not reachable for 6 hours. If you don't want that to happen you have to disable the watchcat service or modify the settings (e.g. in Luci: Services --> Watchcat).

Full list of included packages in the advanced version:

CONFIG_TARGET_ramips=y
CONFIG_TARGET_ramips_mt7621=y
CONFIG_TARGET_ramips_mt7621_DEVICE_xiaomi_redmi-router-ac2100=y
CONFIG_ALL_KMODS=y
CONFIG_DEVEL=y
CONFIG_DROPBEAR_ECC=y
CONFIG_DROPBEAR_ECC_FULL=y
CONFIG_GETDNS_ENABLE_STUB_ONLY=y
CONFIG_KERNEL_BUILD_DOMAIN="buildhost"
CONFIG_KERNEL_BUILD_USER="builder"
# CONFIG_KERNEL_KALLSYMS is not set
CONFIG_LIBCURL_COOKIES=y
CONFIG_LIBCURL_FILE=y
CONFIG_LIBCURL_FTP=y
CONFIG_LIBCURL_HTTP=y
CONFIG_LIBCURL_MBEDTLS=y
CONFIG_LIBCURL_NO_SMB="!"
CONFIG_LIBCURL_PROXY=y
CONFIG_OPENSSL_ENGINE=y
CONFIG_OPENSSL_PREFER_CHACHA_OVER_GCM=y
CONFIG_OPENSSL_WITH_ASM=y
CONFIG_OPENSSL_WITH_CHACHA_POLY1305=y
CONFIG_OPENSSL_WITH_CMS=y
CONFIG_OPENSSL_WITH_DEPRECATED=y
CONFIG_OPENSSL_WITH_ERROR_MESSAGES=y
CONFIG_OPENSSL_WITH_PSK=y
CONFIG_OPENSSL_WITH_SRP=y
CONFIG_OPENSSL_WITH_TLS13=y
CONFIG_OPENVPN_openssl_ENABLE_DEF_AUTH=y
CONFIG_OPENVPN_openssl_ENABLE_FRAGMENT=y
CONFIG_OPENVPN_openssl_ENABLE_LZ4=y
CONFIG_OPENVPN_openssl_ENABLE_LZO=y
CONFIG_OPENVPN_openssl_ENABLE_MULTIHOME=y
CONFIG_OPENVPN_openssl_ENABLE_PF=y
CONFIG_OPENVPN_openssl_ENABLE_PORT_SHARE=y
CONFIG_OPENVPN_openssl_ENABLE_SERVER=y
CONFIG_OPENVPN_openssl_ENABLE_SMALL=y
CONFIG_PACKAGE_TAR_BZIP2=y
CONFIG_PACKAGE_TAR_GZIP=y
CONFIG_PACKAGE_TAR_XZ=y
CONFIG_PACKAGE_batctl-default=y
CONFIG_PACKAGE_bzip2=y
CONFIG_PACKAGE_ca-bundle=y
CONFIG_PACKAGE_ca-certificates=y
CONFIG_PACKAGE_cgi-io=y
CONFIG_PACKAGE_curl=y
CONFIG_PACKAGE_ddns-scripts=y
CONFIG_PACKAGE_etherwake=y
CONFIG_PACKAGE_ethtool=y
CONFIG_PACKAGE_getdns=y
CONFIG_PACKAGE_gzip=y
CONFIG_PACKAGE_hostapd=y
CONFIG_PACKAGE_iftop=y
CONFIG_PACKAGE_ip-tiny=y
CONFIG_PACKAGE_iperf3=y
# CONFIG_PACKAGE_iw is not set
CONFIG_PACKAGE_iw-full=y
CONFIG_PACKAGE_kmod-batman-adv=y
CONFIG_PACKAGE_kmod-crypto-crc32c=y
CONFIG_PACKAGE_kmod-crypto-hash=y
CONFIG_PACKAGE_kmod-lib-crc16=y
CONFIG_PACKAGE_kmod-lib-crc32c=y
CONFIG_PACKAGE_kmod-tun=y
CONFIG_PACKAGE_kmod-udptunnel4=y
CONFIG_PACKAGE_kmod-udptunnel6=y
CONFIG_PACKAGE_kmod-wireguard=y
CONFIG_PACKAGE_libbz2=y
CONFIG_PACKAGE_libcurl=y
CONFIG_PACKAGE_libgd=y
CONFIG_PACKAGE_libiwinfo-lua=y
CONFIG_PACKAGE_libjpeg=y
CONFIG_PACKAGE_liblua=y
CONFIG_PACKAGE_liblucihttp=y
CONFIG_PACKAGE_liblucihttp-lua=y
CONFIG_PACKAGE_liblzma=y
CONFIG_PACKAGE_liblzo=y
CONFIG_PACKAGE_libmbedtls=y
CONFIG_PACKAGE_libmnl=y
CONFIG_PACKAGE_libncurses=y
CONFIG_PACKAGE_libopenssl=y
CONFIG_PACKAGE_libopenssl-conf=y
CONFIG_PACKAGE_libpcap=y
CONFIG_PACKAGE_libpcre=y
CONFIG_PACKAGE_libpng=y
CONFIG_PACKAGE_libreadline=y
CONFIG_PACKAGE_librt=y
CONFIG_PACKAGE_libsmartcols=y
CONFIG_PACKAGE_libtirpc=y
CONFIG_PACKAGE_libubus-lua=y
CONFIG_PACKAGE_libustream-openssl=y
CONFIG_PACKAGE_libyaml=y
CONFIG_PACKAGE_lscpu=y
CONFIG_PACKAGE_lsof=y
CONFIG_PACKAGE_lua=y
CONFIG_PACKAGE_luci=y
CONFIG_PACKAGE_luci-app-ddns=y
CONFIG_PACKAGE_luci-app-firewall=y
CONFIG_PACKAGE_luci-app-ntpc=y
CONFIG_PACKAGE_luci-app-openvpn=y
CONFIG_PACKAGE_luci-app-opkg=y
CONFIG_PACKAGE_luci-app-vnstat=y
CONFIG_PACKAGE_luci-app-watchcat=y
CONFIG_PACKAGE_luci-app-wireguard=y
CONFIG_PACKAGE_luci-app-wol=y
CONFIG_PACKAGE_luci-base=y
CONFIG_PACKAGE_luci-compat=y
CONFIG_PACKAGE_luci-lib-ip=y
CONFIG_PACKAGE_luci-lib-ipkg=y
CONFIG_PACKAGE_luci-lib-jsonc=y
CONFIG_PACKAGE_luci-lib-nixio=y
CONFIG_PACKAGE_luci-mod-admin-full=y
CONFIG_PACKAGE_luci-mod-network=y
CONFIG_PACKAGE_luci-mod-status=y
CONFIG_PACKAGE_luci-mod-system=y
CONFIG_PACKAGE_luci-proto-ipv6=y
CONFIG_PACKAGE_luci-proto-ppp=y
CONFIG_PACKAGE_luci-proto-relay=y
CONFIG_PACKAGE_luci-proto-wireguard=y
CONFIG_PACKAGE_luci-ssl-openssl=y
CONFIG_PACKAGE_luci-theme-bootstrap=y
CONFIG_PACKAGE_ntpclient=y
CONFIG_PACKAGE_openssl-util=y
CONFIG_PACKAGE_openvpn-easy-rsa=y
CONFIG_PACKAGE_openvpn-openssl=y
CONFIG_PACKAGE_perl=y
CONFIG_PACKAGE_perlbase-base=y
CONFIG_PACKAGE_perlbase-bytes=y
CONFIG_PACKAGE_perlbase-class=y
CONFIG_PACKAGE_perlbase-config=y
CONFIG_PACKAGE_perlbase-dynaloader=y
CONFIG_PACKAGE_perlbase-errno=y
CONFIG_PACKAGE_perlbase-essential=y
CONFIG_PACKAGE_perlbase-fcntl=y
CONFIG_PACKAGE_perlbase-filehandle=y
CONFIG_PACKAGE_perlbase-getopt=y
CONFIG_PACKAGE_perlbase-io=y
CONFIG_PACKAGE_perlbase-list=y
CONFIG_PACKAGE_perlbase-net=y
CONFIG_PACKAGE_perlbase-posix=y
CONFIG_PACKAGE_perlbase-scalar=y
CONFIG_PACKAGE_perlbase-selectsaver=y
CONFIG_PACKAGE_perlbase-socket=y
CONFIG_PACKAGE_perlbase-symbol=y
CONFIG_PACKAGE_perlbase-tie=y
CONFIG_PACKAGE_perlbase-time=y
CONFIG_PACKAGE_perlbase-xsloader=y
CONFIG_PACKAGE_relayd=y
CONFIG_PACKAGE_rpcd=y
CONFIG_PACKAGE_rpcd-mod-file=y
CONFIG_PACKAGE_rpcd-mod-iwinfo=y
CONFIG_PACKAGE_rpcd-mod-luci=y
CONFIG_PACKAGE_rpcd-mod-rrdns=y
CONFIG_PACKAGE_snapshot-tool=y
CONFIG_PACKAGE_socat=y
CONFIG_PACKAGE_softethervpn-base=y
CONFIG_PACKAGE_softethervpn-server=y
CONFIG_PACKAGE_stubby=y
CONFIG_PACKAGE_stunnel=y
CONFIG_PACKAGE_tar=y
CONFIG_PACKAGE_tcpdump=y
CONFIG_PACKAGE_terminfo=y
CONFIG_PACKAGE_uhttpd=y
CONFIG_PACKAGE_unzip=y
CONFIG_PACKAGE_vnstat=y
CONFIG_PACKAGE_vnstati=y
CONFIG_PACKAGE_wakeonlan=y
CONFIG_PACKAGE_watchcat=y
CONFIG_PACKAGE_wget=y
CONFIG_PACKAGE_wireguard-tools=y
CONFIG_PACKAGE_wpa-supplicant-mesh-openssl=y
# CONFIG_PACKAGE_wpad-basic is not set
CONFIG_PACKAGE_xz=y
CONFIG_PACKAGE_xz-utils=y
CONFIG_PACKAGE_zlib=y
CONFIG_PERL_NOCOMMENT=y
CONFIG_PERL_THREADS=y
CONFIG_SOCAT_SSL=y

Compiled from https://github.com/phs07/openwrt/tree/openwrt-19.07.3_xiaomi_ac2100

If you want to compile it on your own but you still want to stay compatible to the official download repository make sure that you include these lines in your seed file used for creating the defconfig:

CONFIG_TARGET_ramips=y
CONFIG_TARGET_ramips_mt7621=y
CONFIG_TARGET_ramips_mt7621_DEVICE_xiaomi_redmi-router-ac2100=y
CONFIG_ALL_KMODS=y
CONFIG_DEVEL=y
CONFIG_KERNEL_BUILD_DOMAIN="buildhost"
CONFIG_KERNEL_BUILD_USER="builder"
# CONFIG_KERNEL_KALLSYMS is not set

Additionally don't change anything from the kernel settings and don't deselect kmods. You can choose to integrate specific ones directly into your image but it's important that all of them are compiled and nothing is deselected - otherwise the vermagic will differ from the official repository.
To check if your own compilation is compatible to the official repository of 19.07.3 just test it directly from your build root:

find build_dir/ -name .vermagic -exec cat {} \;

The output should match 2e88863ccdd594fb8e842df3c25842ee

Any feedback is welcome.

1 Like

I need someone who at official firmware. With "Xiaomi Mi AC2100"(R2100)(black cylinder).
Can you check is there a amber wan/lan switch leds in this device? I just saw one led hole per switch but maybe there is red led behind of green plastic.

If there is an amber led. It should light up when gigabit connection up.

I have the official version (yet). The LEDs are green at 1Gbit connection.

Okay thanks a lot. I just sacrificed 3 days to adapt amber leds to openwrt. But there was no led :sweat_smile:. Thanks a lot.

1 Like

I've just finished some tests for hsdma.

At first I ensured that hsdma is really running:

root@OpenWRT:~# dmesg | grep dma
[   13.367082] hsdma-mt7621 1e007000.hsdma: rx: 1, tx: 1

Sadly there wasn't a noticable change in terms of speed. It's nearly the same as before:

Without hsdma:

./iperf3.exe -c 192.168.160.1 5201
Connecting to host 192.168.160.1, port 5201
[  4] local 192.168.160.107 port 2273 connected to 192.168.160.1 port 5201
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-1.00   sec  40.9 MBytes   343 Mbits/sec
[  4]   1.00-2.00   sec  40.4 MBytes   338 Mbits/sec
[  4]   2.00-3.00   sec  41.0 MBytes   344 Mbits/sec
[  4]   3.00-4.00   sec  42.2 MBytes   354 Mbits/sec
[  4]   4.00-5.00   sec  41.5 MBytes   348 Mbits/sec
[  4]   5.00-6.00   sec  41.6 MBytes   349 Mbits/sec
[  4]   6.00-7.00   sec  42.8 MBytes   359 Mbits/sec
[  4]   7.00-8.00   sec  41.8 MBytes   350 Mbits/sec
[  4]   8.00-9.00   sec  41.2 MBytes   346 Mbits/sec
[  4]   9.00-10.00  sec  41.9 MBytes   351 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-10.00  sec   415 MBytes   348 Mbits/sec                  sender
[  4]   0.00-10.00  sec   415 MBytes   348 Mbits/sec                  receiver

With hsdma:

./iperf3.exe -c 192.168.160.1 5201
Connecting to host 192.168.160.1, port 5201
[  4] local 192.168.160.107 port 2766 connected to 192.168.160.1 port 5201
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-1.00   sec  41.6 MBytes   349 Mbits/sec
[  4]   1.00-2.00   sec  39.2 MBytes   329 Mbits/sec
[  4]   2.00-3.00   sec  41.2 MBytes   346 Mbits/sec
[  4]   3.00-4.00   sec  41.8 MBytes   350 Mbits/sec
[  4]   4.00-5.00   sec  41.8 MBytes   350 Mbits/sec
[  4]   5.00-6.00   sec  42.2 MBytes   355 Mbits/sec
[  4]   6.00-7.00   sec  42.8 MBytes   359 Mbits/sec
[  4]   7.00-8.00   sec  43.0 MBytes   361 Mbits/sec
[  4]   8.00-9.00   sec  42.9 MBytes   360 Mbits/sec
[  4]   9.00-10.00  sec  42.5 MBytes   356 Mbits/sec
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth
[  4]   0.00-10.00  sec   419 MBytes   351 Mbits/sec                  sender
[  4]   0.00-10.00  sec   419 MBytes   351 Mbits/sec                  receiver

It might be different with other clients as the client card with which I've tested it has only 2x2 streams.
My client wifi test card was: Intel(R) Dual Band Wireless-AC 8265

Maybe I will repeat some tests with other devices during the next days. If you also want to compare hsdma vs normal version, here are precompiled images with enabled hsdma:

Basic version (included packages like in post 399 but with hsdma):

Advanced version (included packages like in post 399 but with hsdma):

Any progress about your decompiler? I am looking for a usable lua decompiler for my ax3600, maybe your work will help a lot

I merged emirefek's tree into a combined 19.07 tree for RM2100 and R2100 now:

I also made some corrections. emirefek will test to compile and run this on R2100. In the meantime I'll test it for the white version (RM2100).

@ilyas : dtsi file created, dts files adjusted :slight_smile:

2 Likes

Tested. And works perfectly fine at R2100. This is stablish openwrt so far.

1 Like

I have some questions about building:

1 - Can I safely ignore these errors?

❯ ./scripts/feeds install -a
Collecting package info: done
Collecting target info: done
WARNING: Makefile 'package/utils/busybox/Makefile' has a dependency on 'libpam', which does not exist
WARNING: Makefile 'package/utils/busybox/Makefile' has a build dependency on 'libpam', which does not exist
WARNING: Makefile 'package/network/utils/curl/Makefile' has a dependency on 'libgnutls', which does not exist
WARNING: Makefile 'package/network/utils/curl/Makefile' has a dependency on 'libopenldap', which does not exist
WARNING: Makefile 'package/network/utils/curl/Makefile' has a dependency on 'libidn2', which does not exist
WARNING: Makefile 'package/network/utils/curl/Makefile' has a dependency on 'libssh2', which does not exist
WARNING: Makefile 'package/boot/kexec-tools/Makefile' has a dependency on 'liblzma', which does not exist
WARNING: Makefile 'package/network/services/lldpd/Makefile' has a dependency on 'libnetsnmp', which does not exist

2 - What am I supposed to select in the menuconfig? In specific for:

  • Target System
  • Subtarget
  • Target Profile
  • Target Images

Could you maybe share your .config so I can get an idea what is going on?

3- If my R2100 is already on OpenWrt, would I upgrade like this?

mtd write xiaomi-router-kernel1.bin kernel
mtd write xiaomi-router-rootfs0.bin ubi

1 - Can I safely ignore these errors?

You can't. You have missing dependencies You need to install some packages before start this process.
https://openwrt.org/docs/guide-developer/quickstart-build-images
Use this guide to compile and I hardly suggest to use "make download" before actual "make" and you can use "'make -j <your thread count+1>" rather than "make" at last step.

2 - What am I supposed to select in the menuconfig? In specific for:

Target Sys= MediaTek Ralink MIPS
Subtarget= MT7621
Target profile= Xiaomi R2100 or RM2100 (depends on your device)
Don't touch target Images. You'll be fine
And don't forget to configue LuCI.

3- If my R2100 is already on OpenWrt, would I upgrade like this?

You can but you shouldn't. Please upgrade at LuCI if you have oppurtunity to use Luci
sysupgrade -v -n /tmp/xiaomi_xxxx_xxxx-xxxx-xxxxx-sysupgrade.bin
Don't forget you should use just sysupgrade file. not others.

And I also uploading all my compiled images with .config(as my.config) to this URL if you don't have much knowledge about compiling you can use them. And you can edit them as your base config. You will get sysupgrade package. You don't need rootfs and kernel1 if you are already at OpenWRT. These are for switching between firmwares.

https://drive.google.com/folderview?id=19-FW3p6uKo5dn0to2fwQPjMah5p5geRn

2 Likes

I installed all the packages mentioned in that guide, can it be an issue that I try to compile this on a Raspberry Pi?

I only see "Xiaomi Redmi Router AC2100" but not RM2100 (which is the device I have).

It would be nice if you could share your images and .config

https://drive.google.com/folderview?id=19-FW3p6uKo5dn0to2fwQPjMah5p5geRn
Opps. Sorry.I was already uploaded but I forgot to paste url

You should select white version. My images for R2100 (black) btw

You shouldn't use rpi. Anyway you successfully manage to use script it will took more than 5hours to compile.

I am a bit confused. Why should I select the white Redmi one when I have the black one?

I tried using your sysupgrade image via LuCI and it told me

The uploaded image file does not contain a supported format. Make sure that you choose the generic image format for your platform.

I did some searching and found this: https://openwrt.org/docs/techref/hardware/soc/soc.broadcom.bcm47xx/image.conversion

I converted the file to .trx, but I can't see HDR0

❯ hd openwrt-ramips-mt7621-xiaomi_r2100-squashfs-sysupgrade.trx | head
00000000  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
00000040  00 00 00 00 30 30 30 30  37 35 35 00 30 30 30 30  |....0000755.0000|
00000050  30 30 30 00 30 30 30 30  30 30 30 00 30 30 30 30  |000.0000000.0000|
00000060  30 30 30 30 30 30 30 00  31 33 36 36 34 35 34 35  |0000000.13664545|
00000070  32 32 35 00 30 31 32 32  35 36 00 20 35 00 00 00  |225.012256. 5...|
00000080  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
*
000000e0  00 75 73 74 61 72 20 20  00 00 00 00 00 00 00 00  |.ustar  ........|
000000f0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|

There is a issue in source. I commented it and will be fixed soon. But it won't cause any issue in usage. You'll update to fixed version later. You should select Redmi R2100. Just for now. You'll select Mi R2100 after todays build. It'll be fixed.

I said white because you mentioned RM2100.
RM2100 = white
R2100 = black

Ignore it. Click RED Warning button below. Image isn't uncompatible. Just openwrt thinks like that because you was at RM2100 before and you are tryya switch R2100 now.

A much better way than using .config files (which are extremely code and version dependent):

Use the config.buildinfo = also called config seed, copy the content into a blank, newly created .config and place it into your openwrt dir. Then use make defconfig. It will blow the few lines up to a whole config file which fits to your codebase and your version.

You could just use the config.buildinfo from @emirefek . I would never suggest to use full config files as they are not portable in most cases.

Another advantage: You can rewrite it extremely easy for another device.

Just have a look at this example
My config seed for the basic image version I'm currently providing for RM2100 (white edition):

CONFIG_TARGET_ramips=y
CONFIG_TARGET_ramips_mt7621=y
CONFIG_TARGET_ramips_mt7621_DEVICE_xiaomi_redmi-router-ac2100=y
CONFIG_ALL_KMODS=y
CONFIG_DEVEL=y
CONFIG_KERNEL_BUILD_DOMAIN="buildhost"
CONFIG_KERNEL_BUILD_USER="builder"
# CONFIG_KERNEL_KALLSYMS is not set
CONFIG_OPENSSL_ENGINE=y
CONFIG_OPENSSL_PREFER_CHACHA_OVER_GCM=y
CONFIG_OPENSSL_WITH_ASM=y
CONFIG_OPENSSL_WITH_CHACHA_POLY1305=y
CONFIG_OPENSSL_WITH_CMS=y
CONFIG_OPENSSL_WITH_DEPRECATED=y
CONFIG_OPENSSL_WITH_ERROR_MESSAGES=y
CONFIG_OPENSSL_WITH_PSK=y
CONFIG_OPENSSL_WITH_SRP=y
CONFIG_OPENSSL_WITH_TLS13=y
CONFIG_PACKAGE_ca-bundle=y
CONFIG_PACKAGE_cgi-io=y
CONFIG_PACKAGE_hostapd=y
# CONFIG_PACKAGE_iw is not set
CONFIG_PACKAGE_iw-full=y
CONFIG_PACKAGE_libiwinfo-lua=y
CONFIG_PACKAGE_liblua=y
CONFIG_PACKAGE_liblucihttp=y
CONFIG_PACKAGE_liblucihttp-lua=y
CONFIG_PACKAGE_libopenssl=y
CONFIG_PACKAGE_libopenssl-conf=y
CONFIG_PACKAGE_libubus-lua=y
CONFIG_PACKAGE_libustream-openssl=y
CONFIG_PACKAGE_lua=y
CONFIG_PACKAGE_luci=y
CONFIG_PACKAGE_luci-app-firewall=y
CONFIG_PACKAGE_luci-app-opkg=y
CONFIG_PACKAGE_luci-base=y
CONFIG_PACKAGE_luci-lib-ip=y
CONFIG_PACKAGE_luci-lib-jsonc=y
CONFIG_PACKAGE_luci-lib-nixio=y
CONFIG_PACKAGE_luci-mod-admin-full=y
CONFIG_PACKAGE_luci-mod-network=y
CONFIG_PACKAGE_luci-mod-status=y
CONFIG_PACKAGE_luci-mod-system=y
CONFIG_PACKAGE_luci-proto-ipv6=y
CONFIG_PACKAGE_luci-proto-ppp=y
CONFIG_PACKAGE_luci-ssl-openssl=y
CONFIG_PACKAGE_luci-theme-bootstrap=y
CONFIG_PACKAGE_openssl-util=y
CONFIG_PACKAGE_rpcd=y
CONFIG_PACKAGE_rpcd-mod-file=y
CONFIG_PACKAGE_rpcd-mod-iwinfo=y
CONFIG_PACKAGE_rpcd-mod-luci=y
CONFIG_PACKAGE_rpcd-mod-rrdns=y
CONFIG_PACKAGE_uhttpd=y
CONFIG_PACKAGE_wpa-supplicant-mesh-openssl=y
# CONFIG_PACKAGE_wpad-basic is not set

If you want to use exactly the same options and packages for R2100 you would have to replace only a single line:
Replace the third line by:

CONFIG_TARGET_ramips_mt7621_DEVICE_xiaomi_mi-router-ac2100=y

So you see these smaller seed files have a lot of advantages and aditionally a much better readability as you can directly see what is different in comparison to the default packages.

Btw.: I will update all my 19.07.x branches during this afternoon to use exactly the same names as on openwrt/master to bring it in line.

Alright, I am now on your image and will try my own attempts once this gets fixed.

I didn't see a button to force the sysupgrade (using bootstrap theme). For everyone with the same issue just use the sysupgrade --force flag via ssh and it will be fine.

Thanks for the suggestion. Is there any tool that helps me generating my own config.buildinfo or is there a config seed available for every supported device?

Awesome, looking forward to experiment more with it. Are there any drawbacks when compiling the Kernel with MIPS FPU Emulator?

You cannot generate your own config.buildinfo it is just output when you compile firmware. This a file for announce which modules you integrated in menuconfig. The only way to generate config is using menuconfig. I'm not sure but I don't think @scp07 meaned you to use my config.buildinfo It should be like catch what option you should choose at menuconfig.

Glad to it worked. If you got any issue or bug report both me and scp07

I think you should fix issue at your RPi first. Could you please rm -Rf /path/cloned/git/repo and start all over guide again. And please check. Are you sure you got all dependencies. I think you are not. I'm saying this again but RPi is so weak for this job. I tried with Snapdragon855 before and I just cancelled it after much time. You can got vps at Hetzner or Vultr(which I'm doing same thing) They costing hourly.

Will do. Didn't notice anything so far beside HTTPS errors with LuCI, but that is package-specific.

The Pi4 4GB is somewhat decent in performance. I have another laptop around to compile this on if it takes ages or fails.

:slight_smile: ok if you're planning on doing a PR to openwrt, be aware that the LEDs for the "black" aren't really correct yet :slight_smile: