Building the Firmware
If you prefer to build the MassMesh firmware from the source, you may do so by using our fork of meta-imagebuilder.
Prerequisites
In order to build the firmware image, you will need:
- The name of the profile you wish to build
- The name of the device you wish to build for
There are currently 2 device profiles:
meshnode
: This firmware runs the mesh routing and encryption protocol on more powerful devicesmeshradio
: This firmware configures an addon radio to mesh wirelessly with other mesh radios
Check the device page for your device to determine which profiles are available for that device,
Build The Image
First, you will need to grab the meta-imagebuilder repository. This repository has a script in it that builds pre-configured OpenWRT images.
git clone https://github.com/massmesh/meta-imagebuilder cd meta-imagebuilder
Next, build the image using the `build` script.
./build massmesh <profile> <device>
Replacing <profile>
with the desired profile and <device>
with the target device. For example, the following command would build the meshnode firmware for espressobin:
./build massmesh meshnode globalscale_espressobin
The builder will output the files in communities/massmesh/<profile>/bin/<device>
:
ls -l communities/massmesh/meshnode/bin/meshnode_espressobin/ total 17976 openwrt-massmesh-meshnode-mvebu-cortexa53-device-globalscale-espressobin.manifest openwrt-massmesh-meshnode-mvebu-cortexa53-globalscale_espressobin-ext4-sdcard.img.gz openwrt-massmesh-meshnode-mvebu-cortexa53-globalscale_espressobin-squashfs-sdcard.img.gz sha256sums
Check the wiki page for your device to determine the proper file to flash when there are multiple. Alternatively, the OpenWrt documentation can help explain the different types of output files.