Giter VIP home page Giter VIP logo

revoxhere / duino-coin Goto Github PK

View Code? Open in Web Editor NEW
1.1K 62.0 515.0 68.41 MB

ᕲ Duino-Coin is a coin that can be mined with almost everything, including Arduino boards.

Home Page: https://duinocoin.com

License: MIT License

Python 62.19% C++ 30.36% C 5.88% Ruby 0.78% Julia 0.23% Shell 0.56%
cryptocurrency cryptocoins arduino arduino-platform atmega python3 avr avr-boards arduino-boards mining miner altcoins duino-coin duco coin miners duino hacktoberfest

duino-coin's Introduction

Simple, eco-friendly, centralized coin that can be mined with Arduinos, ESP boards, Raspberry Pis, computers, and many more (including Wi-Fi routers, smart TVs, smartphones, smartwatches, SBCs and other MCUs).




Key features Technical specifications (Some of many) supported boards
💻 Supported by a large number of platforms
👥 A fast-growing community
💱 Easy to use & exchange
(on DUCO Exchange, JustSwap, SushiSwap)
🌎 Available everywhere
🆕 Fully original & open-source project
🌳 Beginner & eco-friendly
💰 Cost-effective & easy to mine
⚒️ Algorithm: DUCO-S1
♐ Rewards: supported by "Kolka system"
helping to reward miners fairly
⚡ Transaction time: Instant
🪙 Coin supply: Infinite
(with burning)
🔤 Ticker: DUCO (ᕲ)
🔢 Decimals: up to 20
♾️ Arduinos
(Uno, Nano, Mega, Due, Pro Mini, etc.)
📶 ESP8266s
(NodeMCU, Wemos, etc.)
📶 ESP32s
(ESP-WROOM, ESP32-CAM, etc.)
🍓 Raspberry Pis
(1, 2, Zero (W/WH), 3, 4, Pico, 400)
🍊 Orange Pis
(Zero, Zero 2, PC, Plus, etc.)
⚡ Teensy 4.1 boards

Getting started

The easy way

Get started with Duino-Coin by downloading the latest release for your OS.
Then unzip it and launch the desired program. There are no dependencies required.

If you need help, you can take a look at the official getting started guides located on the official website.
FAQ and troubleshooting help can be found in the Wikis.

The hard way

Linux (manual installation)

sudo apt update
sudo apt install python3 python3-pip git python3-pil python3-pil.imagetk -y # Install dependencies
git clone https://github.com/revoxhere/duino-coin # Clone Duino-Coin repository
cd duino-coin
python3 -m pip install -r requirements.txt # Install pip dependencies

After doing this, you are good to go with launching the software (e.g. python3 PC_Miner.py).

Windows (manual installation)

  1. Download and install Python 3 (make sure you add Python and Pip to your PATH)
  2. Download the Duino-Coin repository
  3. Extract the zip archive you've downloaded and open the folder in command prompt
  4. In command prompt type py -m pip install -r requirements.txt to install required pip dependencies

After doing this, you are good to go with launching the software (just double click on desired .py files or type py PC_Miner.py in the command prompt).

Raspberry Pi (automatic installation)

wget https://raw.githubusercontent.com/revoxhere/duino-coin/master/Tools/duco-install-rpi.sh
sudo chmod a+x duco-install-rpi.sh
./duco-install-rpi.sh

DUCO, wDUCO, bscDUCO, maticDUCO & celoDUCO

Duino-Coin is a hybrid currency providing support both to centralized and decentralized ways of storing funds. Duino-Coins can be converted to wDUCO, bscDUCO or others which are the same Duino-Coins but "wrapped" (stored) on other networks as tokens. An example tutorial on using wDUCO is available in the wDUCO wiki. Coins can be wrapped directly from your web Wallet - click the Wrap Coins button to start.

Development

Contributions are what make the open source community such an amazing place to be learn, inspire, and create.
Any contributions you make to the Duino-Coin project are greatly appreciated.

How to help?

  • Fork the Project
  • Create your feature branch
  • Commit your changes
  • Make sure everything works as intended
  • Open a pull request

Server source code, documentation for API calls and official libraries for developing your own apps for Duino-Coin are available in the useful tools branch.

