Skip to content

chGoodchild/SolarOracle

 
 

Repository files navigation

Victron Energy Monitoring and Control System with Bitcoin Miner Integration

This project provides tools for reading and displaying data from Victron Energy BlueSolar chargers (and others using the VE.direct protocol) and enhances the functionality by integrating Bitcoin miner control based on solar energy availability. It aims to optimize the use of excess solar energy by monetizing it through Bitcoin mining, thus creating a more efficient and sustainable energy system.

Features

  • mpptdump: Command line tool for reading out data from VE.direct chargers and displaying them in the shell. It supports single read-outs or continuous updates.
  • mpptemoncms: Similar to mpptdump, this tool reads out and displays data from chargers and sends them to an emonCMS host for further processing and visualization.
  • Director Script (director.py): Dynamically adjusts the Bitcoin miner's power target based on available solar power, ensuring the miner only uses excess energy not needed by the battery system.
  • Data Collection and Control: Utilizes get_miner_data.py, monitor_miner.py, and get_panel_data.py to collect data necessary for making informed decisions on miner power adjustments.
  • Enhanced Configuration and Setup: Streamlines the setup process for interacting with the charge controller and emonCMS, with additional scripts like setup.sh and configuration files like mppt_config.conf and cronjob.sh for scheduled operations.

Installation

  1. Clone the repository to your local machine.
  2. For integrating the Bitcoin miner control:
    • Ensure you have libconfig9 and libconfig-dev installed.
    • Run setup.sh to build and set up the necessary tools.
    • Copy mpptemoncms.conf.default to mpptemoncms.conf, then edit it with your specific configuration details.
    • Review and adjust cronjob.sh for scheduled operations of the director script.

Usage

  • mpptdump: Run the tool from the command line to see real-time data from your VE.direct charger.
  • mpptemoncms: Start the tool to continuously read out charger data and send it to your configured emonCMS host.
  • Director Script: Automatically runs based on the schedule set in cronjob.sh to adjust the Bitcoin miner's power consumption.

Instructions for Raspi

  • Use with FT232 USB-Serial Converter via ttyUSB0.
  • For native serial interface ttyAMA0, insert 2k2 series resistors into Tx and Rx lines for protection before use.

Contribution

Contributions to enhance the project are welcome. Please follow the standard git workflow for contributions.

Acknowledgements

This project was enhanced for use at the Chaos Communication Camp in 2023, where I got to present a demand response laundry tumbler thanks to the generous support of fulmo and 21energy.

About

Victron Energy MPPT charger tools for OSX and Linux

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 57.8%
  • Python 39.2%
  • Shell 2.3%
  • Makefile 0.7%