I found the solution. Hopefully other will find this useful, too. To change the MAC address, you have to change it on the wifi chipset itself.
To start, follow steps 1 through 12 of section
Program the MT7697 on the mangOH Red from here.
Open cmd and run
mt76x7-flash-tool-console -g from the flash tool folder. This will generate the XML files we need to modify the efuse.
Open the new xml subfolder within the flash tool folder. Open
commands.xml in your preferred text editor, and change enable to
false for everything except efuse. Make sure that the com port is right, then save and close.
burn_all_efuse to false and
read_all_efuse to true. Change the filepath to
./efuse.dat for both fields. Save and close.
Back to the command prompt, run
mt76x7-flash-tool-console batch xml\commands.xml. When it completes, unplug the mangOH and plug it back in.
efuse.dat in your preferred hex editor. Starting at offset 0x4, change the 0s to your desired MAC address. Save and close.
burn_all_efuse to true and
read_all_efuse to false. Save and close.
Repeat step 5. When it completes, you can set the dip switches back to their normal configuration and ssh into legato as normal. Run
ifup wlan1 and
ifconfig wlan1 and it should reflect your new MAC address.
If you want to change the MAC address of additional mangOHs, all you have to do is repeat steps 6 and 8!
If you’re curious why this happens, the mt7697 has a default MAC address (
00:0C:43:76:87:23) that seems to be stored in its firmware, but it only uses it if the address stored in its efuse is all 0s. So if you set an address in the efuse, it will use that.