Version 4.0 reward goals

Captured at normal multiplier (no weekend boost)

Device Hashrate Threads DUCO/day
Arduino 343 H/s 1 12
ESP32 84 kH/s (2x42 kH/s) 2 10
ESP32-S2/C3 82 kH/s 1 8
ESP8266 66 kH/s 1 6
Raspberry Pi 4 (LOW) 1 MH/s (no fasthash) 4 6-7
Raspberry Pi 4 (MED) 5.4 MH/s (fasthash) 4 7-8
Low power PCs 4 4-6
Medium 4-8 6-10
High end 8+ 10-12
Other tested devices and their benchmarks

Please note the DUCO/day column has been removed since version 4.0 changed the reward system.

Device/CPU/SBC/MCU/chip Average hashrate
(all threads)
Mining
threads
Power
usage
Raspberry Pi Pico 5 kH/s 1 0.3 W
Raspberry Pi Zero 18 kH/s 1 1.1 W
Raspberry Pi 3 (32bit) 440 kH/s 4 5.1 W
Raspberry Pi 4 (32bit) 740 kH/s 4 6.4 W
Raspberry Pi 4 (64bit, fasthash) 6.8 MH/s 4 6.4 W
ODROID XU4 1.0 MH/s 8 5 W
Atomic Pi 690 kH/s 4 6 W
Orange Pi Zero 2 740 kH/s 4 2.55 W
Khadas Vim 2 Pro 1.12 MH/s 8 6.2 W
Libre Computers Tritium H5CC 480 kH/s 4 5 W
Libre Computers Le Potato 410 kH/s 4 5 W
Pine64 ROCK64 640 kH/s 4 5 W
Intel Celeron G1840 1.25 MH/s 2 53 W
Intel Core i5-2430M 1.18 MH/s 4 35 W
Intel Core i5-3230M 1.52 MH/s 4 35 W
Intel Core i5-5350U 1.35 MH/s 4 15 W
Intel Core i5-7200U 1.62 MH/s 4 15 W
Intel Core i5-8300H 3.67 MH/s 8 45 W
Intel Core i3-4130 1.45 MH/s 4 54 W
AMD Ryzen 5 2600 4.9 MH/s 12 65 W
AMD Ryzen R1505G (fasthash) 8.5 MH/s 4 35 W
Intel Core i7-11370H (fasthash) 17.3 MH/s 8 35 W
Realtek RTD1295 490 kH/s 4 -
Realtek RTD1295 (fasthash) 3.89 MH/s 4 -

Community-made softwares

Please note that these softwares are not developed by us and we do not give any guarantees that use of them will not result in an account getting banned if they get changed in the future.

Miners made by the Duino-Coin community:

Other tools:

You may also view a similar list on the website.

License

Duino-Coin is mostly distributed under the MIT License. See the LICENSE file for more information. Some third-party included files may have different licenses - please check their LICENSE statements (usually at the top of the source code files).

Terms of service

Our terms of service is available here: duinocoin.com/terms

Privacy policy

Our privacy policy is available here: duinocoin.com/privacy

Disclaimer

Our disclaimer is available here: duinocoin.com/disclaimer

Active project maintainers

Big thanks to all the contributors that helped to develop the Duino-Coin project. Visit duinocoin.com/team to view more information about the Duino Team.


Established August 2019
Project Link: https://github.com/revoxhere/duino-coin/
Website Link: https://duinocoin.com/
Duino-Coin Status Page: https://status.duinocoin.com

duino-coin's People

Contributors

bastelpichi avatar bilaboz avatar bx2afo avatar connorhess avatar dl1lmh avatar dmitrygribenchuk avatar einwildespanda avatar eltociear avatar fpetru104 avatar gsrbr avatar idotmaster1 avatar jk-rolling avatar joaquinbvw avatar joybed avatar ldarki avatar mkursadulusoy avatar mrkris7100 avatar naphob avatar nosh-ware avatar omicron166 avatar phantom32-0 avatar pierrealexaline avatar protothis avatar revoxhere avatar ste-t avatar suifengtec avatar sys-256 avatar tyrkelko avatar yeahnotsewerside avatar ygboucherk 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  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

