Code Monkey home page Code Monkey logo

mobileminer's Introduction

Scala Android Miner

A high performance and open-source application for mining Scala on Android mobile devices.

Supported CPU instruction sets

  • armeabi-v7a
  • arm64-v8a

Features

  • AMAYC machine-learning algorithm to protect the device
  • Temperature display
  • QR code feature to capture wallet address
  • Completely redesigned UI
  • Refactored framework
  • Payout widget
  • Live Pool statistics for pools based on nodejs-pool cryptonote-nodejs-pool frameworks

Miner

This application is built upon the libraries of XLArig, the official Scala (XLA) CPU miner.

Usage

Settings

Pool

When opening the application for the first time, you have to specify the pool that you want to use to mine XLA. Some predefined pools have been configured to make it easier for you. You can still select 'custom' if you wish to use a pool that is not included in the predefined list. More information about the port number can be found on the pools' website, but if you are not sure you can use port '3333'.

The 'Worker name or pool options' field can be left blank if the pool doesn't use any options/password. In this case, the worker name will be set to your device type (make and model) by default so you can easily identify it on the pool.

Wallet Address

Specifies the Scala wallet address that will be used with the mining pool. A validation has been added to this field to make sure you enter a valid address. You can also use the provided QR code functionnality to retrieve the address. Currently, only the Official Pool and the Official GUI Wallet support QR code functionnality.

Hardware Settings

CPU Cores

The application automatically detects your device's number of CPU cores. Use less cores if you want to prevent your device from overheating or to keep using other applications while mining.

CPU Temperature

Defines the maximum temperature that you want your device's CPU to reach. If your device has no CPU temperature sensor, this setting will be ignored.

Battery Temperature

Defines the maximum temperature that you want your device's battery to reach. If your device has no Battery temperature sensor, this setting will be ignored.

Cooldown Threshold

Defines the temperature at which the application will resume the mining process. Both the CPU and Battery temperatures must have reached the safe level for the miner to resume. For example, if the maximum CPU and battery temperatures are respectively 65 °C and 40 °C and the Cooldown Threshold is set to -10%, then the CPU and battery temperatures must reach (0.9 * 65) °C and (0.9 * 40) °C for the miner to resume.

Disable Temperature Control

This application implements two layers of protection for your device. The first one is the As-Much-As-You-Can (AMAYC) machine learning algorithm that can predict when your device will overheat and pause the miner until the device's temperature has normalized. The second one is a static temperature monitoring that will automatically pause the miner if your device reaches one of the maximum temperatures defined in the settings. Turning this feature off might cause damage to your device. Do it at your own risk!

Options

Mining Goal

The mining goal should reflect the pool payout setting, but you can also specify a custom value for your device. The default value is the minimum payout value of the specified mining pool.

Pause mining on battery power

Enable this feature to pause mining when your device is not charging.

When saving the settings, you will be redirected automatically to the Miner page. Just hit 'Start' to start mining.

Miner

The Payout Widget which is at the top of the screen displays the current balance for the selected pool and the progression toward the defined mining goal. If the specified pool does not provide an API (in the case of custom pools for example), this widget will be hidden.

The stats about the hashrate and the accepted shares are then presented in the Device Widget. All the information is extracted from XLArig. The hahsrate information comes from the 15s/30s/60s hashrate data from the output log, in this order of priority. The CPU and Battery temperatures are used for the AMYAC integration and static temperature protection. The middle screen displays the output log from XLArig as is.

You can use the buttons at the bottom of the application to display the hashrate in the log ('H'), to pause the miner ('P') and to resume the miner ('R'). You cannot resume the miner when the device is cooling.

The application will keep mining even when your device is on standby mode. So keep in mind that even if your phone screen is off, your device may still be running.

Future development

  • Push notifications
  • Wallet integration
  • Unified design for the all-in-one application

Donations

Donations setting has been set to 0% in the XLArig lib embedded within the application.

  • XLA: SEiTBcLGpfm3uj5b5RaZDGSUoAGnLCyG5aJjAwko67jqRwWEH26NFPd26EUpdL1zh4RTmTdRWLz8WCmk5F4umYaFByMtJT6RLjD6vzApQJWfi
  • BTC: 1XTLY5LqdBXRW6hcHtnuMU7c68mAyW6qm
  • ETH: 0x133a15dF7177823Dd407ca87A190bbE4585a379e

