Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
network:firmware:meshdesk [2024/02/17 14:30] – [Files to tweak] systemnetwork:firmware:meshdesk [2026/05/15 09:41] (current) – [Checkout the MESHdesk code] system
Line 6: Line 6:
 ---- ----
  
-====== OpenWRT 23.05.x with MESHdesk packages ======+====== OpenWRT 25.12.x with MESHdesk packages ======
 <alert type="info"> <alert type="info">
-Follow these instructions to include the MESHdesk package on devices that can run OpenWRT version 23.05.x+Follow these instructions to include the MESHdesk package on devices that can run OpenWRT version 25.12.x
 </alert> </alert>
 ===== Minimum hardware requirements ===== ===== Minimum hardware requirements =====
Line 14: Line 14:
         * **16M Flash**         * **16M Flash**
         * **64M RAM**         * **64M RAM**
-  * Although the system can potentially support hardware with fewer resources, support is no longer practical in 2024.+  * Although the system can potentially support hardware with fewer resources, support is no longer practical in 2026.
   * The hardware does not need to be equipped with a radio.   * The hardware does not need to be equipped with a radio.
   * Hardware without radios can be managed with APdesk.   * Hardware without radios can be managed with APdesk.
Line 69: Line 69:
   * Check out the **openwrt-meshdesk** package from the Github repository.   * Check out the **openwrt-meshdesk** package from the Github repository.
 <code> <code>
-#Do this in the working directory e.g. cd 23.05.(on the same level as the openwrt directory)+#Do this in the working directory e.g. cd 25.12.(on the same level as the openwrt directory)
 git clone https://github.com/RADIUSdesk/openwrt-meshdesk.git openwrt-meshdesk git clone https://github.com/RADIUSdesk/openwrt-meshdesk.git openwrt-meshdesk
 </code> </code>
Line 93: Line 93:
 cp -R ./openwrt-meshdesk/luci-app-meshdesk ./openwrt/feeds/luci/applications cp -R ./openwrt-meshdesk/luci-app-meshdesk ./openwrt/feeds/luci/applications
 </code> </code>
 +
 +===== Configure SSL for CoovaChilli =====
 +  * You need to decode the cert and key files used by CoovaChilli and place them in the required folder.
 +<code bash>
 +#cd to the working directory
 +base64 -d ./openwrt-meshdesk/ssl/k-b64.txt  > ./openwrt-meshdesk/MESHdesk/files/MESHdesk/captive_portals/key.pem
 +base64 -d ./openwrt-meshdesk/ssl/c-b64.txt  > ./openwrt-meshdesk/MESHdesk/files/MESHdesk/captive_portals/cert.pem 
 +</code>
 +
 ===== Updating the available packages ===== ===== Updating the available packages =====
   * Since we added a Luci application, we need to tell the SDK about it.   * Since we added a Luci application, we need to tell the SDK about it.
Line 128: Line 137:
 ^ Location      ^ Package       ^ Comment        ^ ^ Location      ^ Package       ^ Comment        ^
 | Base system    |**MESHdesk**    |     | | Base system    |**MESHdesk**    |     |
-Kernel Modules -> Network Support  kmod-batman-adv | Keep the default options |+Base system    |sqm-scripts   Used for bandwidth control on VLANs
 | Kernel Modules -> Netfilter Extensions  | kmod-nft-bridge | <wrap em>Include if you want to block or speed limit users</wrap> | | Kernel Modules -> Netfilter Extensions  | kmod-nft-bridge | <wrap em>Include if you want to block or speed limit users</wrap> |
 +| Kernel Modules -> Network Devices  | kmod-dummy | Include for internal VLAN (Dynamic RADIUS based VLANs on AP) |
 +| Kernel Modules -> Network Support  | kmod-batman-adv | Keep the default options |
 | Languages -> Lua  |lua-mosquitto  |      | | Languages -> Lua  |lua-mosquitto  |      |
 | Languages -> Lua  |**libiwinfo-lua**       | | Languages -> Lua  |**libiwinfo-lua**       |
