Moonlander 2: Porovnání verzí

Z Poznámkový blok
Přejít na: navigace, hledání
(Tuning)
(Web rozhraní)
 
(Není zobrazeno 24 mezilehlých verzí od stejného uživatele.)
Řádka 40: Řádka 40:
 
  mkdir -p moonlander2
 
  mkdir -p moonlander2
 
  cd ./moonlander2
 
  cd ./moonlander2
  wget https://github.com/jstefanop/bfgminer/releases/download/bfgminer-5.4.2-futurebit2/bfgminer_5.4.2-futurebit2_linux_armv6.tar.gz
+
  wget https://github.com/jstefanop/bfgminer/releases/download/bfgminer-5.4.2-futurebit2-beta2/bfgminer_5.4.2-futurebit2_linux_armv6.tar.gz
 
  tar -xzf bfgminer_5.4.2-futurebit2_linux_armv6.tar.gz
 
  tar -xzf bfgminer_5.4.2-futurebit2_linux_armv6.tar.gz
 
  cd bfgminer_5.4.2-futurebit2_linux_armv6
 
  cd bfgminer_5.4.2-futurebit2_linux_armv6
 +
sudo ln -s ~/moonlander2/bfgminer_5.4.2-futurebit2_linux_armv6/bfgminer /usr/bin/
 +
cd ~
  
 
A nakonec ověříme že se vše zdařilo:
 
A nakonec ověříme že se vše zdařilo:
Řádka 48: Řádka 50:
 
  ./bfgminer --help
 
  ./bfgminer --help
  
 +
== Web rozhraní ==
 
Pokud chceme sledovat funkčnost přes web rozhraní, doinstalujeme web server. To je vhodné, pokud budeme těžaře spouštět na pozadí.
 
Pokud chceme sledovat funkčnost přes web rozhraní, doinstalujeme web server. To je vhodné, pokud budeme těžaře spouštět na pozadí.
  
Řádka 55: Řádka 58:
  
 
Následně stahneme soubor miner.php a uložíme je do adresáře www.
 
Následně stahneme soubor miner.php a uložíme je do adresáře www.
 +
 +
cd ~
 +
sudo apt-get install -y git
 +
git clone https://github.com/jstefanop/bfgminer.git
 +
cd bfgminer
 +
sudo cp *.php /var/www/html
 +
cd ..
 +
rm -rf bfgminer
 +
cd /var/www/html
 +
sudo ln -s miner.php index.php
 +
cd ~
  
 
== Konfigurace ==
 
== Konfigurace ==
Řádka 67: Řádka 81:
 
* Příklad MH = 5.66 * 832  => Výkon hašování cca. 4.7 MH/s (+-5%).
 
* Příklad MH = 5.66 * 832  => Výkon hašování cca. 4.7 MH/s (+-5%).
 
* Čím vyšší je rychlost hašování, tím větší je odchylka od tohoto průměru způsobená výrobní odchylkou ASIC.
 
* Čím vyšší je rychlost hašování, tím větší je odchylka od tohoto průměru způsobená výrobní odchylkou ASIC.
 +
 +
== Autostart ==
 +
Předpokládám že je žádoucí, aby se težař spouštěl aoutmaticky při spuštění systému. Pro tento účel jsem vytvořil skrypt, který to zajistí. Tudíž otevřeme textový editor a skrypt uložíme:
 +
sudo nano /etc/init.d/bfgminer
 +
 +
#!/bin/bash
 +
### BEGIN INIT INFO
 +
# Provides:          bfgminer
 +
# Required-Start:    $local_fs $remote_fs $network $time
 +
# Required-Stop:    $local_fs $remote_fs $network $time
 +
# Default-Start:    2 3 4 5
 +
# Default-Stop:      0 1 6
 +
# Short-Description: bfgminer
 +
### END INIT INFO
 +
 +
# Nastaveni poolu pro těžbu vcetne uzivatele a hesla na pool(y)
 +
# Tezba na jednom poolu:
 +
#  "-o stratum+tcp://pool:port -u username -p password"
 +
#
 +
# Tezba na vice poolech:
 +
#  "-o http://pool1:port -u pool1username -p pool1password -o http://pool2:port -u pool2usernmae -p pool2password"
 +
#
 +
# Těžba více bloku:
 +
#  "-o http://pool1:port -u pool1username -p pool1password --pool-goal default -o http://pool2:port -u pool2usernmae -p pool2password --pool-goal freicoin"
 +