Credits

Contacts

License

XLARig and Mobile Miner is licensed as GPLv3, thus this derivative work also is. You need to consider this if you plan to publish an Android application. You'd propably need to make it GPLv3 also, unless you can somehow make use of the GPL clause which allows to bundle a GPLv3 binary with another proprietary licensed binary.

mobileminer's People

Contributors

ahmyi avatar gilardh avatar hayzamjs avatar mas7ermind avatar robooligan avatar teredic avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mobileminer's Issues

Small update

Please add to mobile miner 1 hour, 6 hour and 24 hour avarage hashrate miner statistics.
Remove 15 sec, 60 sec and 15min miner statistics, because its useless.

When shares become XLA?

When shares become XLA? I install Scala on phone and 3 or 4 times stop by self and force me to start again. And I want to know if that shares I can recover ?

Error -1

Invalid ip address used error

Scala Miner payout

I have the miner set to payout at 10 but it hasn't paid anything out yet. I'm at 17.66 now.
Screenshot_20210219-132558_Scala Miner

Add updates

1.Built-in automatic update / Full automatic update
2.Auto start if phone restarts or app closes / crash

App Crashes

Am only able to mine for maybe a hour or so and app crashes does not stay mining. I have double check all settings and everything.

Waw

Vreau si eu miner datelor

Solo mining

I know that you can mine solo on scalapool with port 8888, but add that function on mobile miner, because if you want mine solo on other pools, you just cant.. because they dont have solo port, they need write solo: before wallet.

proprietary dependencies

According to my library scanner, the APK provided at releases comes with several proprietary dependencies:

  • Android Vision (/com/google/android/gms/vision)
  • Google Mobile Services (/com/google/android/gms)
  • Firebase (/com/google/firebase)

What are those needed for? Could they maybe be replaced by FOSS pendants? My guesses are:

  • Vision is used for some barcode/QR-Code tasks (and thus could possibly be replaced by one of the many FOSS libs for barcode/QR-Code handling)
  • GMS is just dragged in by Vision, and would thus "magically disappear" as side-effect of replacing Vision
  • Firebase: as I see no C2DM permission, this is either dragged in by Vision as well, or the app uses the Firebase database, which then might need a replacement as well

Any chances of making the app "really FOSS"? Thanks in advance!

Connection time out

Hi, I can not connect to pool with my Xiaomi Mi 8 lite...

Can You help me?

connect error:

  • connection timed out
  • operation canceled
  • invalid state 4

mine.scalaproject.io:3333

Thank you in advance
Chris

Can't read processor temperature

I pressed the start button then saw this warning
IMG_20240301_132551
after clicking the "OK" button the "Start" button did not change to "Stop". And if I click the "unchanged Start button", there will be errors continuing like the hash calculation taking too long and even stopping at 100%.
IMG_20240301_133207

I hope that in the next update it will be fixed.
Thank you

No payouts

All 4 of my miners have stopped paying out. I have over 700 scala in my account waiting to be paid out. The numbers keep growing though last night it was under 400.

This is the report from the app

Version Code: 13
Version Name: 2.3.0
Build Time: 06/08/2021 08:59 PM

Device Name: Motorola One 5G Ace
CPU Info: ABI: arm64-v8a
BogoMIPS: 38.00
CPU_revision: 0
Processor: AArch64 Processor rev 0 (aarch64)
CPU_architecture: 8
CPU_part: 0xd0d
Features: fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp
CPU_implementer: 0x41
Hardware: Qualcomm Technologies, Inc LAGOON
processor: 7
CPU_variant: 0x1

Wallet address incorrectly reported as wrong

Hello I am trying to mine on herominers using the mobile miner using my address from the cli desktop wallet. on my desktop miner the address I use works fine on herominers, I have received payment and the pool accepts it but on the mobile miner it simply will not allow me to use the address no matter what pool I use.

cannot enter address

SCALA miner 2.3.0 for Android

