My LoRaWAN Signal Mapping MSc summer project.
This is a copy of the actual repository with personal information removed.
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
4 years ago | |
---|---|---|
client_src | 4 years ago | |
common | 4 years ago | |
iot | 4 years ago | |
lantern-build-engine@617fcdb5b9 | 4 years ago | |
server | 4 years ago | |
.gitignore | 4 years ago | |
.gitmodules | 4 years ago | |
.tern-project | 4 years ago | |
Initial Report Spec.pdf | 4 years ago | |
LICENSE | 4 years ago | |
README.md | 4 years ago | |
Signal Mapping Architecture.drawio | 4 years ago | |
build | 4 years ago | |
compile_flags.txt | 4 years ago | |
package-lock.json | 4 years ago | |
package.json | 4 years ago | |
rollup.config.js | 4 years ago | |
server.sh | 4 years ago | |
ttn-listener.conf | 4 years ago | |
ttn-listener.service | 4 years ago |
README.md
Msc-Summer-Project
My Msc Summer Project
Hardware Used
- RFM95 w/ breakout (alternatively this)
- GPS (or this)
- microSD breakout
- DC in + USB-a power regulator (or maybe this)
- microSD Card - any card that's 1GiB+ will do.
- Arduino Uno
- Breadboard
- Jumper cables (e.g. a, b, and c)
- Battery - Size currently unknown - I'll need to run some tests to see how much power it uses to figure out the right battery size.
- Project box - if we can't 3D print one
- TPL-5111 - also available from Pimoroni
Getting Started
Run bash ./build setup
from the command line at the root of this repository.
IoT Device
- Copy
settings.custom.cpp.example
tosettings.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 }'
- This Bash one-liner can be used to generate a new encryption key in the right formats:
- 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 adjustsettings.toml
to fill in the values for the required fields, not forgetting the encryption key generated when setting up the IoT device.
Useful Links
- Entropy extraction from the watchdog timer vs the internal clock: https://github.com/taoyuan/Entropy