#
 +
URL="-o stratum+tcp://litecoinpool.org:3333 -u Tydyt.1 -p 1"
 +
 +
# Nastaveni sítoveho rozhrani pro vzdeleny pristup k informacim o tezbe
 +
#  --api-listen    Aktivuje api rozhrani na porte TCP
 +
#  --api-mcast    Aktivuje api rozhrani na portě UDP
 +
#
 +
# Vice paramatru zjistime po yadani prikazu bfgminer --help
 +
#
 +
NET="--api-listen"
 +
 +
# Nastaven jake zarizeni, klicenky, ... se maji pouzit
 +
DEV="MLD:ALL"
 +
 +
# Nastaveni parametru pro zarizeni
 +
# Pro Moonlander 2 se nastavuje rychlost hodin. Povolené hodnoty jsou:
 +
#  384, 450, 480, 540, 576, 600, 612, 625, 636, 648, 660, 672, 684,
 +
#      700, 720, 744, 756, 768, 796, 832, 852, 876, 900, 924, 954.
 +
# Pozor: Pokud jsou hodiny nastavene na vetsi rychlost, nez je dle stavu
 +
#        napajeni schopen miner zvladnout, nastane chybovost vypoctu a
 +
#        snizeni realneho zisku
 +
#
 +
SET="MLD:clock=600"
 +
 +
# Jedinecny nazev pro oznaceni spusteneho skruptu
 +
NAME="tezar1"
 +
 +
# Cesta k vlastnimu programu bfgminer (jeli bfgminer spustitelny odkudkoliv, neni nutne zadavet)
 +
DIR="/home/pi/moonlander2/bfgminer_5.4.2-futurebit2_linux_armv6"
 +
 +
#--------------------------- Konec nastaveni -------------------------------
 +
 +
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
 +
 +
RUN=""
 +
[ ! "$NET" == "" ] && RUN="$RUN $NET"
 +
[ ! "$DEV" == "" ] && RUN="$RUN -S $DEV"
 +
[ ! "$SET" == "" ] && RUN="$RUN --set $SET"
 +
 +
start() {
 +
    echo -n "Starting mining. "
 +
 +
    RUN="bfgminer --real-quiet $RUN $URL"
 +
 +
    [ ! "$DIR" == "" ] && RUN="$DIR/$RUN"
 +
 +
    PID="$(ps fax | grep $NAME | grep -v grep | head -1 | awk '{print $1}')"
 +
    if [ ! "$PID" == "" ]; then
 +
        echo "$(tput setaf 1)Error:$(tput sgr0) Mining is already running. [ $(tput setaf 1)NG$(tput sgr0) ]"
 +
    else
 +
        /usr/bin/screen -L -S $NAME -m -d $RUN
 +
        PID="$(ps fax | grep $NAME | grep -v grep | head -1 | awk '{print $1}')"
 +
        if [ ! "$PID" == "" ]; then
 +
            echo "PID of $(tput setaf 3)$PID$(tput sgr0) [ $(tput setaf 2)OK$(tput sgr0) ]"
 +
        else
 +
            echo "[ $(tput setaf 1)NG$(tput sgr0) ]"
 +
        fi
 +
    fi
 +
}
 +
 +
test() {
 +
    RUN="bfgminer $RUN $URL"
 +
    echo $RUN
 +
    echo "Spustit tezbu z příkazového řádku dle zadaných parametru ? Enter - Ano / Ctrl-C - Ne"
 +
    read
 +
    [ ! "$DIR" == "" ] && RUN="$DIR/$RUN"
 +
    $RUN
 +
}
 +
 +
stop() {
 +
    echo -n "Stopping mining. "
 +
    PID="$(ps fax | grep $NAME | grep -v grep | head -1 | awk '{print $1}')"
 +
    if [ "$PID" == "" ]; then
 +
        echo "$(tput setaf 1)Error:$(tput sgr0) The mining was not running. [ $(tput setaf 5)NG$(tput sgr0) ]"
 +
    else
 +
        /usr/bin/screen -X -S $NAME quit
 +
        PID="$(ps fax | grep $NAME | grep -v grep | head -1 | awk '{print $1}')"
 +
        if [ "$PID" == "" ]; then
 +
            echo " [$(tput setaf 2)OK$(tput sgr0) ]"
 +
        else
 +
            echo " [$(tput setaf 1)NG$(tput sgr0) ]"
 +
        fi
 +
    fi
 +
}
 +
 +
