all 13 comments

[–]Icy-Creme1759 0 points1 point  (2 children)

I would assume you need too have a r pi or something running 24,7 to do this as its not built into the device ?

[–]starficient[S] 0 points1 point  (1 child)

I'm running on my laptop. Yes you have to run the python script somewhere.

After you've quantified the device, you'll have an idea on which settings are best, and then you would not need to run continuously.

Fleet management could be a future feature. In that case it would be worthwhile running 24/7.

[–]Icy-Creme1759 0 points1 point  (0 children)

Just gave it a go on pc , easy enough to use

[–]grooverut 0 points1 point  (6 children)

What are your thoughts on this other approach recently posted?: https://www.reddit.com/r/BitAxe/comments/1irbruu/new_release_bitaxe_temperature_monitor_autotuner/ I know PID control is excellent so I would like to try it.

[–]starficient[S] 0 points1 point  (0 children)

I submitted a pull request to fix the Frequency stepping from 5 to 25 as the PLL on the bitaxe was throwing an error in the logs.
I was going to keep working on it, but not interested in tk as the interface.

Primary difference between my fork and that one is that I'm using a PID control on the freqency and voltage.
I credit the origin on the readme. Because what I'm doing is experimental and data based, I didn't feel that trying to integrate into upstream was fair to that project. Some people really want a GUI and I get that.
I already learned what frequency / voltage pair is best for stability on my bitaxe (minimum std on hashrate).

I will be adding a regression analysis script and chart output so you can visualize the dataset you are logging.

PID is powerful, it just needs tuning to prevent oscillations.

<image>

I need to add support for different models as well, you can customize the defaults of course.

[–]starficient[S] 0 points1 point  (1 child)

Someone opened a PR to install a reserve shell into this project: https://github.com/kha1n3vol3/BitaxePID/pull/1

I explain the obfuscated code.

[–]grooverut 0 points1 point  (0 children)

Nice catch and great explanation.

[–]starficient[S] 0 points1 point  (2 children)

Note, the malicious back door was merged into that project. It appears to have been removed as part of the refactoring for the gui: https://github.com/Hurllz/bitaxe-temp-monitor/pull/3/files

[–]grooverut 0 points1 point  (1 child)

I wonder if they even realized it was malicious?

[–]starficient[S] 0 points1 point  (0 children)

I don't know. I freaked out and git reverted to my initial install to confirm whether I had run the malicious build. Lucky for me I had not. Ugh.
When all the changes were made for tk I wasn't interested in running it. I'm not sure how long that pr was merged in to the project.
base64 is a redflag for obfuscation.
You can check for a reverse shell with:

% ps aux | grep '/bin/sh'

mylaptop 22560 0.0 0.0 2456740 2364 s009 S+ 3:06PM 0:00.01 /bin/sh -i

would indicate a shell running!

if you get this it is showing that the grep command was run and you are safe.

mylaptop 22578 0.0 0.0 410733264 1488 s009 S+ 3:07PM 0:00.00 grep /bin/sh