My LoRaWAN Signal Mapping MSc summer project. This is a copy of the actual repository with personal information removed.
Go to file
Starbeamrainbowlabs 1252d60af0 Default to 0600 when creating the custom settings file
The custom settings file will likely contain encryption keys and other 
sensitive data, so it's probably a good idea to tighten up the default 
permissions on it.
2019-07-16 18:08:39 +01:00
iot Implement GPS delta checking 2019-07-15 15:25:51 +01:00
lantern-build-engine@617fcdb5b9 Create initial report template 2019-05-03 13:59:37 +01:00
server Default to 0600 when creating the custom settings file 2019-07-16 18:08:39 +01:00
.gitignore build: Make pdflatex optional 2019-07-16 15:42:24 +01:00
.gitmodules Add TinyGPS as it's got a smaller program size then TinyGPS++ 2019-06-28 13:34:13 +01:00
.tern-project Start creating the database structure, but it's unfinished. 2019-05-22 18:04:46 +01:00
Initial Report Spec.pdf Add initial report spec 2019-05-02 15:57:41 +01:00
LICENSE Initial commit 2019-05-01 19:42:01 +01:00
README.md Implement an extra layer of encryption, but it's untested. 2019-07-15 13:49:44 +01:00
Signal Mapping Architecture.drawio Add participant information sheet & consent form to ethical form phase 2 2019-06-07 13:55:42 +01:00
build typo 2019-07-16 16:14:55 +01:00
compile_flags.txt Start weaving the libraries together, but there's quite a ways to go..... 2019-06-12 20:18:37 +01:00
ttn-listener.conf rsyslog: Fix syntax 2019-07-16 17:53:06 +01:00
ttn-listener.service Add logging.colour settings option 2019-07-16 18:01:17 +01:00

README.md

Msc-Summer-Project

My Msc Summer Project

Hardware Used

Getting Started

Run bash ./build setup from the command line at the root of this repository.

IoT Device

  • Copy settings.custom.cpp.example to settings.custom.cpp and fill in the fields there
    • This Bash one-liner can be used to generate a new encryption key in the right formats: head -c16 /dev/urandom | od -tx1 | awk '{ gsub(/^0+\s+/, "", $0); toml=$0; gsub(/\s+/, "", toml); print("settings.toml format: " toml); arduino=toupper($0); gsub(/\s+/, ", 0x", arduino); print("settings.custom.cpp format: 0x" arduino); exit }'
  • Review settings.h to make sure it matches your setup
  • Copy the folders in iot/libraries to your Arduino IDE libraries folder

Server

  • The bash ./build setup should have already installed the necessary dependencies.
  • Create settings.toml in the root of the repository if it doesn't exist already.
  • Review server/settings.default.toml and adjust settings.toml to fill in the values for the required fields, not forgetting the encryption key generated when setting up the IoT device.