case "$1" in
 +
    restart)
 +
        stop
 +
        sleep 3
 +
        start
 +
    ;;
 +
    status) status;;
 +
    start)  start ;;
 +
    stop)  stop;;
 +
    test)  test;;
 +
    *)
 +
        echo "usage $0 start|stop|restart|test" >&2
 +
        exit 1
 +
    ;;
 +
esac
 +
 +
Doinstalujeme screen, nastavíme aby byl skript spustitelný a následně jej přidáme do seznamu pro spuštění po startu systému.
 +
 +
sudo apt-get install -y screen
 +
sudo chmod 755 /etc/init.d/bfgminer
 +
sudo update-rc.d bfgminer defaults
 +
sudo systemctl daemon-reload
 +
sudo service bfgminer start
  
 
== Tuning ==
 
== Tuning ==
Řádka 72: Řádka 218:
  
 
'''Regulace napětí by měla být prováděna pečlivě a ve velmi malých krocích. Nikdy nepoužívejte Hašovací rychlost, které je mimo uvedený rozsah. To by s největší pravděpodobností poškodilo ASIC, který poběží na vysokém napětí a s vysokýni hodinami po dlouhou dobu. Na takto poškozené horníky se pak záruka nevstahuje !'''
 
'''Regulace napětí by měla být prováděna pečlivě a ve velmi malých krocích. Nikdy nepoužívejte Hašovací rychlost, které je mimo uvedený rozsah. To by s největší pravděpodobností poškodilo ASIC, který poběží na vysokém napětí a s vysokýni hodinami po dlouhou dobu. Na takto poškozené horníky se pak záruka nevstahuje !'''
 
[[Soubor:moonlander2-voltage-1.jpg]]
 
  
 
Horník obsahuje dva trimry pro nastavení napětí:
 
Horník obsahuje dva trimry pro nastavení napětí:
Řádka 79: Řádka 223:
 
* druhý je určen pro napájení procesoru a umožnuje nastavit rozsah 0.625 V až 0.91 V.
 
* druhý je určen pro napájení procesoru a umožnuje nastavit rozsah 0.625 V až 0.91 V.
  
[[Soubor:moonlander2-voltage-2.jpg]]
+
<gallery mode=packed-hover heights=300px>
 +
moonlander2-voltage-1.jpg
 +
moonlander2-voltage-2.jpg
 +
</gallery>
  
 
V zásadě můžete nastavit cokoliv mezi následujícími scénáři:
 
V zásadě můžete nastavit cokoliv mezi následujícími scénáři:

Aktuální verze z 14. 10. 2018, 12:53

Popis

Parametry:

  • Rozhraní k připojení: USB (obsahuje převodník na COM)
  • Rychlost Hashování : 3 - 5 MH/s
  • Efektivita: 2 W/MH
  • Napájení : 5 V USB
  • Spotřeba : Max 10 W





Základní měny které je možné těžit:

  • Litecoin, Dogecoin, Verge, GameCredits, Digibyte, Feathercoin, Megacoin, Novacoin

Instalace

Následující popis je zaměřen na zprovoznění distribuce pro ARM procesory, Raspberry. Pro instalaci na jinou platformu stačí jen stáhnout patřičný soubor z Githubu.

Prvně provedeme upgrade systému a doinstalujeme potřebné balíčky:

sudo raspi-config

sudo rpi-update
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get dist-upgrade
sudo apt-get install -y libcurl4-gnutls-dev libjansson-dev

Následně vytvoříme podadresář a stáhneme aktuální verzi z Githubu (následující postup je pro verzí 5.4.2 - doporučuji ověřit zda není novější):

mkdir -p moonlander2
cd ./moonlander2
wget https://github.com/jstefanop/bfgminer/releases/download/bfgminer-5.4.2-futurebit2-beta2/bfgminer_5.4.2-futurebit2_linux_armv6.tar.gz
tar -xzf bfgminer_5.4.2-futurebit2_linux_armv6.tar.gz
cd bfgminer_5.4.2-futurebit2_linux_armv6
sudo ln -s ~/moonlander2/bfgminer_5.4.2-futurebit2_linux_armv6/bfgminer /usr/bin/
cd ~

A nakonec ověříme že se vše zdařilo:

