This repository has been archived by the owner on Jul 29, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Mesh network deployment tools
decantr/rgu-honours
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
rgu-honours =========== Distributed Mesh Sensor Network using Raspberry Pi's ---------------------------------------------------- This acts as a sister repository for the code for my honours project which can be found at [rgu-honours-docs](github.com/decantr/rgu-honours-docs). Motivation ---------- The goal for this project evolved over time, my initial idea was to implement a mesh network of sensors for monitoring various aspects a body of water and building a front end that could display this information. when I began doing my initial research into the area for my literature review, I discovered that there was a distinct lack of tooling for deploying Pi's and other SBC's as IoT devices. I began to create a tool that could facilitate this, as it would save time deploying devices for my original idea anyway. It quickly became clear that this tool was of far greater value as a number of colleagues asked for the tool, and flagged issues with it. From all of this the project pivoted to the title I have now. Breakdown --------- This repository contains the all of the code for the project. The `lib` folder contains the files to be deployed to the Nodes once they have been flashed. Structure --------- The `prepare-sd.sh` is the primary file and handles the user interaction. The Raspbian Lite image is obtained and cached locally by this upon runtime, meaning no additional work is required. By default Pi's are named according to whether they are a **Bridge** or a **Node**. A Bridge is the bridge to the main network and allows the data collected from the nodes to be accessed, ideally this device would have two network adapters be a bridge. A Node is a device that reports back on the network. Usage ----- To use this in your project, you need only edit the `lib/setup.sh` to add your own changes and optionally the `server` folder to add your own frontend. The actual reporter program used in this project requires that you build it before using it. Take note what architecture you are deploying to as the Pi 3 etc. is an ARMv7 device, while the Pi Zero, Pi 1 etc. is an ARMv6 device. ``` $ env GOOS=linux GOARCH=arm GOARM=7 go build # Pi 3 $ env GOOS=linux GOARCH=arm GOARM=6 go build # Pi Zero ``` From there simply run the script and answer questiosn related to your setup. ``` $ prepare-sd.sh ```
About
Mesh network deployment tools
Topics
Resources
Stars
Watchers
Forks
Packages 0
No packages published