Image: LoRa Boat Monitor
Fork of LoRa Boat Monitor from GitHub from Norbert Walter
I made several changes to the code:
- Put the files for the web server (*.html) from linked header files into file system in the flash. You can copy and modify single files, without flashing the hole image.
- use the "MCCI LoRaWAN LMIC library" instead of "IBM LMIC framework".
- added the option to bring device into sleep mode.
- send data via Lora or Wifi.
Small hardware changes:
- cut the +5V line to the GPS module, and wire the GPS +5V pin to one the relay pins (X3-3).
- The Other (X3-2) connect to +5V of the Board. This gives you the option, to shutdown the GPS Modul in sleep mode.
Another change that i made is the related to the IN1 (alarm1):
- connect X1-4 to GND
- connect X1-3 to the output of your Batterie switch (turn Main Batterie on, will start the Lora-Boat-Monitor, turn of your switch will turn the Lora-Boat-Monitor into Standby) (I changed the IN1/alarm1 logic from "low active" to "high active") This makes ist possible to set the ESP into sleep mode and reduce power consumption.
Project home page: https://open-boat-projects.org/en/lora-bootsmonitor/
The LoRa boat monitor is used to monitor the boat when it is absent. Various measured values are continuously recorded at freely adjustable time intervals and transferred to the LoRaWAN forwarded. The data is from the TTN server (The Thinks Network) received in Amsterdam and cached and then sent to Ubidots forwarded as a web frontend. The data transmission is secured by encryption up to Ubidots. The measured data is displayed in Ubidots and various notifications can be sent by email when measured values are exceeded.
There are a large number of LoRa gateways which can receive the sent measurement data and forward it to the TTN server. Many LoRa gateways are run by private individuals on a non-profit basis. Anyone who wants can operate their own gateway and make it available to the general public. The radio technology uses the license-free frequency range around 868 MHz and uses a special transmission technology (chirp) to achieve large ranges of up to 50 km at low data rates. The ranges depend on the type of transmission, the antenna height and the environment. In built-up areas such as cities, typical ranges of 1… 4 km are possible. In open environments such as lakes and the sea, up to 50 km can be reached. There are no costs for data transmission when sending LoRa telegrams. This is the big difference to other long range transmission technologies like SIGFOX and mobile data networks such as 3G / 4G / 5G. If no LoRa gateway is within range, a simple 1-channel or 3-channel LoRa gateway can be set up with the same board. Only a few components are then left out and a different firmware used. Alternatively, the measured values can also be sent directly to Ubidots via WLAN, provided that a WLAN is within range.
Image: LoRa data transmission Semtech GmbH
Image: Block diagram LoRa boat monitor
- 10… 32V supply voltage
- 1.2W power consumption
- LoRa transmitter and receiver with OLED display
- 868 MHz, SF7… SF12, 100 mW transmission power
- Dynamic spreeding factor adjustable SF7… FS10
- Supports channel 0...7 dynamic and fix
- Data transfer rate: 0.3 to 50 kbit / s
- Max. Telegram length for user data: 200 bytes
- Range: built-up area 1… 4km, open area up to 50km
- LoRa transmission interval 30s… 2.1h
- One-channel, three-channel and eight-channel modes can be set
- Feeding the data into The Thinks Network (TTN)
- Parameterization of the LoRa boat monitor possible via return channel (channel, SF, transmission interval, relay)
- WLAN (2.4 GHz) for alternative data transmission
- Web interface for operation
- Firmware update possible via WLAN and Internet
- GPS sensor for geographic location coordinates
- BME280 for measuring temperature, humidity and air pressure
- 1x battery voltage measurement (0… 32V service battery)
- 1x potential-free alarm contact eg for bilge and door monitoring
- 2x tank sensors (0 ... 180 Ohm) with percentage display
- Calibratable tank and voltage sensors
- 1x Reais output for potential-free switching of loads with specified time (5min ... 21h) up to 3A (12V or 230V)
- 2x 1Wire connection for temperature sensors DS18B20 for battery monitoring and refrigerator
- Monitoring and alerting via Ubidots web frontend
- Alerting by e-mail if limit values are exceeded via Ubidots
- Automatic data storage for the last 31 days at Ubidots
- Use of cheap embedded modules
- No SMD components on the board and easy to build
- Board can be ordered here:https://aisler.net/p/GEIYWWXZ
- Android app
You have the option of creating your own code using the online software development environment Gitpod. Follow this link and a finished development environment similar to PlatformIO will be created that runs in your browser with all code components. To compile the software, enter bash run in the terminal. In the workspace you will find the compiled binary code under .pio/build/heltec_wifi_lora_32_V2/firmware.bin. With a right click you can download the binary file. You need a account for Gitpod.
With the Web Flash Tool you can very easily flash the device with the firmware from the web browser. You need a Chrome or Edge browser and a USB connection cable. If the device is connected to the USB port of the computer, the serial connection can be selected and the flash process can then be started.
I have completed many tasks but still not everything is perfect so far.
- Technical recherche
- Evaluation of function
- LoRa trasmission tests
- Accessibility of gateways
- Measurement of telegram losses
- Test spreeding factors
- Antenna test
- TTN configuration
- Ubitots configutarion and restrictions
- Mechanical design
- 3D parts für Onshape
- Electronic design
- Circuit design
- Board design
- Customer sample circuit
- Software
- Basic functionality for LoRa
- LoRa back channel for configuration
- Dynamic spreedung factor
- Voltage measurement
- Tank sensors
- GPS modul
- BME280
- Alarm sensors
- Relay function
- JSON
- Web-Updater
- Web-Configurator
- Web server as data display
- VE.Direct support for Victron
- Ubidots connection via WiFi
- NMEA0183 WiFi
- NMEA0183 Serial
- MQTT
- Andoid App
- LoRa gateway firmware
- Migration to TTS V3
- Components ordering
- Electronic board
- Mechanical parts
- Fittings
- Prototyp creation
- LoRa boat monitor
- LoRa gateway
- Production Zero series
- DIY Kits
- Assembled LoRa boat monitor
- Shipping Zero Series
- Documentation
- Documentation and update server on GitLab
- Technical description
- Construction manual
- Part list
- User manual
- Data sheet
- Flash instructions
- Application tests
- Temperature 20...40°C
- LoRa range test (SF7...SF12)
- WiFi stability test
- Connection test
- Long time test
- User experiences
- Extensions
- Battery current sensor
- Actions and alarms depends on events and measuring values
- Build a LoRa gateway structure on two towers for the IJsselmeer in Netherlands
- Certification
- CE Certification
For questions or suggestions please get in contact via email at norbert-walter(at)web.de.
If you like to help or consider this project useful, please donate. Thanks for your support!