srcfl / srcful-gateway

Sourceful Energy Gateway: Connect your solar inverter or Utility meters to earn tokens.
https://sourceful.energy/
MIT License
5 stars 2 forks source link

Srcful Energy Gateway

The Srcful Energy Gateway application is a bundle of services that are deployed as docker containers on a Raspberry Pi.

+------------+                       +------------+
|            |                       |            |
|  Srcful    |                       |            |
|  Energy    |<--- modbus tcp/ip --->|  Inverter  |
|  Gateway   |                       |            |
|            |                       |            |
+------------+                       +------------+

Setting Up the Raspberry Pi

Raspberry Pi OS Lite (64-bit) is the recommended operating system.

  1. Configure and Update:

    • Run sudo raspi-config to set locale and timezone.
    • Update with sudo apt-get update && sudo apt-get upgrade -y.
    • Restart with sudo reboot and log in again using SSH.
  2. Enable i2c and SPI:

    • Use sudo raspi-config to enable I2C and SPI interfaces.
    • For Rak Hotspot Miner V2, edit /boot/firmware/config.txt to add dtoverlay=spi0-1cs.
    • Save, exit, and restart with sudo reboot, then log in again using SSH.

Building and Running the Project

To build and run this project, simply run the following command:

docker-compose -f compose-rpi4.yml up

Or in detached mode:

docker-compose -f compose-rpi4.yml up -d

Testing

To run the tests, execute the following command:

For the server service:

pytest server/tests/server_unit_test
pytest server/tests/server_rest_test

For the bluetooth service:

pytest bluetooth/tests/ble_unit_test
pytest bluetooth/tests/ble_rest_test