yep its all good, need to figure out speed issues tho

1 Like

You can try to use generic bdwlan.bin (from OEM firmware) and see if HT160 can be started: https://file.io/HvnnJndoRibK

is that the one if the root of the oem firmware, cause if so yeah im already using that one, thats the one submitted to openwrt repo

a1df55e4024d270944ea1c4066c4cd50b6d39f66a126e8a8d5cd6b8d0b151918 *bdwlan.bin

To get bluetooth working you can try:

  1. List gpio chips in the system:
  • ls -l /sys/class/gpio/
  1. Check where you have pinctrl as device:
  • ls -l /sys/class/gpio/gpiochipXXX/
  1. Add gpiochip value + BT gpio
  • BTRESETGPIO="XXX+21"
  1. Execute commands from OEM firmware:
echo $BTRESETGPIO >/sys/class/gpio/export
echo out >/sys/class/gpio/gpio${BTRESETGPIO}/direction

echo 1 >/sys/class/gpio/gpio${BTRESETGPIO}/value
sleep 0.05
echo 0 >/sys/class/gpio/gpio${BTRESETGPIO}/value
sleep 0.05
echo 1 >/sys/class/gpio/gpio${BTRESETGPIO}/value
sleep 0.05

so ive got 1gbps on ethernet but around 300-500 over wifi

@SpectreDev I'm troubleshooting why I am getting an 'incorrect' MAC address. The only place I could find the correct one is in /dev/mtd20 as part of a long text string:

...modelNumber=MX42CF-EU.serial_number=55P20Mxxxxxxxx.hw_mac_addr=80:69:1A:xx:xx:xx.wps_device_pin=...

I guess MACs match on retail units while it doesn't on this particular model. Do you have that info on your partition? Is it something that could somehow be used to cover situations in which MACs don't match?

From OEM firmware:

  • /etc/registration.d/01_init.sh:
    # set OUI = Organization Unique ID
    ret=`skuapi -g hw_mac_addr`
    MAC=`echo $ret | awk -F"= " '{print $2}'`
    OUI=`echo $MAC | awk -F":" '{print $1$2$3}'`
    syscfg set OUI $OUI
  • /etc/init.d/service_wan.sh:
restore_mac_addr ()
{
    MACCLONE_ACTIVE=`sysevent get wan_mac_clone_active`
    if [ -n "$MACCLONE_ACTIVE" -a "1" = "$MACCLONE_ACTIVE" ] ; then
        ulog wan status "$PID restore wan mac addr for interface($SYSEVENT_current_wan_ifname) to factory $WAN_IFNAME_MAC"
        if [ -n "$SYSCFG_hardware_vendor_name" -a "$SYSCFG_hardware_vendor_name" = "Broadcom" ] ; then
           WAN_IFNAME_MAC=`nvram get hw_mac_addr`
           if [ -n "$WAN_IFNAME_MAC" ] ; then
               /sbin/macclone $SYSEVENT_current_wan_ifname $WAN_IFNAME_MAC
           fi
        else
            if [ "`cat /etc/product`" = "viper" -o "`cat /etc/product`" = "audi" ] ; then
                WAN_IFNAME_MAC=`fw_printenv | grep eth1addr | cut -d'=' -f2`
            else
                WAN_IFNAME_MAC=`syscfg get wan_mac_addr`
            fi
            if [ -n "$WAN_IFNAME_MAC" ] ; then
                ip link set $SYSEVENT_current_wan_ifname down
                ip link set $SYSEVENT_current_wan_ifname address $WAN_IFNAME_MAC
                ip link set $SYSEVENT_current_wan_ifname up
            fi
        fi
        sysevent set wan_mac_clone_active 0
    fi
}

For the retail version, the MAC of fw_printenv and the one of /dev/mtd20 are the same.

Turn on software offloading and hardware offloading and then turn on packet steering

Nice, that’s helped massively! Can get 400-500 consistently now.

I'm going to do SQM + Cake build and see if that improves anything

2 Likes


Top One is Wireless and bottom is Ethernet both are with SQM + CAKE fine tuned (can get 700~ but brings massive latency)

(packet steering only enabled)


With cake and sqm and packet steering

Without SQM + CAKE only packet steering

SQM + CAKE build:

Bufferbloat is handled better, but not much difference with bandwidth.
With CAKE: https://www.waveform.com/tools/bufferbloat?test-id=bab4d97d-29b6-466f-b3d7-21a0f3463092
Without: https://www.waveform.com/tools/bufferbloat?test-id=af6a8ebc-849f-4e8a-ab2b-bfedf36720b6

yeah you need a proper nss build, i was 95% of the way there

I had two builds working with bitthief’s repo and AgustinLorenzo’s repo, but wasn’t sure which NSS packages were required and what configuration needed to be done. It would build but WiFi was temperamental. I included the relevant dtsi import as well, hoping that was enough - but feel like there’s more to it.

you need all of them packages, but i still couldnt get it to go 1gbps

damn tried running unbound + odchpd and after a bit i run out of memory lol

Working NSS build Here:

(Its a sysupgrade, so you can just upgrade)

1 Like

With SQM? Have you noticed any difference in WiFi bandwidth?