./bfgminer --help

Web rozhraní

Pokud chceme sledovat funkčnost přes web rozhraní, doinstalujeme web server. To je vhodné, pokud budeme těžaře spouštět na pozadí.

sudo apt-get install -y lighttpd php-cgi apache2-utils screen htop
sudo lighty-enable-mod fastcgi-php
sudo service lighttpd force-reload

Následně stahneme soubor miner.php a uložíme je do adresáře www.

cd ~
sudo apt-get install -y git
git clone https://github.com/jstefanop/bfgminer.git
cd bfgminer
sudo cp *.php /var/www/html
cd ..
rm -rf bfgminer
cd /var/www/html
sudo ln -s miner.php index.php
cd ~

Konfigurace

Příklad spuštění přímo z příkazového řádku:

 ./bfgminer --api-listen --api-mcast --scrypt -o stratum+tcp://litecoinpool.org:3333 -u Tydyt.1 -p 1,d=128  -S MLD:ALL --set MLD:clock=540

Nejzajímavější je parametr "--set MLD:clock=xxx" který umožňuje nastavit rychlost hodin. Povolené hodnoty jsou jen : 384, 450, 480, 540, 576, 600, 612, 625, 636, 648, 660, 672, 684, 700, 720, 744, 756, 768, 796, 832, 852, 876, 900, 924, 954.

Na výše uvedené frekvenci hodin a výkonu jádra závisý vlastní těžební výkon. Průměrnou rychlost hašování můžete vypočítat podle následujícího vzorce:

  • Výkon hašování MH = 5.66 * MHz.
  • Příklad MH = 5.66 * 832 => Výkon hašování cca. 4.7 MH/s (+-5%).
  • Čím vyšší je rychlost hašování, tím větší je odchylka od tohoto průměru způsobená výrobní odchylkou ASIC.

Autostart

Předpokládám že je žádoucí, aby se težař spouštěl aoutmaticky při spuštění systému. Pro tento účel jsem vytvořil skrypt, který to zajistí. Tudíž otevřeme textový editor a skrypt uložíme:

sudo nano /etc/init.d/bfgminer
#!/bin/bash
### BEGIN INIT INFO
# Provides:          bfgminer
# Required-Start:    $local_fs $remote_fs $network $time
# Required-Stop:     $local_fs $remote_fs $network $time
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: bfgminer
### END INIT INFO

# Nastaveni poolu pro těžbu vcetne uzivatele a hesla na pool(y)
# Tezba na jednom poolu:
#  "-o stratum+tcp://pool:port -u username -p password"
#
# Tezba na vice poolech:
#  "-o http://pool1:port -u pool1username -p pool1password -o http://pool2:port -u pool2usernmae -p pool2password"
#
# Těžba více bloku:
#  "-o http://pool1:port -u pool1username -p pool1password --pool-goal default -o http://pool2:port -u pool2usernmae -p pool2password --pool-goal freicoin"
#
URL="-o stratum+tcp://litecoinpool.org:3333 -u Tydyt.1 -p 1"

# Nastaveni sítoveho rozhrani pro vzdeleny pristup k informacim o tezbe
#  --api-listen    Aktivuje api rozhrani na porte TCP
#  --api-mcast     Aktivuje api rozhrani na portě UDP
#
# Vice paramatru zjistime po yadani prikazu bfgminer --help
#
NET="--api-listen"

# Nastaven jake zarizeni, klicenky, ... se maji pouzit
DEV="MLD:ALL"

# Nastaveni parametru pro zarizeni
# Pro Moonlander 2 se nastavuje rychlost hodin. Povolené hodnoty jsou:
#  384, 450, 480, 540, 576, 600, 612, 625, 636, 648, 660, 672, 684,
#       700, 720, 744, 756, 768, 796, 832, 852, 876, 900, 924, 954.
# Pozor: Pokud jsou hodiny nastavene na vetsi rychlost, nez je dle stavu
#        napajeni schopen miner zvladnout, nastane chybovost vypoctu a
#        snizeni realneho zisku
#
SET="MLD:clock=600"

# Jedinecny nazev pro oznaceni spusteneho skruptu
NAME="tezar1"

# Cesta k vlastnimu programu bfgminer (jeli bfgminer spustitelny odkudkoliv, neni nutne zadavet) 
DIR="/home/pi/moonlander2/bfgminer_5.4.2-futurebit2_linux_armv6"

