logo
OSPoolASIC FirmwareASIC Hub
More
referral
Increase your income with Hiveon. Invite your friends and earn real cryptocurrency!
search
Popular searches:

ASIC Hub configuration

This article describes ASIC Hub configuration file syntax and options.

Default paths for ASIC Hub configuration are:

  • Linux - /etc/asic-hub/config.toml
  • Windows - C:\Program Files\Hiveon\ASIC Hub\config.toml

Configuration example

# ASIC Hub Configuration
#
# See https://hiveos.farm/ASIC-Hub/ for more information.
#

# HiveOS API URL (optional)
#APIUrl = "http://api.hiveos.farm"

# HiveOS Dashboard URL (optional)
#HiveWebUrl = "https://the.hiveos.farm"

# Application Update Server URL
#UpdateServer = "https://download.hiveos.farm/hub"

# Max OS threads count (default is CPU cores count)
#MaxThreads=8

# Directory for temporary files (download cache, etc)
#
# Default is OS temp directory
#TempDir = "/tmp"

# ASIC Hub web server configuration.
[HTTP]
# HTTP server listen address
Listen = ":8800"

# Static files directory for web UI
StaticDir = "/opt/asic-hub/public"

# HTTP response write timeout (optional)
#WriteTimeout = "40m"

# HTTP request read timeout (optional)
#ReadTimeout = "1m"

# Additional HTTP API transport configuration
[API]
# If non-zero, controls the maximum idle (keep-alive) connections to keep per-host.
# If zero, MaxThreads value is used.
#MaxIdleConnsPerHost = 10

[LocalState]
# Path for SQLite database with appdata
DB = "/var/lib/asic-hub/data.db"

# Database backups directory
BackupsDir = "/var/lib/asic-hub/backups"

[ARP]
# Enable ARP scanner.
#
# ARP Scanner scans local network and updates matching between IP and MAC addresses.
# This allows to keep actual IP address of ASIC even if original IP address was changed.
#
# Set to "false" if you use static IP addresses or see a high load on network router.
EnableScanner = true

# Network scan interval.
#
# Scanner will send ARP request to whole network in specified interval.
#ScanInterval = "30s"

# Whole log block is optional.
# "log" block removal disables file logging.
[Log]

# Controls debug logging
#Debug = true

# Log file path
Path = "/var/log/asic-hub/hub.json"

# Max size for log file before roration
MaxFileSize = 12

# Max rotated log files count
MaxBackups = 5

# Number of last bytes from log to be reported
# to Hive with "miner log" command (default: 1 MiB).
#
# Be careful with this value, Hive UI may freeze if log is too big.
#MaxTailBufferSize = 1048576

# Max age in days for log file before rotation
MaxAge = 7

[Monitoring]
# Max devices count per thread for monitoring (optional).
# ASIC Hub splits monitored ASICs into chunks and monitors
# each chunk in a separate thread.
#
# MaxGroupSize controls devices count monitored by thread.
# This value depends on your CPU cores/threads count and
# monitored devices amount.
#
# We recommend to increase this value on big farms, by splitting
# devices count by CPU core/thread count (Ndev / Nthreads) for best results.
MaxGroupSize = 30

# Device stats collection interval (optional).
# The default value is OK for small farms, but should be increased
# for big amount of connected ASICS (>500).
#StatsCollectInterval = "10s"

# ASIC stats submit interval (optional).
# We don't recommend specifing values higher than 1m, or you will
# notice a lot of "device offline" reports in your farm dashboard.
#StatsSendInterval="15s"

# IP address probe timeout for scan (optional).
# Increase if you don't see your asics during scan or
# see any "i/o timeout" errors during scan process.
#ProbeTimeout = "5s"

# ASIC API request timeout (optional).
# If ASIC doesn't respond in specified time, ASIC Hub will consider it as offline.
# Increase the value if you see a lot of "i/o timeout" errors although device is online.
ConnectTimeout = "10s"

# Ignore mirrors list from server hello response and always use host from config file.
#IgnoreMirrorsList=false

# Enable bulk stats send. Experimental and not fully supported by API.
#EnableBulkStats=false

# Interval after all items in stats queue will be sent
# to the server even if queue is not filled yet.
#
# Works only with EnableBulkStats=true.
#BufferFillTimeout="15s"

# Size of a stats queue to be sent to the server.
# Hub collects stats into a queue, and after queue is filled - sends to the server.
#
# Works only with EnableBulkStats=true.
#QueueBufferSize=100

# ASIC Hub service heartbeat send interval (optional)
#HubHeartbeatInterval="10s"

Updating configuration

To update configuration, modify a configuration file and restart ASIC Hub to apply changes.

  • Linux - sudo systemctl restart asic-hub
  • Windows - net stop asic-hub && net start asic-hub (as Administrator)

Configuration description

Property Type Description Defaults
APIUrl String Hive OS API Address. Can be changed to other API mirror like http://amster.hiveos.farm http://api.hiveos.farm
UpdateServer String ASIC Hub update server URL. Can be changed to other mirror. https://download.hiveos.farm/hub
MaxThreads Number CPU threads count to use by ASIC Hub. All CPU threads
TempDir String Path to temporary directory to store ASIC Hub temporary files

HTTP

[HTTP] block contains settings for ASIC Hub HTTP server that server web interface.

Property Type Description Defaults
Listen String Listen address for HTTP server :8800
StaticDir String Path to web ui assets
WriteTimeout String Response write timeout 40m
ReadTimeout String HTTP request read timeout 1m

LocalState

LocalState Block contains ASIC Hub data storage settings.

Property Type Description Defaults
BackupsDir String Database backups directory.
DB String Path to ASIC Hub database file. data.db

ARP

[ARP] block controls ARP scanner.

ARP scanner scans local network for network devices and detects IP address changes using ASIC MAC address. We recommend to turn ARP scanner off if all ASICs in network use static IP addresses.

Property Type Description Defaults
EnableScanner Boolean Enable ARP scanner true for Linux, false for Windows
ScanInterval String Interval between ARP requests 30s

Log

[Log] block controls logging.

Property Type Description Defaults
Debug Boolean Enable debug log (for troubleshooting purposes) false
Path String Path to log file
MaxFileSize Number Max log file size in MiB before rotation
MaxBackups Number Max log file backups
MaxAge Number Max log file age in days before rotation

API

[API]Additional HTTP API transport configuration

Property Type Description Defaults
MaxIdleConnsPerHost String Maximum connections from host. If value is 0, param MaxThreads is used instead. 100

Monitoring

[Monitoring] block controls device monitoring.

Params ConnectTimeout and ProbeTimeout depends on response time of your ASICs. The MaxGroupSize param depends on your host machine hardware.

Property Type Description Defaults
MaxGroupSize Number Max devices count per thread for monitoring 10
StatsCollectInterval String Interval of collecting device statistics (sec) 10s
StatsSendInterval String Statistics sending interval 15s
ProbeTimeout String IP address probe timeout during scan 5s
ConnectTimeout String ASIC connect timeout 60s
IgnoreMirrorsList Boolean Ignoring changing mirrors from an account false
HubHeartbeatInterval String ASIC Hub service heartbeat send interval 10s