Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| network:firmware:meshdesk [2024/02/17 12:19] – system | network:firmware:meshdesk [2025/04/15 05:18] (current) – system | ||
|---|---|---|---|
| Line 6: | Line 6: | ||
| ---- | ---- | ||
| - | ====== OpenWRT | + | ====== OpenWRT |
| <alert type=" | <alert type=" | ||
| - | Follow these instructions to include the MESHdesk package on devices that can run OpenWRT version | + | Follow these instructions to include the MESHdesk package on devices that can run OpenWRT version |
| </ | </ | ||
| ===== Minimum hardware requirements ===== | ===== Minimum hardware requirements ===== | ||
| Line 22: | Line 22: | ||
| * Next, let us look at the steps you need to take to compile OpenWrt with the included MESHdesk package. | * Next, let us look at the steps you need to take to compile OpenWrt with the included MESHdesk package. | ||
| + | <panel type=" | ||
| ===== Steps when adding new hardware ===== | ===== Steps when adding new hardware ===== | ||
| ==== Explanation of our modus operandi (MO) ==== | ==== Explanation of our modus operandi (MO) ==== | ||
| Line 33: | Line 34: | ||
| ------ | ------ | ||
| - | <panel type=" | + | |
| ==== First development firmware ==== | ==== First development firmware ==== | ||
| These steps are performed <wrap em>ONLY ONCE</ | These steps are performed <wrap em>ONLY ONCE</ | ||
| Line 46: | Line 47: | ||
| </ | </ | ||
| <wrap em>This is a one-time process. Once you have customized the files, you can skip this step in the future and simply use the device-specific files if you need to create new firmware for the same hardware.</ | <wrap em>This is a one-time process. Once you have customized the files, you can skip this step in the future and simply use the device-specific files if you need to create new firmware for the same hardware.</ | ||
| - | </ | + | |
| ------- | ------- | ||
| Line 55: | Line 56: | ||
| - meshdesk | - meshdesk | ||
| - Flash your device with the production firmware. | - Flash your device with the production firmware. | ||
| + | </ | ||
| * So without further ado, let us start with the first development firmware. | * So without further ado, let us start with the first development firmware. | ||
| * We will take a Xiaomi 4A 100M access point as an example device. | * We will take a Xiaomi 4A 100M access point as an example device. | ||
| Line 68: | Line 69: | ||
| * Check out the **openwrt-meshdesk** package from the Github repository. | * Check out the **openwrt-meshdesk** package from the Github repository. | ||
| < | < | ||
| - | #Do this in the working directory e.g. cd 23.05.2 (on the same level as the openwrt directory) | + | #Do this in the working directory e.g. cd 24.10.1 (on the same level as the openwrt directory) |
| git clone https:// | git clone https:// | ||
| </ | </ | ||
| Line 94: | Line 95: | ||
| ===== Updating the available packages ===== | ===== Updating the available packages ===== | ||
| * Since we added a Luci application, | * Since we added a Luci application, | ||
| - | * After you copied | + | * After copying |
| <code bash> | <code bash> | ||
| #cd to the working directory | #cd to the working directory | ||
| Line 102: | Line 103: | ||
| scripts/ | scripts/ | ||
| </ | </ | ||
| - | * The result is that the MESHdesk | + | * The result is that the Luci application |
| ===== Select Packages To Include With Firmware ===== | ===== Select Packages To Include With Firmware ===== | ||
| - | {{:technical: | + | <panel type=" |
| - | * The OpenWrt SDK has a cursors interface (much like Midnight Commander for the old school readers 8-O) | + | {{:network: |
| - | * To start this cursors interface | + | </ |
| + | * The OpenWrt SDK has a cursors interface (similar to Midnight Commander for the old school readers 8-O) | ||
| + | * To start this cursors interface, you have to change | ||
| * Then issue the following: | * Then issue the following: | ||
| <code bash> | <code bash> | ||
| Line 114: | Line 117: | ||
| make menuconfig | make menuconfig | ||
| </ | </ | ||
| - | * Here you will select the hardware architecture of the device you want to build the firmware | + | * Here you select the hardware architecture of the device |
| - | * Also select the following packages when building | + | * Also select the following packages when creating |
| - | * When selecting | + | * When you select |
| - | * **Make sure you select | + | * **Make sure you select the (*) option to fully include the package.** |
| - | * Package | + | * The package |
| * The Mosquitto packages are for MQTT support. | * The Mosquitto packages are for MQTT support. | ||
| - | * The Batman packages are for mesh support. | + | * The Batman packages are for Mesh support. |
| + | <panel type=" | ||
| ^ Location | ^ Location | ||
| | Base system | | Base system | ||
| - | | Kernel Modules -> Network Support | + | | Base system |
| | Kernel Modules -> Netfilter Extensions | | Kernel Modules -> Netfilter Extensions | ||
| + | | Kernel Modules -> Network Devices | ||
| + | | Kernel Modules -> Network Support | ||
| | Languages -> Lua |lua-mosquitto | | Languages -> Lua |lua-mosquitto | ||
| | Languages -> Lua |**libiwinfo-lua** | | Languages -> Lua |**libiwinfo-lua** | ||
| Line 133: | Line 139: | ||
| | Luci -> Modules | | Luci -> Modules | ||
| | Luci -> Applications | | Luci -> Applications | ||
| + | | Luci -> Applications | ||
| | Luci -> Themes | | Luci -> Themes | ||
| | Luci -> Libraries | | Luci -> Libraries | ||
| Line 146: | Line 153: | ||
| |Network | |Network | ||
| |Network | |Network | ||
| + | </ | ||
| + | |||
| + | <panel type=" | ||
| + | ^ Location | ||
| + | | Kernel modules -> USB Support | kmod-usb-net-cdc-mbim | ||
| + | | Kernel modules -> USB Support | kmod-usb-net-qmi-wwan | ||
| + | | Kernel modules -> USB Support | kmod-usb-serial-option | optional - for AT commands | | ||
| + | | Kernel modules -> USB Support | kmod-usb-serial-qualcomm | ||
| + | | Kernel modules -> USB Support | kmod-usb-serial-sierrawireless | ||
| + | | Kernel modules -> USB Support | kmod-usb-wdm | ||
| + | | Network -> WWAN |uqmi | | | ||
| + | | Utilities | ||
| + | | Utilities -> Terminal |minicom | ||
| + | |||
| + | |||
| + | |||
| + | </ | ||
| - | * After you selected these packages you can save the configuration and issue **make** to build the firmware. | + | * Once you have selected these packages, you can save the configuration and run **make** to create |
| - | * The completed | + | * The finished |
| * In our case we will use // | * In our case we will use // | ||
| - | * The firmware you just built will be standard OpenWrt | + | * The firmware you have just created is then a standard OpenWrt and you can flash your hardware |
| * Username and Password is **root** and **admin** for Luci and ssh. | * Username and Password is **root** and **admin** for Luci and ssh. | ||
| - | * The next section | + | * The next section |
| ==== Note on Warnings | ==== Note on Warnings | ||
| - | * When you issue the **make** command these warnings | + | * When you run the **make** command, you may see these warnings. |
| * They are harmless and can be ignored. | * They are harmless and can be ignored. | ||
| <code bash> | <code bash> | ||
| Line 166: | Line 190: | ||
| WARNING: Makefile ' | WARNING: Makefile ' | ||
| WARNING: Makefile ' | WARNING: Makefile ' | ||
| - | make[2]: Entering directory '/ | + | make[2]: Entering directory '/ |
| make[2]: ' | make[2]: ' | ||
| - | make[2]: Leaving directory '/ | + | make[2]: Leaving directory '/ |
| make[1] world | make[1] world | ||
| make[2] target/ | make[2] target/ | ||
| Line 177: | Line 201: | ||
| ===== Files to tweak ===== | ===== Files to tweak ===== | ||
| - | Use ssh to gain access to the device | + | Use ssh to gain access to the device to modify |
| + | < | ||
| + | * {{fa> | ||
| + | * {{fa> | ||
| + | * {{fa> | ||
| + | </ | ||
| - | * [[technical: | ||
| - | * [[technical: | ||
| - | * [[technical: | ||
| - | |||
| - | * Once the tweaks are completed we can test everything out. | ||
| - | * Log onto your device using Luci (http:// | ||
| - | * The following image shows how to point the device to the controller using the GUI. | ||
| - | {{: | ||
| - | * Point the device to your controller and reboot it. | ||
| - | * If all goes well it will show up in Unknown Nodes. | ||
| - | * If it is a new hardware type add it to the controller as described here: Hardwares (Again Once Off) | ||
| + | * Once the customizations are complete, we can test everything. | ||
| + | * Log in to your device with Luci (http:// | ||
| + | * The following image shows how to point the device to the controller via the GUI. | ||
| + | <panel type=" | ||
| + | {{: | ||
| + | </ | ||
| + | * Point the device at your controller and restart it. | ||
| + | * If all goes well, it will be displayed under New Arrivals - Hardware. | ||
| + | * If it is a new hardware type add it to the controller as described here: Hardware (Again Once Off) | ||
| ===== The Production Built ===== | ===== The Production Built ===== | ||
| - | * If everything on the device | + | * If everything |
| * Copy the files to a temporary folder on the machine where you are building the firmware. | * Copy the files to a temporary folder on the machine where you are building the firmware. | ||
| - | * Use the following | + | * Use the following |
| + | <panel type=" | ||
| ^On Device | ^On Device | ||
| - | |/ | + | |/ |
| - | |/ | + | |/ |
| - | |/ | + | |/ |
| - | |/ | + | |/ |
| - | + | </ | |
| - | * This brings us to the end of the page on how to build MESHdesk firmware for specific hardware. | + | * This brings us to the end of the page that describes |