#--------------------------- Konec nastaveni -------------------------------

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

RUN=""
[ ! "$NET" == "" ] && RUN="$RUN $NET"
[ ! "$DEV" == "" ] && RUN="$RUN -S $DEV"
[ ! "$SET" == "" ] && RUN="$RUN --set $SET"

start() {
    echo -n "Starting mining. "

    RUN="bfgminer --real-quiet $RUN $URL"

    [ ! "$DIR" == "" ] && RUN="$DIR/$RUN"

    PID="$(ps fax | grep $NAME | grep -v grep | head -1 | awk '{print $1}')"
    if [ ! "$PID" == "" ]; then
        echo "$(tput setaf 1)Error:$(tput sgr0) Mining is already running. [ $(tput setaf 1)NG$(tput sgr0) ]"
    else
        /usr/bin/screen -L -S $NAME -m -d $RUN
        PID="$(ps fax | grep $NAME | grep -v grep | head -1 | awk '{print $1}')"
        if [ ! "$PID" == "" ]; then
            echo "PID of $(tput setaf 3)$PID$(tput sgr0) [ $(tput setaf 2)OK$(tput sgr0) ]"
        else
            echo "[ $(tput setaf 1)NG$(tput sgr0) ]"
        fi
    fi
}

test() {
    RUN="bfgminer $RUN $URL"
    echo $RUN
    echo "Spustit tezbu z příkazového řádku dle zadaných parametru ? Enter - Ano / Ctrl-C - Ne"
    read
    [ ! "$DIR" == "" ] && RUN="$DIR/$RUN"
    $RUN
}

stop() {
    echo -n "Stopping mining. "
    PID="$(ps fax | grep $NAME | grep -v grep | head -1 | awk '{print $1}')"
    if [ "$PID" == "" ]; then
        echo "$(tput setaf 1)Error:$(tput sgr0) The mining was not running. [ $(tput setaf 5)NG$(tput sgr0) ]"
    else
        /usr/bin/screen -X -S $NAME quit
        PID="$(ps fax | grep $NAME | grep -v grep | head -1 | awk '{print $1}')"
        if [ "$PID" == "" ]; then
            echo " [$(tput setaf 2)OK$(tput sgr0) ]"
        else
            echo " [$(tput setaf 1)NG$(tput sgr0) ]"
        fi
    fi
}

case "$1" in
    restart)
        stop
        sleep 3
        start
    ;;
    status) status;;
    start)  start ;;
    stop)   stop;;
    test)   test;;
    *)
        echo "usage $0 start|stop|restart|test" >&2
        exit 1
    ;;
esac

Doinstalujeme screen, nastavíme aby byl skript spustitelný a následně jej přidáme do seznamu pro spuštění po startu systému.

sudo apt-get install -y screen
sudo chmod 755 /etc/init.d/bfgminer
sudo update-rc.d bfgminer defaults
sudo systemctl daemon-reload
sudo service bfgminer start

Tuning

Upozornění:

Regulace napětí by měla být prováděna pečlivě a ve velmi malých krocích. Nikdy nepoužívejte Hašovací rychlost, které je mimo uvedený rozsah. To by s největší pravděpodobností poškodilo ASIC, který poběží na vysokém napětí a s vysokýni hodinami po dlouhou dobu. Na takto poškozené horníky se pak záruka nevstahuje !

Horník obsahuje dva trimry pro nastavení napětí:

  • první je určen pro napájení pamětí a umožnuje nastavit rozsah 0.65 až 1.05 V.
  • druhý je určen pro napájení procesoru a umožnuje nastavit rozsah 0.625 V až 0.91 V.

V zásadě můžete nastavit cokoliv mezi následujícími scénáři:

  • Maximální hashový výkon s vysokou frekvencí procesoru a odpovídajícím přizpůsobení napájení pro procesor pro co nejnožší spotřebě energie.
  • Maximální účinnost s nízkou frekvencí a odpovídajícím nastaveným nízkého napětím při nízké spotřebě


Konbinací obou scénářů můžeme docílit nejoptimálnějšího bodu výkonu. V praxi je nejvýhodnější rychlost hodin 756 MHh při napájení jádra 0,725V. Toto nastavení odpovídá nejefektivnějšímu nastavení maxima, které stále vykazuje dobrý výkon, ale stále stačí chlazení namontovaným ventilátorem.

Zpět