BASIC KNOWLEDGE [3]: Hardware for the Duinocoin

What hardware is needed for the Duinocoin (DUCO)?

Even though the mining of the Duinocoin takes place in software, it must of course run on hardware. What hardware can be used to mine DUCO?

The Duinocoin can not only be mined on an Arduino UNO/Nano. A PC, a notebook, a Raspberry Pi, a smartphone, a server, a Linux container (LXC) or a virtual machine (VM) and even an internet browser can serve as a basis. What is worthwhile, what is not?

Overview

The following four articles give a first and rough overview of the whole Duinocoin project:

  1. BASIC KNOWLEDGE [1]: Overview of the Duinocoin
  2. BASIC KNOWLEDGE [2]: Set up Duinocoin wallet
  3. BASIC KNOWLEDGE [3]: Hardware for the Duinocoin
  4. BASIC KNOWLEDGE [4]: Software for Duinocoin mining

Other articles on duinocoin.com go into detail about the individual aspects of the Duinocoin (DUCO) and, for example, the construction of mining rigs.

Platforms for mining

Dragon32

The Duinocoin was actually designed by Robert Piotrowski (revoxhere) for the Arduino UNO. The mining software (the DUCO-S1 algorithm) is therefore extremely simple and requires hardly any resources in the form of computing power or memory. The bottom line is that almost any electronic device with a processor can be used to mine DUCO.

Mining with PC and microcontroller

The mining software for the Duinocoin must somehow communicate with the pool servers via the internet. However, many simple microcontrollers have neither network hardware (Ethernet or WLAN chip), but only a serial interface. Here, another network-capable device must serve as intermediary between the microcontroller and the internet.

What does this look like? The actual mining software (DUCO-S1) is flashed onto an Arduino UNO/Nano. The Arduino then waits for Duinocoin jobs. The PC then runs the Python3 script AVR_Miner.py, which fetches jobs from the pool servers via the internet and forwards them to the Arduino via a serial interface (in the form of a USB port). The Arduino runs the DUCO-S1 algorithm and calculates a result that it sends back to the PC via the serial interface. The AVR_Miner.py script takes the result and sends it to the pool servers, which validate the result and credit the account with a share as a reward. Quite simple, actually.

Microcontroller with WLAN

Dragon32

A PC or other network-capable devices can also take over the mining part with DUCO-S1 and are thus miner and mediator at the same time. This is also possible with microcontrollers that have network hardware, such as ESP8266 or ESP32. They can also run the DUCO-S1 algorithm, but at the same time ESP8266/ESP32 can also communicate with the internet via WLAN.

Mining farms are therefore popular, consisting of many ESP8266s for just over US$1 each (from China) or a good 2 EURO (from Europe).

Disadvantage: Each individual ESP8266 mining node must maintain its own WLAN connection, some WLAN access points cannot handle the connections and data traffic of an ESP8266 cluster.

Sophisticated mining rig with WLAN and AVR nodes

Of course, if you need a PC to mine DUCO with an Arduino UNO/Nano, that's a huge waste of energy - unless the PC is running anyway (like a NAS, for example). However, clever developers have quickly come up with the idea of combining the network capability of an ESP8266/ESP32 with inexpensive miners:

Dragon32

An ESP8266 provides a WLAN connection to the Internet and the pool servers. Via an I²C interface (Inter-Integrated Circuit), a serial data bus, the jobs are forwarded to several mining nodes. A Wemos D1 Mini with five AVR mining nodes (Arduino Pro Mini/3.3V) then gets by with around 120 mA (milliamps) at 5V supply voltage. I run such a mining rig 24/7 with a simple 25W solar panel and a 12V/7Ah buffer battery in my winter garden (see small picture on the right, a detailed description and a howto will follow).