I try it with a tablet from Amazon (Fire 8 HD, 2018). I can mine to "donate address", it looks ok. Donate address is SvkFLjR4DST5bAG8SSHWfta4MsCzRrDEPNx72cTetqcoPfkwi7cFA2sYGG2Tf51rQ9EMSPHVuzxeoS4Y7ieicg5A1M24A8TTW, it is accepted.

When I try to change address in miner setting, my address is rejected with error Invalid Wallet Address, the error is printed when I try to SAVE new configuration. My XLA address was generated in SCALA desktop application. I assume there is a bug in Android SCALA miner, that form validation is not good... I paste my address from clipboard (camera for QR scan doesn't work, that is other issue).

If valid address is expected, it means I cannot use username; some pools use username, like mininingrigrentals. The validation of address should not be mandatory, miner can print warning that address is not valid but it should accept whatever...

My first try of this miner was that I started with predefined donation address. I was not able to replace it later with my address. I uninstalled the miner and installed it again. I tried to enter my address during initial setup but it was not accepted. I installed mobile wallet and used address that was generated in mobile wallet. It was accepted. I was able to replace this address with address that was created with desktop wallet later. Black magic... Anyway, expectation that address has to be valid is wrong, it could be username for mining pool...

Scala

What should I type...

Auto start mining

It s possible lauch with auto start mining option for automatisation when this app crash
Thx

Raspberry

Rasp has Arm processor too it's possible to use for mining instead phones?
There is some fork for linux (Armhf?)

App opens and runs fine but randomly closes

Hi,

I have been using this miner for a few weeks. I have been running it on a OnePlus 7T Pro, a OnePlus 5 and a Samsung Galaxy S8. The app opens and runs fine but it randomly closes on all 3 phones at random times. I have tweaked to use less CPU threads along with using direct CPU fans blowing air directly to where the phones get warm to prevent overheating and while that do help reduce the heat the app still randomly closes, meaning that if I leave the app running overnight, there's a high probability the app will not be running in the morning. I also disabled the "battery optimization" on Android on all 3 phones so it doesn't affect the miner performance.

I hope this helps and please let me know if there is anything else I can provide to help.

Thank you,

Inar

Add support for Exynos 9820

When I start mining on my Samsung Galaxy S10+ then it cant read the temparature of the chip and that results to an overheating phone.

Please add support for exynos chips

What is modern Android device? Best Android device to run Scala miner??

I tried to run Scala Android miner on several Android devices, on my phone, on my tablet, on my Android TV box and I tried to run it on RPI4 with LineageOS. I always receive message that my device architecture is old and hashrate will be low. And it is low, about 10 h/s, RPI4 can calculate about 18 H/s, it is the best Android device I have...

The key question is, what is modern Android device, what is expected? What CPU features are important for XLA miner?? Is size of RAM important? Are there any reference devices? Maybe you have a list with benchmarks for several Android devices...

I assume that size of RAM is not the key parameter; RPI4 with 4GB of RAM doesn't mine significantly faster than device with just 1.5GB of RAM...

BTW, miner that runs on device "My Phone" at scalaproject.io reports avg 303.8 H/s and max 454,7 H/s. I am not sure if that is real device, it could be just a simulator...

There is a YouTube video about mobile scala miner at channel Early Bird, user runs 4/8 cores on device "Vivo Beast Phone", hashrate is about 180 H/s. It looks like a simulator running on PC.

Huge pages and 1gb pages

On miner it shows huge page supported and 1gb pages unavailable.
But later in log it shows huge pages 0%, it is possible to enable? And how? Because it eould increase hashrate.

Statistics Not Showing Info

The Scala Miner has the Statistics page that won't show any information about the pool, address, and network. It only shows "N/A" on all types.

Screenshot_2023-03-19-20-35-21-625.jpg

Miner doesn't work for me.

I have tried the mobile miner on three different phones and get the same result. After putting in wallet address and pool and saving, I click start. The app acts like it wants to work, but just stops. Miner started pops up followed immediately by miner stopped. Uninstalled/reinstalled didn't help. Is there a minimum android version? Other settings outside of the app that I need to use?

Amyac crash

Amyac error json exception Value of type java lang string cannot be converted to jsonobject.
Switched to static teperature control.

I've already tried to reinstall the apk o set less core.
After this error the apk freezes on cpu cooling

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.