'sup, dawgs!? Let's get this peep show running!
- Pronouns: he/his ... don't talk to me, as if I were more than one person. You'd be fookin' the language that's meant to be simple, Bro.
Solar Optimal mining of XMR
License: GNU Affero General Public License v3.0
As mentioned in the main issue, this particular issue deals with the individual tasks themselves and the ability for you to vote for or against them individually.
If you wish to donate, please visit this page.
If you have an idea, that's not mentioned here, please discuss it first in the brainstorming thread.
Please present your idea that you'd wish to be implemented, and it shall be discussed here. Finally it will be presented here for voting.
Hey everybody and a Happy New Year,
This is a fundraiser for the further development of SolOptXMR, whose interface can be found below:
https://htmlpreview.github.io/?https://github.com/mj-xmr/wishlist-mj/master/html/index.html
And here's the full tasks description.
On the 11th Nov 2022, I published the release of the Milestone 4 of 4 of the SolOptXMR project.
As a side note, the last point of that report was "Business model introduction", which has been retraced during the Community Review, so it became irrelevant for the current state of SolOptXMR.
After completing my contracted parts, the current state of SolOptXMR could be described as:
There are many more open points, implementation of which would greatly improve my software, that I hope is being used, or is at least planned to be used.
The full and regularly updated list can be found on the project's Wiki, just as a reference.
I'd ask for the possibility of further development to be funded outside of the formerly used CCS (Monero Community Crowdfunding System), firstly due to its personal-related inefficiencies, that take up all my time and energy, that would otherwise be spent on the project, and secondly due to the fact, that the benefits that the CCS delivers, don't apply to me anymore, IMO. The main benefits are:
If I wanted to rob anybody, this would have been my best chance, as Jiota continued her 4 month work only after the whole of the declared funds were collected on my account. I really just want to write my code and have nothing to do with the jealous Bad Actors, that currently plague the CCS (from my PoV) and don't "approve" other peoples' personal development, using political tactics as cheap as the infameous "cancel culture", "double speak" and simply by making rules as they go (in a nutshell).
Here's a perfectly fitting testimony of SolOptXMR itself, with all due respect to Authors these proposals, which are indeed Real:
I didn't realize that it was funded thru CCS, as I've stopped following what goes on there since in most cases it seems like just a grabbing bazaar without much return, so I am rather happy that you seem to be an exception there to actually produce something of real value AND put monero first.
Observing the matter from a more quantitative PoV, here's the cummulative Userbase's reaction after publishing the 4th Milestone. I guess, that the message is: "Shut up and keep writing that code".
In such fortunate case, the funding page can be found here.
The funding page contains each of the major points separated, as well as all the tiny tasks merged into larger ones. Naturally, the budget spared on a given task will be reused on others. The separation serves me as a way to prioritize my tasks according to your expectations.
In order to capture even more information than using the above method, for example either from my Users, who currently can't donate or optimistically - when all the points get fully funded, thus yielding no difference between their priorities, a mirror of the tasks is presented in the below GitHub issue, where I'd ask you to vote on particular tasks individually, using the Thumbs Up feature's "Reactions", or even Thumbs Down if you're firmly against a particular feature:
DETAILED TASK DESCRIPTIONS & VOTING MECHANISM
I will start working on any of the tasks, whichever collects the funding first. Specifically, I won't be waiting for the full budget to be accumulated.
The planned work is absent of the tasks, which were explicitly reserved for endor, who firmly expressed the will of finalizing them until an undisclosed date. If you'd like to know more about the progress of those tasks alone, you have to ask endor directly. Endor's tasks are described in the original proposal.
For reference, the discussion, where endor made the public statement paraphrased by me above, can be traced from here on. (NSFW warning!)
I'd like to take it easy and finalize all the declared tasks until the end of year 2023. The most critical features, that deal with helping you in protection of your mining hardware against damage and your electrical installation against catching fire across the warm time of the year, have already been implemented.
Assuming 270 working days in a year and an average of 2 hours per day of work on the project, as of 2022-12-26, I'd expect to collect a total sum of 225 XMR for the newly identified tasks.
I don't want to get into too much detail, but due to some bystanders' jealousy, there is an active defamation process carried out against me, where an excuse was used, by which I had openly introduced an experimental dev fee "against the contract". Big deal. I simply retracted the change before we agreed to complete the review. However bad memories remain... on both sides. For reference, here's my reply towards the offenders.
Hi... <3 this project - using miners as a diversion load has been on my roadmap for a long time. I havent tested it out yet but I sure will in the future. In my setup excess PV will charge the battery, then the warm water tank and then any access should be directed to mining. This would be a full off-grid scenario, so the miners should immediately throttle down, when the - by nature - intermittent PV production goes down to to clouds and quickly ramp up again to not drain the battery. This would require to involve metrics from battery as well as a separate pyranometer readout so that the system can ramp up again, as the pv inverters throttle their output when not enough demand is changing the frequency of the island grid.
How has your experience in practice been with on/off mining on p2pool, iirc it is PPLNS which is not really kind to on/off mining?
If you guys would like to discuss more p2p, you can always join us in #monero-pools on libera :)
In the main directory there's a symlink soloptxmr.py
, that points to src/prod.py
. The script calls a few Python modules, ultimately to call the opti
executable in the build/default-static-release/bin/
directory by default.
Even though calling the individual components that constitute the src/prod.py
goes fine, the script hangs the GitHub CI machines. See the workaround in util/ci.sh
:
python3 src/tests.py
# Now test unpickling:
python3 src/tests.py
./ci-default -o "VERBOSE_FUNCTIONS=OFF" # <-- it might be helpful to set it to ON
echo "Testing the entire production chain:"
if [ "$(uname)" == "Linux" ]; then
python3 src/prod.py
else
# TODO: Mac OSX suffers from an endless loop (?) in prod.py
#python3 src/prod.py
cd build/default-static-release/bin/
./opti
fi
A good approach would be to run the script in Python's debug mode and pause the execution to see where it hung.
It can be done either by a Mac owner or by somebody (like me) through renting an OSX terminal from a service like https://www.vpsserver.com .
$ ./soloptxmr.py
Traceback (most recent call last):
File "C:\Users\endor\Projects\SolOptXMR\soloptxmr.py", line 25, in <module>
from src import generator
File "C:\Users\endor\Projects\SolOptXMR\src\generator.py", line 23, in <module>
from . import weather_lib
File "C:\Users\endor\Projects\SolOptXMR\src\weather_lib.py", line 24, in <module>
from cairosvg import svg2png
File "C:\Users\endor\Projects\SolOptXMR\.venv-ui\lib\site-packages\cairosvg\__init__.py", line 26, in <module>
from . import surface # noqa isort:skip
File "C:\Users\endor\Projects\SolOptXMR\.venv-ui\lib\site-packages\cairosvg\surface.py", line 9, in <module>
import cairocffi as cairo
File "C:\Users\endor\Projects\SolOptXMR\.venv-ui\lib\site-packages\cairocffi\__init__.py", line 48, in <module>
cairo = dlopen(
File "C:\Users\endor\Projects\SolOptXMR\.venv-ui\lib\site-packages\cairocffi\__init__.py", line 45, in dlopen
raise OSError(error_message) # pragma: no cover
OSError: no library called "cairo-2" was found
no library called "cairo" was found
cannot load library 'C:\Program Files (x86)\GtkSharp\2.12\bin\libcairo-2.dll': error 0xc1
cannot load library 'libcairo.so.2': error 0x7e
cannot load library 'libcairo.2.dylib': error 0x7e
cannot load library 'libcairo-2.dll': error 0xc1
Found this reply which suggests installing this GTK runtime for windows. That solves the issue.
The profitability.py module appears to be broken, reporting connection errors from supportxmr.com, so I disabled it
It also needs to have an alternative source of information, as a fallback, in case the same thing happens again, as well as be able to react on the following options of the CLI:
--offline-force
- to avoid the web-API calls completely and deliver a dummy response without crashing the application--offline-try
- to try calling the web-APIs, including all the fallbacks and deliver a dummy if it all fails, producing a warningA declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.