duino-coin's Issues

Can't login if passwords contains a "%" character

Hey guys,

appreciate the work that you are doing, keep it up!
I can't login if my passwords contains a "%" character, here is the log(ish):

File "/usr/lib/python3.6/configparser.py", line 402, in before_set
"position %d" % (value, tmp_value.find('%')))
ValueError: invalid interpolation syntax in 'xxxxx%xxxx' at position xx

Best Regards,
Endre

mining err: list index out of range after 1 hour of mining

01:42:28 net0 Error while mining - most likely a connection error - restarting in 5s. (mining err: list index out of range)
01:42:43 net2 Error retrieving data from GitHub! Retrying in 10s. (git err: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /revoxhere/duino-coin/gh-pages/serverip.txt (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x75bda690>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')))
..... 2 HAOURS LATER
03:26:23 net0 Error retrieving data from GitHub! Retrying in 10s. (git err: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /revoxhere/duino-coin/gh-pages/serverip.txt (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x75c4a070>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')))

Downloading the DuinoCoin Blockchain 📥

Is it possible to download the DuinoCoin blockchain for inspection and verification?

This is a vital part of building trust into the system, that anyone can verify its integrity.

ESP32 issues

Hi! I'm a little bit new to Duino Coin, I have to say I am very interested on this project and hope it gets bigger with time. Maybe we can see DUCO on Binance soon!

So the first thing I wanted to do was to try to mine with the ESP32 and found some issues with the code that I think could be improved. Maybe there is a reason to why it was implemented the way it is right now that's why I'm writing it first here. I will list some of them with some suggestions on what can be done:

  • The tasks:
    From what I know about RTOS is that you don't usually want to kill the tasks unless is very very necessary and it is done rarely, in lines 188 and 108 the tasks kill themselves. Since right now the server is requesting a reconnection frequently the tasks will be killing themselves a lot of times. What I think should be done is to wrap everything inside the task on an infinite loop with a "for(;;)", I have test this without any problems whatsoever.

  • The variables, arrays and pointers:
    When we program on microcontrollers we have to think about the limited memory (even for the ESP32). So declaring the same variable or array multiple times could be asking for problems in the future. Some people could say that maybe the compiler can resolve this but trusting on the compiler to do something that you aren't really sure if he is gonna do is not a good decision. Even worse if you are reserving memory every time for an array or pointer, this can become on a memory problem, if you don't free the allocation the memory will become full and even if you use "free" to deallocate the memory it will become fragmented and would become a major problem on long runs. What should be done is to declare all variables once, they can be declared globally or locally inside the task, but outside the infinite loop. The memory allocation too, but there is something else that can be improved, in lines 84 and 162 instead of using a constant pointer (which is not really constant since it could change on every hash calculation, I'm not really sure what happens here or how the Arduino or the compiler handles this but it seems to workout somehow) you can use ".c_str()" directly so it would become something like this:
    "esp_sha(SHA1, (const unsigned char*)hash11.c_str(), payloadLenght1, shaResult1);"
    I have tested it without any problems and with this you are not messing with pointers directly anymore, the Arduino does it on the background for you.
    https://arduino.stackexchange.com/questions/682/is-using-malloc-and-free-a-really-bad-idea-on-arduino

  • The esp_sha function:
    I can understand why you just use the esp_sha function in one of the tasks, the tasks could call this at the same time. I think the RTOS or the processors can handle this without problems. Right now I am using the esp_sha function on both tasks without problems, I think it is even faster than before. This is a suggestion that should be tested more since I don't have a strong argument on why it works like that.

  • The WiFiClient buffer and reconnection:
    I'm not really sure why but the server seems to close the connections to the ESP32 (maybe this is not only related to the ESP32 but I didn't try another miner) very frequently and this is causing other problems on the code too. The first thing I realized about the client handling is that the code is not waiting enough time to receive the response from the server, it sends a request and right after this it tries to read the buffer. I'm not sure if this is handled by the library or on hardware or if it just isn't handled at all, I just think that is a good practice to wait for a response from the server, since you are the one that are starting the transaction. So what I'm doing is to put this portion of code after lines 59 and 132:

    while(!client1.available()){
      if (!client1.connected())
        break;
      delay(10);
    }
    yield();
    if (!client1.connected())
      break;
    delay(100);
    yield();
    int buff1size = client1.available();
    Serial.print("CORE1 Buffer size is ");
    Serial.println(buff1size);
    if (buff1size<=10) {
      Serial.println("CORE1 Buffer size is too small. Requesting another job.");
      continue;
    }

So there is something more on this code, besides waiting for the response on the while loop it is breaking the upper while if the connection is lost so it can connect again. In addition to this I am adding some "yield()" functions to manage the WiFi connection after potentially long loops or waiting times. And at the end I am validating the buffer size to be more than 10 bytes, if it isn't it returns to the beginning of the upper while.
There is other time that the client posts something to the server and it is when it finds a result, in this case I do it differently, here is the code I did that goes before the lines 92 and 172:

        if (!client1.connected()) {
          Serial.println("CORE1 Lost connection. Trying to reconnect");
          if (!client1.connect(host, port)) {
            Serial.println("CORE1 connection failed");
            break;
          }
          Serial.println("CORE1 Reconnection successful.");
        }

And here is the code after lines 92 and 172:

        Serial.println("CORE1 Posting result and waiting for feedback.");
        while(!client1.available()){
          if (!client1.connected()) {
            Serial.println("CORE1 Lost connection. Didn't receive feedback.");
            break;
          }
          delay(10);
          yield();
        }
        delay(100);
        yield();

The code that goes before is for trying to reconnect if it lost the connection, I do this because if it finds a solution it should post it so it should try at least one reconnection before going out of the loop. If the reconnection is not successful then it leaves the loop. For the next part of the code it waits for a response from the server like before. As I'm writing this there could be a problem with this approach, since the server sends the version of the miner immediately after connecting it could be mistaken for a feedback response. Maybe I can work this around later, but it is better like this even if it is mistaken.

Finally I have been playing with the timeout value for the clients, right now it is 1 second and it is working fine besides the reconnections from the server. Another thing I did was putting more yield() functions here and there, where there is a potentially long waiting time.

Oh another suggestion that can improve even more the code is not using the String class. I know it is convenient sometimes but is very messy and I think it uses more memory than it should use, if we use just char arrays or pointers I think it could improve the code and we can even be closer to porting the code to another platform different than the Arduino.

One last suggestion is to add a WiFi reconnection task, I have been dealing with a poor WiFi connection at home and it's been a pain.

I'm sorry for the long post but I wanted to to detail everything I could about the things I have been improving. Please let me know if something I'm doing is wrong or if I need to change something else. Thank you!

Compiling error with Arduino Code

When I try to load the Arduino Code I get the following error in the Arduino IDE software

In file included from sketch\backend.cpp:21:0:
sketch\sha1/sha1.c: In function 'sha1_hasher_gethash(sha1_hasher_s*)':
sketch\sha1/hash.c:165:5: warning: iteration 5 invokes undefined behavior [-Waggressive-loop-optimizations]
a = hasher->state.words[i];
~~^~~~~~~~~~~~~~~~~~~~~~~~
sketch\sha1/hash.c:162:15: note: within this loop
for(i = 0; i < 8; i++)
^
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino\main.cpp: In function 'main':
sketch\sha1/hash.c:165:5: warning: iteration 5 invokes undefined behavior [-Waggressive-loop-optimizations]
a = hasher->state.words[i];
^
sketch\sha1/hash.c:162:15: note: within this loop
for(i = 0; i < 8; i++)
^
C:\Users\Andrew\AppData\Local\Temp\ccVCoxFU.ltrans0.ltrans.o: In function write': sketch/sha256.cpp:41: undefined reference to sha256_hasher_putc(sha256_hasher_s*, unsigned char)'
collect2.exe: error: ld returned 1 exit status
exit status 1
Error compiling for board Arduino Uno.

Please help

Doesn't work on Raspberry

Hi Comunity,

i tried to run duino-coin on a RPI3 without success.
It says you don'T need python anymore but with the command: ./PC-Miner i get the following massage.
-bash: ./PC_Miner: Permission denied

So i gave permisson to the directory and files and got a new Massage.

-bash: ./PC_Miner: cannot execute binary file: Exec format error

Any Idea?

No full reconnect capability in the latest PC miner

Hi there! Seems I'm the only miner @ official pool for now (ofc, together with revox)

Sometimes there're some issues with pool, so there is no ability to receive balance or mining "jobs".

I've added job logging right here:

job = soc.recv(1024).decode() # Get work from pool
print(job)

So I see there is no job received sometimes (minig stops), but the miner does not try to reconnect, it tries to receive from socket.

Thank.

P.S. Interestiong project :-) I'm not on Python side btw, but may take a look into adding .NET miner :-)

Are you interested in adding Discord server for this project?

Unable to Register

Attempting to run the wallet setup both on linux, pc and they both freeze up. I have to force quit it each time. It allows me to create user name and password but locks on the register button. Will try on another computer in a bit but wanted to see if this was common one is a windows 7 pc and the other is a raspi 4 with buster on it (which I would prefer to get working).

Wallet does not seem to work on Windows and Linux

Greetings,

first of all: thank you for the coin I was always waiting for. Great job!

I tried to open Wallet.exe in Windows 10 and Wallet on the newest stable NixOS, but neither do seem to work on their respective target systems. Since these are release builds, the exceptions disappear quickly and nothing is really said, besides that a file cannot be found.

I did not find any dependency requirement for the pre-built binaries, so I expect them to work out of the box.

Are there dependencies missing or are the builds not working for different reasons?

Thank you.

HOW

how can i contribute i have smth ready

Wrong server version

In readme is stated that server will send version number 1.6, however server sends 1.5.

Problems creating account for wallet creation

The registration page for creating a wallet account appears to be having a problem.
I have tried several different user names and a variety of passwords to create a wallet account.
I have also tried mixed case, all lower case, mixed case with special characters.
I went to the link https://wallet.duinocoin.com/ which then redirects to a non-ssl link.
After clicking the register button, I only see a "Proxy server online" message at the bottom of the window after a few seconds.
unable to create an account at this point.

AVR Miner getting error with COM3 port

Trying to troubleshoot by moving to another USB port. How to I get the software to go through a reconfiguration process so I can move it to another USB port?

Looking for info online. Didnt find any information online with this information.
Tried to get on the discord server but got an error about discord being unable to accept the invite.

AVR Miner error

This is the error I got when I ran avr_miner.py file.

Traceback (most recent call last):
  File "D:\python\duino-coin\AVR_Miner.py", line 867, in AVRMine
    raise Exception("Empty data")
Exception: Empty data

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\jaych\AppData\Local\Programs\Python\Python38\lib\threading.py", line 932, in _bootstrap_inner
    self.run()
  File "C:\Users\jaych\AppData\Local\Programs\Python\Python38\lib\threading.py", line 870, in run
    self._target(*self._args, **self._kwargs)
  File "D:\python\duino-coin\AVR_Miner.py", line 884, in AVRMine
    comConn = connectToAVR(com)
  File "D:\python\duino-coin\AVR_Miner.py", line 258, in connectToAVR
    comConn = serial.Serial(
  File "C:\Users\jaych\AppData\Local\Programs\Python\Python38\lib\site-packages\serial\serialwin32.py", line 33, in __init__
    super(Serial, self).__init__(*args, **kwargs)
  File "C:\Users\jaych\AppData\Local\Programs\Python\Python38\lib\site-packages\serial\serialutil.py", line 244, in __init__
    self.open()
  File "C:\Users\jaych\AppData\Local\Programs\Python\Python38\lib\site-packages\serial\serialwin32.py", line 64, in open
    raise SerialException("could not open port {!r}: {!r}".format(self.portstr, ctypes.WinError()))
serial.serialutil.SerialException: could not open port 'COM4': PermissionError(13, 'Access is denied.', None, 5)```

How do I fix it?

![Here is the screenshot](https://user-images.githubusercontent.com/58852543/115038195-eb2d0a00-9eec-11eb-9e56-6e4f98714636.PNG)


Wallet

How transfer duco to another wallet??

Server feedback typo.

When you send funds to someone successfully, server responds with "Successfully transfered funds!" however, there is a typo in that sentence, the correct sentence is: "Successfully transferred funds!".

Compile Using windows 10

Hello

I have some issues by runnign PC_Miner on python in windows 10.

I have installed the latest version of python.

After run this command to install dependencies.
py -m pip install -r requirements.txt

It gives this error on my command line:
Running setup.py install for cytoolz ... error
ERROR: Command errored out with exit status 1:
command: 'C:\Users\Felipe Rojas Verasay\AppData\Local\Programs\Python\Python39\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\Felipe Rojas Verasay\AppData\Local\Temp\pip-install-temuy_va\cytoolz_c4849adb3bdc405bbb9f1bb25db50937\setup.py'"'"'; file='"'"'C:\Users\Felipe Rojas Verasay\AppData\Local\Temp\pip-install-temuy_va\cytoolz_c4849adb3bdc405bbb9f1bb25db50937\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record 'C:\Users\Felipe Rojas Verasay\AppData\Local\Temp\pip-record-4_csc3at\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Users\Felipe Rojas Verasay\AppData\Local\Programs\Python\Python39\Include\cytoolz'
cwd: C:\Users\Felipe Rojas Verasay\AppData\Local\Temp\pip-install-temuy_va\cytoolz_c4849adb3bdc405bbb9f1bb25db50937
Complete output (50 lines):
ALERT: Cython not installed. Building without Cython.
running install
running build
running build_py
creating build
creating build\lib.win-amd64-3.9
creating build\lib.win-amd64-3.9\cytoolz
copying cytoolz\compatibility.py -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\utils_test.py -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz_signatures.py -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz_version.py -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz_init_.py -> build\lib.win-amd64-3.9\cytoolz
creating build\lib.win-amd64-3.9\cytoolz\curried
copying cytoolz\curried\exceptions.py -> build\lib.win-amd64-3.9\cytoolz\curried
copying cytoolz\curried\operator.py -> build\lib.win-amd64-3.9\cytoolz\curried
copying cytoolz\curried_init_.py -> build\lib.win-amd64-3.9\cytoolz\curried
copying cytoolz\dicttoolz.pyx -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\functoolz.pyx -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\itertoolz.pyx -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\recipes.pyx -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\utils.pyx -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\cpython.pxd -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\dicttoolz.pxd -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\functoolz.pxd -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\itertoolz.pxd -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\recipes.pxd -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz\utils.pxd -> build\lib.win-amd64-3.9\cytoolz
copying cytoolz_init_.pxd -> build\lib.win-amd64-3.9\cytoolz
creating build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\dev_skip_test.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_compatibility.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_curried.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_curried_toolzlike.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_dev_skip_test.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_dicttoolz.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_docstrings.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_doctests.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_embedded_sigs.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_functoolz.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_inspect_args.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_itertoolz.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_none_safe.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_recipes.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_serialization.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_signatures.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_tlz.py -> build\lib.win-amd64-3.9\cytoolz\tests
copying cytoolz\tests\test_utils.py -> build\lib.win-amd64-3.9\cytoolz\tests
running build_ext
building 'cytoolz.dicttoolz' extension
error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
----------------------------------------
ERROR: Command errored out with exit status 1: 'C:\Users\Felipe Rojas Verasay\AppData\Local\Programs\Python\Python39\python.exe' -u -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\Users\Felipe Rojas Verasay\AppData\Local\Temp\pip-install-temuy_va\cytoolz_c4849adb3bdc405bbb9f1bb25db50937\setup.py'"'"'; file='"'"'C:\Users\Felipe Rojas Verasay\AppData\Local\Temp\pip-install-temuy_va\cytoolz_c4849adb3bdc405bbb9f1bb25db50937\setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(file);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, file, '"'"'exec'"'"'))' install --record 'C:\Users\Felipe Rojas Verasay\AppData\Local\Temp\pip-record-4_csc3at\install-record.txt' --single-version-externally-managed --compile --install-headers 'C:\Users\Felipe Rojas Verasay\AppData\Local\Programs\Python\Python39\Include\cytoolz' Check the logs for full command output.

I have download visual studios tools C++ but the issue persist

Open Source Server and API software

To make Duino Coin a real open source project, it would be necessary to also open source the server and API software. Maybe I missed it, but it doesn't seem to be available anywhere.

This would also answer #321 and make #320 easier as people could help.

Really nice project BTW!

Error Connecting to Server

While running AVR_Miner.py on Linux node connected to Arduino UNO. Has been working fine until today.

ALpha 3 wallet crashes if i execute miner and vs versa

Alpha 3 wallet crashes if i execute miner and vs versa ( Windows

Rewards lost from mining with previous pre release

About community contributions: can you please add any documentation on how to make it work ?

About supply, block rewards and all the stats? where can i find it ?

Thank you in advance

AVR Miner doesn't work on Raspberry

I connected an arduino uno to my raspberry pi and ran avr_miner.py but it keeps saying:

image

Btw. ignore the 'debug' message i tried to fix it myself.

On my desktop pc (windows) it works.
uploadavrminer.py works too (on the pi)

Note: The rx led flashes frequently (every 3secs) on the arduino

My Specs:
Raspberry Pi 4B 8GB
Raspbian OS 32bit

Problem with arduino mining

Hello, when i mine with arduino i have problems. When 15 minutes past, it types: no device on COM3, check if it is connected. I was trying plug out/in arduino and reset program, but sometimes its help,but sometimes not

error creating account or login in CLI_Wallet

The error “list index out of range” arises if you access both sector
under line 366
Enter your password:
Traceback (most recent call last):
File "CLI_Wallet.py", line 366, in
+ str(loginFeedback[1]))
IndexError: list index out of range

Miners lose connection and don't reconnect

Hi,

I prepared several machines to mine and I have been doing so for a few days.
No matter which algorithm I use or what type the machine it is, all of them lose connection at one point and stop mining.
No machine was able to mine for longer than 8 hours without me having to restart the miner.
I start mining on all machines, go to sleep, and in the morning none of them mine because they lost connection at one point.
I can solve this for myself using a combination of ssh, screen and crontab, in order to restart the Miners every hour.
However, it would be nice to have a more robust reconnection procedure that is inbuilt.
Does anybody else have this issue?

Best,
Endre

Using DuinoCoin for Timestamping ⏲️

There are services like https://originstamp.com or https://opentimestamps.org/ that offer blockchain timestamping (basically putting a hash of a file into one or more blockchains as a matter of proving the file existed at a certain time).

Pretty much all of these services have one big problem: They can only timestamp documents so fast. For example, the fastest OriginStamp can do using Aion is 10 minutes. OpenTimestamps is around 10 hours AFAIK.

With DuinoCoins instant transactions, this would be a huge advantage and would make bulk timestamping of rather fast things (like git commits for example) viable.

The only thing the blockchain needs to provide is a means of putting some information into a transaction. With Bitcoin, that information can be a recieving address generated from the hash of the file(s) to timestamp.

Would that work with DuinoCoin? Is it possible to somehow ”attach” information to a transaction? Or is everything just username-based? There are certainly hashes involved, but is it possible to control that hash to some degree?

This would be a super awesome usecase for DuinoCoin!

Cannot register (CLI Wallet, GUI Wallet & Website)

I'm trying to register but it seems there is an error with the server. I tried using all 3 methods to create an account but they all failed when submiting to the websocket. Here are the error messages:

CLI_Wallet.py

Traceback (most recent call last): File "/home/username/duino-coin-2.3/CLI_Wallet.py", line 406, in <module> s.send(bytes( BrokenPipeError: [Errno 32] Broken pipe

Wallet.py

Exception in Tkinter callback
Traceback (most recent call last):
  File "/usr/lib/python3.9/tkinter/__init__.py", line 1892, in __call__
    return self.func(*args)
  File "/home/username/duino-coin-2.3/Wallet.py", line 430, in _registerprotocol
    message=response[1])
IndexError: list index out of range

Website

There is not any output on the website. However, the websocket does not respond after sending the register request.

Miner keeps stopping

My miner always stopps after a few hours or only mines on one avr/cpu thread

My Specs:
Raspberry Pi 3b (it also happens on windows or the pi 4)
Raspbian OS Lite 32bit

possible update issue on 0.6.2

===========================================
Duino-Coin PC miner version 0.6.2
https://github.com/revoxhere/duino-coin
copyright by MrKris7100 & revox 2019

[2019-10-04 21:20:43] Successfully connected to pool on tcp://serveo.net:14808
[2019-10-04 21:21:21] Miner is outdated, please download latest version from https://github.com/revoxhere/duino-coin/releases/
[2019-10-04 21:21:21] Exiting in 5 seconds.

started with this

Then I tried redownload it and starting again now getting

python3 Wallet.py
Connected to the server
Exception in Tkinter callback
Traceback (most recent call last):
File "/usr/lib/python3.7/tkinter/init.py", line 1705, in call
return self.func(*args)
File "Wallet.py", line 107, in CheckLogin
key = s.recv(3)
ConnectionResetError: [Errno 104] Connection reset by peer

ImportError: No module named configparser

Not sure if this is cause I'm running on a Mac, Ill try later on a Linux but just wanted to get that out there just in case it is a problem. I'm running Version 1.1.

I'll post updates if it works on Linux. I'm sure it will though.
Screen Shot 2020-03-25 at 3 25 16 PM

Pool Statistics workers

Not sure whats going on there I do have some Arduino's mining and a raspberry pi for fun but certainly not that many devices all is good but just noticed the workers keep creeping up for me. Not sure if a issue but thought I would let you know.

BAD TOO MANY CONNECTIONS for one connected miner

Hi,
yesterday I started up 5 ESP as miners which I had lying around. Today I noticed almost none was mining anymore, only one. In the api overview page I can see only one miner connected. If I connect a second one I receive the error TOO MANY CONNECTIONS which is either caused by Server.py#L979 or Server.py#L988.

To me it seems that hanging clients or not properly disconnected clients are not removed from the internal counter (code Server.py#L2418:L2432.

Maybe some similar code to https://github.com/revoxhere/duino-coin/blob/useful-tools/Server.py#L2436 is required to do a final cleanup or check in intervals if no user data exists anymore e.g. COUNT( minerapi[x]["User"] == "foo" ) == 0 (dummy code).

Even restarting my router to force a IP refresh did no help. Therefore I assume the code at Server.py#L2426:L2432 is not finaly triggered and results in workers[username] > 0 for zero actual connected clients.

I also tried to connect to Discord to see if anyone else has that issue, but it shows me some weird french error message 🤷‍♂️:
image

Issues with ESP8266 and ESP32

Hi,
I installed the latest version on a ESP8266 and ESP32 and both have trouble to connect to the backend server. Is it down at the moment?

ESP8266

Duino-Coin ESP8266 Miner v2.4
Connecting to: <SSID>
.
Connected to WiFi!
Local IP address: <IP>

Connecting to Duino-Coin server...
Connection failed.
Resetting ESP...

 ets Jan  8 2013,rst cause:2, boot mode:(3,1)
[core dump and restart]

ESP 32

Duino-Coin ESP32 Miner v2.3
Connecting to: <SSID>
.....
Connected to WiFi!
Local IP address: <IP>

CORE1 Connecting to Duino-Coin server...
[E][WiFiClient.cpp:288] setSocketOption(): 1006 : 9
[E][WiFiClient.cpp:258] connect(): socket error on fd 54, errno: 104, "Connection reset by peer"
CORE1 is connected: 0

[core dump and restart]

some suggestions with love!

it's a cool project, some suggestions:

  1. domain ext from com to io or org;
  2. push main site and wallet site frontend codes and i18n package to github;
  3. avoid to use uncommon words on any UI.

Encryption of the Server 🔐

Hi,

Nice project, this Duino-Coin. 👏

However, I wonder why the server and API over at http://51.15.127.80/ is unencrypted and doesn't use HTTPS? 🔐

This is the only thing that makes using Duino-Coin rather uncomfortable. 😕

Apart from Arduinos, all other devices (ESPs, Raspberry Pis and Desktops of course) support HTTPS. But Arduinos don't connect to the server directly, so that shouldn't be a problem.

So why is the server not encrypted? 🤷 (no offense, I'm just curious)

Cheers,

Yann

Server down

Hi,
When will the server be back online?

Thank you

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.