Line 137: Line 148:
 | Luci -> Modules    | **luci-compat**   | Needs this modules for our package **VERY IMPORTANT** | | Luci -> Modules    | **luci-compat**   | Needs this modules for our package **VERY IMPORTANT** |
 | Luci -> Applications    | **luci-app-meshdesk**  | Luci App to enable and disable central management | | Luci -> Applications    | **luci-app-meshdesk**  | Luci App to enable and disable central management |
 +| Luci -> Applications    | luci-app-sqm  | Used for bandwidth control on VLANs 
 | Luci -> Themes   | **luci-theme-material**  | Modern theme that is easy to customize | | Luci -> Themes   | **luci-theme-material**  | Modern theme that is easy to customize |
 | Luci ->  Libraries  | **luci-lib-httpclient**  |  | | Luci ->  Libraries  | **luci-lib-httpclient**  |  |
Line 150: Line 162:
 |Network  | mosquitto-client-ssl  | Note the **CLIENT** package | |Network  | mosquitto-client-ssl  | Note the **CLIENT** package |
 |Network  | iw-full  | Required for Hotspot 2.0 | |Network  | iw-full  | Required for Hotspot 2.0 |
 +</panel>
 +
 +<panel type="primary" title="Advanced Package selection" no-body="true">
 +^ Location      ^ Package       ^ Comment        ^
 +| 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    |usb-modeswitch    |Used with LTE USB dongles  |
 +| Utilities -> Terminal |minicom      |
 +
 +
 +
 </panel> </panel>
  
Line 171: Line 199:
 WARNING: Makefile 'package/utils/policycoreutils/Makefile' has a dependency on 'libpam', which does not exist WARNING: Makefile 'package/utils/policycoreutils/Makefile' has a dependency on 'libpam', which does not exist
 WARNING: Makefile 'package/utils/policycoreutils/Makefile' has a build dependency on 'libpam', which does not exist WARNING: Makefile 'package/utils/policycoreutils/Makefile' has a build dependency on 'libpam', which does not exist
-make[2]: Entering directory '/home/system/Documents/fw_sdk/23.05.2/openwrt/scripts/config'+make[2]: Entering directory '/home/system/Documents/fw_sdk/25.12.3/openwrt/scripts/config'
 make[2]: 'conf' is up to date. make[2]: 'conf' is up to date.
-make[2]: Leaving directory '/home/system/Documents/fw_sdk/23.05.2/openwrt/scripts/config'+make[2]: Leaving directory '/home/system/Documents/fw_sdk/25.12.3/openwrt/scripts/config'
 make[1] world make[1] world
 make[2] target/compile make[2] target/compile
 make[3] -C target/linux compile make[3] -C target/linux compile
 </code> </code>
- 
- 
  
 ===== Files to tweak ===== ===== Files to tweak =====
 Use ssh to gain access to the device to modify these files. Use ssh to gain access to the device to modify these files.
-<panel type="primary">+<WRAP center round tip 100%> 
 +  * **openwrt-meshdesk/sample_configs/** have a growing list of sample configs which you should first consult.  
 +</WRAP> 
 <list-group> <list-group>
   * {{fa>file?fw}} [[:network:firmware:openwrt-wan-network|wan_network]]   * {{fa>file?fw}} [[:network:firmware:openwrt-wan-network|wan_network]]
Line 189: Line 218:
   * {{fa>file?fw}} [[:network:firmware:captive_portal-json|captive_portal.json]]   * {{fa>file?fw}} [[:network:firmware:captive_portal-json|captive_portal.json]]
 </list-group> </list-group>
-</panel> 
  
   * Once the customizations are complete, we can test everything.   * Once the customizations are complete, we can test everything.
Line 205: Line 233:
   * 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 table to find the location for the optimized files in the SDK.   * Use the following table to find the location for the optimized files in the SDK.
 +  * We use the override system of the SDK where we place the files in the required folders under **openwrt/files**.
 +  * This will then be included in the correct place as overrides when the firmware is compiled.
  
 <panel type="primary" title="Files" no-body="true"> <panel type="primary" title="Files" no-body="true">
  • network/firmware/meshdesk.1708173059.txt.gz
  • Last modified: 2024/02/17 14:30
  • by system