SolOptXMR: Milestone 4/4: Full automation

SolOptXMR: Milestone 4/4: Full automation

SolOptXMR: Milestone 4/4: Full automation

Hello, Solar Miners!

It's time to present the latest release of SolOptXMR, that I've been working on for the last 4 months.

Let me repost the release notes from GitHub, supplied with screenshots:


This version brings full automation (after an initial setup investment) and a lot of stability via fast corner case testing, that allowed me to fix prevailing bugs and enables further, risky experiments, because the automated testing protects the software from deteriorating.

Major changes

- New console visuals: fast, dependency free and SSH-friendly (like for a remote access via Raspberry Pi, or other System on a Chip)

New (alternative) visuals.

- Testing corner cases: major stability improvement, that now allows to experiment freely with risky improvements, like a better optimization algorithm.

Below are some prominent corner cases:

Initial state: Severely overcharged.

Initial state: Severely undercharged - never started mining.

Undercharged but mining in the end, after accumulating enough charge.

- Automation documentation and scripts: automating almost all that could be automated, including compilation of external tools: p2pool, xmrig and monero daemon itself.

- Computer schedule: visually showing the plan and producing commands to remotely control the mining rigs via a single script.

Computer schedule: visual + set of commands

- Presenting multiple alternative solutions to choose from, to better match your daily habits. Using CLI, you may select how many of these solutions you'd prefer to have presented

- Wind turbines along the solar input and example config.

Wind turbines' input added to the (currently low) solar arrays' input

- LiFePO4 (dis)charge profiles and example config. Information delivered thanks to the Community!

The C\/1 profile belongs to LiFePO4 batteries.

- Tons of other new documentation. I'm the most fond of the additions to safety. Please notice, that there's no "compiler" to test if the documentation is factually correct or not, so this is always a kind of burden, that's not to be undervalued.

Generic terminal connection

- Switching off Inverter can now be modeled: example config. This allows to spare quite a lot of power during the night, that would go to a waste, as the inverters consume about 20-30 W.

- Temperature control script: Periodically scans the temperature and manipulates the CPU governor to reduce the maximal CPU frequency down to a level, that enables the CPU to cool off, after detecting its overheat. Then it restores the original value.


Except for one PR and one review, both done by u/endorxmr, I've completed this milestone all by myself, as u/endorxmr didn't find time any more after summer. He agreed, that I collect the whole payment for this particular milestone (#4), including his part. From the hourly perspective, I've well exceeded the sum of declared hours for both of us combined, but I blame it on my too optimistic planning and just move on :) Enjoy the project :)

How we'll address the remaining 2 milestones, one of which (#2) is entirely Endor's and 2nd of which (#3) is shared between us and whose my own part has been already published here (#3), yet my part still remains unpaid, will be discussed in a separate post somewhat later. The important information now is, that the project can now already be used end to end.

Business model introduction

As a full disclaimer, after reading comments of the (now closed) Monero Moon Newsletter CCS Proposal and Jeff's here, I conclude that it's the Community's expectation to actually insert a business model to an open source project, despite it being funded by the Community. The reasoning is, that at some point the Community expects to stop having to fund a given project. A fair point, regardless of the further and prior drama in that particular discussion.

My take on this in case of SolOptXMR is that I take an equal share of the donation, that would by default go to the developer of u/xmrig, the chosen mining software. In order not to actually decrease his profits, I've doubled the default donation level. It goes randomly either to his pool or mine. Therefore statistically, I'm not ripping him off, and it's only my own user base, who'll pay the (small) difference. I hope it's not perceived as predatory in any way, especially considering that it's the Community's wish in general.

I don't expect receiving very much of an income this way though, as this will most probably remain a niche project, until a broader adoption occurs in a year or two (?)

Thanks for reading and for your support!