Skip to content
mj-xmr edited this page Dec 25, 2022 · 66 revisions

Welcome to the SolOptXMR wiki!

TODO

Minimum

  • all jsons under the local config directory
  • weather: predict 3 days ahead
  • proper solar readout
  • UIs: console + curses + Qt
  • temperature safety - use the script at startup
  • present multiple solutions in a HTML file (Partly done: using console)
  • document rectangle recognition
  • Docker images
  • Conda environment & virtualenv
  • Windows port
  • OSX fixes
  • Rpi CI
  • minimize Python dependencies, based on User choices

Major

  • measurements
  • interface for custom energy sources like wind
  • automated download of mining software
  • scheduling for further days requires setting these days for the at command as well (+ tests of course)
  • translate measured voltage into battery charge in Ah
  • model charge voltage to State of Charge
  • allow for a custom energy input plugin
  • model voltage loss from attaching consumers
  • multiply the voltage of the voltage functions by the multiple of (system.json voltage / 12V)
  • 2 phased optimization: first see which setups treat the battery well, then from these select those which maximize profits
  • Support more PCs by improving the combination algorithm (currently up to 2 PCs are supported)
  • automatically switching on & off the PCs. Needs documentation & scripts
  • hashrate predictions into model
  • OSX support. Issue link

Testing

  • prep. testing scheme for the end results without having to do heavy calculations
  • simulate some found solutions to test the production path in a fast way
  • the search algo gets confused if the initial conditions show battery overcharge

Known bugs

  • setting wind turbine's count to 0 leads to crashes after calling the opti program from Python
  • opti app writes to /tmp, rather than to the ConfSol.m_outDir. It might be related to the OSX bug.

Minor

  • type hints
  • doc: how to enable MSR module
  • doc: cable sizes vs max current
  • doc: fuses on battery, cables (industrial), mppt's radiator, that can overheat and inverter's grounding. Mention synthetic load
  • doc: measure and document battery voltage vs. temperature, esp. across the night.
  • doc: grounding https://www.solaris-shop.com/blog/grounding-techniques-to-prevent-inverter-damage/
  • 3 line plots by stacking 2 blocks on top of one another
  • arbitrary number of line plots by stacking N blocks on top of one another
  • automatically scramble the geo location

Lifepo4 bats

Future work

  • compare historical results against each other across time, to measure the discrepancy
  • scheduled energy production with crank, similarly to habits
  • detailed cloud forecast 1 2 3
  • cloud forecast abstraction & fallbacks
  • leverage Boost Units to avoid potential conversion errors.
  • synthetically increase the load during days of rapidly alternating clouded/sunny sky to reduce the shock on the inverter
  • predict and evaluate future network difficulty fluctuations. Right now we're just displaying the current situation.
  • more work on optimization algorithm: fuzzification between the bands
  • algo: use decision tree, or genetic algo, rather than a fully random choosing
  • flywheels & hydro storage
  • choose habits via console and their text ID
  • habits need to be able to be declared as optional, and ran only when there's enough power
  • use the installation scripts to setup i2p network automatically
Clone this wiki locally