{"meta":{"title":"D-Central \u2014 Miner API Command Reference (cgminer\/BOSminer 4028)","description":"The JSON-over-TCP API on port 4028 that ASIC miners expose, as a firmware-family support matrix: 50 commands x {Stock, BraiinsOS-family, LuxOS-family, DCENT_OS} with access class, parameters and description. Bible-cited.","generated":"2026-08-16T16:51:39+00:00","version":"1.0","license":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/","license_name":"CC BY 4.0","source":"https:\/\/d-central.tech\/miner-api-reference\/","record_count":50,"transport":"JSON object over a raw TCP socket on port 4028, null-terminated. Send {\"command\":\"summary\"}; multicommand joins with \"+\". Access is gated per source IP (cgminer api-allow R\/W\/P\/N).","provenance":"Mining Bible: PYASIC_COMPATIBILITY.md (canonical cross-firmware command set), BRAIINSOS_REVERSE_ENGINEERING.md (read-only 4028 + gRPC 50051), LUXOS_REVERSE_ENGINEERING.md (session model + extensions), asic-rs.md.","disclaimer":"Generic firmware language; VNish is intentionally excluded (separate REST surface, and per policy no VNish-specific findings are published). DCENT_OS cells are source capabilities or targets, not blanket artifact readiness and not independently verified, and the design goal is cgminer-compatible detection -- standing on the shoulders of cgminer\/BOSminer\/LuxOS, not surpassing them. Command availability shifts with firmware versions -- verify against your build."},"rows":[{"id":"version","command":"version","command_set":"cgminer-core","category":"Identity","access":"read","parameters":"none","description":"Returns miner\/API version (CGMiner version, API version string e.g. '3.7', Miner type, compile time). Primary tool-fingerprint call.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md \u00a75.1 + command list (lines 309,322,438); BRAIINSOS_RE \u00a710 (line 1271)"},{"id":"summary","command":"summary","command_set":"cgminer-core","category":"Status","access":"read","parameters":"none","description":"Top-level mining summary: Elapsed, GHS 5s \/ GHS av (or MHS av\/5s), Accepted, Rejected, Hardware Errors, Utility, Found Blocks, Best Share, Device Hardware%\/Rejected%.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md \u00a75.1 SUMMARY block (lines 332-359); BRAIINSOS_RE \u00a710 (lines 1271,1288-1300)"},{"id":"stats","command":"stats","command_set":"cgminer-core","category":"Status","access":"read","parameters":"none","description":"Detailed per-board statistics: per-chain chip counts (chain_acn*), per-chain hashrate (chain_rate*), chip status maps (chain_acs*), temps (temp*, temp2_*), fan RPM (fan1-4), total_rateideal, uptime.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md \u00a75.1 STATS block (lines 365-390); command list (line 440)"},{"id":"pools","command":"pools","command_set":"cgminer-core","category":"Pools","access":"read","parameters":"none","description":"Lists configured pools with per-pool metrics: URL, Status (Alive\/Dead), Priority, Quota, Accepted\/Rejected, User, Stratum Active, Last Share Time\/Difficulty, Pool Rejected%\/Stale%.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md \u00a75.1 POOLS block (lines 399-432); command list (line 441)"},{"id":"devs","command":"devs","command_set":"cgminer-core","category":"Devices","access":"read","parameters":"none","description":"Per-device (hashboard\/ASC) report: status, temperature, hashrate, accepted\/rejected, hardware errors per board.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list (line 442); LUXOS_RE \u00a74 (cmd 8); BRAIINSOS_RE \u00a710 (line 1271)"},{"id":"devdetails","command":"devdetails","command_set":"cgminer-core","category":"Devices","access":"read","parameters":"none","description":"Static hardware details per board: Model, Chips, Cores, Frequency, Voltage, Profile, Serial. Used for model identification.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list (line 443); LUXOS_RE \u00a74 (cmd 7); BRAIINSOS_RE \u00a710 (line 1271)"},{"id":"config","command":"config","command_set":"cgminer-core","category":"Config","access":"read","parameters":"none","description":"Basic configuration info: ASC count, pool count, active strategy, log interval, device code, OS.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list (line 444); LUXOS_RE \u00a74 (cmd 6)"},{"id":"edevs","command":"edevs","command_set":"cgminer-core","category":"Devices","access":"read","parameters":"none (legacy '[old]' arg accepted)","description":"Same as devs but excludes blacklisted\/zombie devices. Cleaner board list for monitoring.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list (line 446); LUXOS_RE \u00a74 (cmd 10); BRAIINSOS_RE \u00a710 (line 1273)"},{"id":"estats","command":"estats","command_set":"cgminer-core","category":"Status","access":"read","parameters":"none (legacy '[old]' arg accepted)","description":"Same as stats but excludes zombie devices. Variety of model-specific miner stats.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list (line 447); LUXOS_RE \u00a74 (cmd 12)"},{"id":"coin","command":"coin","command_set":"cgminer-core","category":"Status","access":"read","parameters":"none","description":"Current coin\/algorithm info (hash method, current block diff, network diff). Placeholder\/compatibility on many ASIC builds.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list (line 448); LUXOS_RE \u00a74 (cmd 5 'placeholder for compatibility')"},{"id":"lcd","command":"lcd","command_set":"cgminer-core","category":"Status","access":"read","parameters":"none","description":"Compact one-shot general summary (originally for LCD displays). Compatibility placeholder on most ASIC firmware.","support":{"stock":"read","braiins":"no","luxos":"read","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list (line 449); LUXOS_RE \u00a74 (cmd 14 'compatibility placeholder')"},{"id":"check","command":"check","command_set":"cgminer-core","category":"Meta","access":"read","parameters":"command_name","description":"Reports whether a given command exists and the caller's access level for it. Used for capability discovery.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list (line 450); LUXOS_RE \u00a74 (cmd 4)"},{"id":"asc","command":"asc","command_set":"cgminer-core","category":"Devices","access":"read","parameters":"board_id (n)","description":"Detailed report for a single ASC (hashboard) by index.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list (line ~462); LUXOS_RE \u00a74 (cmd 2)"},{"id":"asccount","command":"asccount","command_set":"cgminer-core","category":"Devices","access":"read","parameters":"none","description":"Returns the quantity of ASC devices (hashboards) detected.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list (line 464); LUXOS_RE \u00a74 (cmd 3)"},{"id":"notify","command":"notify","command_set":"cgminer-core","category":"Status","access":"read","parameters":"none","description":"Returns the device notification\/error history (last share, temps, comms errors per device).","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list ('notify')"},{"id":"privileged","command":"privileged","command_set":"cgminer-core","category":"Meta","access":"read","parameters":"none","description":"Reports whether the calling connection has privileged (write) access under the api-allow policy.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"PYASIC_COMPATIBILITY.md command list ('privileged')"},{"id":"pga","command":"pga","command_set":"cgminer-core","category":"Devices","access":"read","parameters":"n","description":"Legacy: data for FPGA device n. Placeholder\/empty on ASIC-only miners.","support":{"stock":"read","braiins":"no","luxos":"read","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('pga')"},{"id":"debug","command":"debug","command_set":"cgminer-core","category":"Meta","access":"read","parameters":"setting","description":"Get\/set the daemon debug verbosity flags (e.g. quiet, verbose, debug, rpc).","support":{"stock":"read","braiins":"no","luxos":"read","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('debug')"},{"id":"lockstats","command":"lockstats","command_set":"cgminer-core","category":"Meta","access":"read","parameters":"none","description":"Writes internal lock statistics to the log (build-dependent debug aid).","support":{"stock":"read","braiins":"no","luxos":"no","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('lockstats')"},{"id":"switchpool","command":"switchpool","command_set":"cgminer-core","category":"Pools","access":"control","parameters":"n (pool index)","description":"Switch the active pool to index n (raise to top priority).","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list (line 451); LUXOS_RE \u00a74 (cmd 19 'switch pool to top priority'); BRAIINSOS_RE \u00a710 (writes via gRPC, line 1265)"},{"id":"enablepool","command":"enablepool","command_set":"cgminer-core","category":"Pools","access":"control","parameters":"n","description":"Enable (activate) pool n.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list (line 452); LUXOS_RE \u00a74 (cmd 11)"},{"id":"disablepool","command":"disablepool","command_set":"cgminer-core","category":"Pools","access":"control","parameters":"n","description":"Disable (deactivate) pool n.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list (line 453); LUXOS_RE \u00a74 (cmd 9)"},{"id":"addpool","command":"addpool","command_set":"cgminer-core","category":"Pools","access":"control","parameters":"url,user,password","description":"Add a new pool (to the first group). On LuxOS the leading session_id is required.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md \u00a75.1 example (line 313) + command list (line 454); LUXOS_RE \u00a74 (cmd 1)"},{"id":"removepool","command":"removepool","command_set":"cgminer-core","category":"Pools","access":"control","parameters":"n","description":"Remove pool n.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('removepool'); LUXOS_RE \u00a74 (cmd 16)"},{"id":"poolpriority","command":"poolpriority","command_set":"cgminer-core","category":"Pools","access":"control","parameters":"n,n,n,... (priority order)","description":"Set the priority order of all pools.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('poolpriority')"},{"id":"poolquota","command":"poolquota","command_set":"cgminer-core","category":"Pools","access":"control","parameters":"n,q (pool,quota)","description":"Set the load-balancing quota for pool n.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('poolquota'); LUXOS_RE \u00a74 (groupquota cmd 25)"},{"id":"save","command":"save","command_set":"cgminer-core","category":"Config","access":"control","parameters":"[file]","description":"Persist the current configuration to disk (optionally to a named file).","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('save')"},{"id":"restart","command":"restart","command_set":"cgminer-core","category":"System","access":"control","parameters":"none","description":"Restart the mining daemon (cgminer\/bmminer\/bosminer\/luxminer) without rebooting the device.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list (line 459); LUXOS_RE \u00a74 (resetminer cmd 57)"},{"id":"quit","command":"quit","command_set":"cgminer-core","category":"System","access":"control","parameters":"none","description":"Terminate the mining daemon process.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list (line 460)"},{"id":"ascenable","command":"ascenable","command_set":"cgminer-core","category":"Devices","access":"control","parameters":"n","description":"Enable hashboard (ASC) n.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('ascenable'); LUXOS_RE \u00a74 (enableboard cmd 29)"},{"id":"ascdisable","command":"ascdisable","command_set":"cgminer-core","category":"Devices","access":"control","parameters":"n","description":"Disable hashboard (ASC) n.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('ascdisable'); LUXOS_RE \u00a74 (disableboard cmd 30)"},{"id":"ascset","command":"ascset","command_set":"cgminer-core","category":"Devices","access":"control","parameters":"n,opt[,val] (vendor-specific opcodes)","description":"Set a vendor-specific ASC option. On Avalon\/Canaan this carries the model-specific ascset opcodes (e.g. frequency, voltage, LED). Parameters are not portable across vendors.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('ascset'); asic-rs.md line 68 (Avalon ascset opcodes)"},{"id":"pgaenable","command":"pgaenable","command_set":"cgminer-core","category":"Devices","access":"control","parameters":"n","description":"Legacy: enable FPGA device n (placeholder on ASIC miners).","support":{"stock":"http-cgi","braiins":"no","luxos":"no","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('pgaenable')"},{"id":"pgadisable","command":"pgadisable","command_set":"cgminer-core","category":"Devices","access":"control","parameters":"n","description":"Legacy: disable FPGA device n (placeholder on ASIC miners).","support":{"stock":"http-cgi","braiins":"no","luxos":"no","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('pgadisable')"},{"id":"pgaidentify","command":"pgaidentify","command_set":"cgminer-core","category":"Devices","access":"control","parameters":"n","description":"Legacy: blink the identify LED on FPGA device n.","support":{"stock":"http-cgi","braiins":"no","luxos":"no","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('pgaidentify')"},{"id":"setconfig","command":"setconfig","command_set":"cgminer-core","category":"Config","access":"control","parameters":"name,value","description":"Set a global cgminer config value (e.g. queue, scantime, expiry).","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('setconfig')"},{"id":"zero","command":"zero","command_set":"cgminer-core","category":"Stats","access":"control","parameters":"which,summary (true\/false)","description":"Zero the named statistics counters; optional summary printout.","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('zero')"},{"id":"hotplug","command":"hotplug","command_set":"cgminer-core","category":"System","access":"control","parameters":"n (seconds)","description":"Set the hotplug device-scan interval (0 disables).","support":{"stock":"http-cgi","braiins":"no","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('hotplug')"},{"id":"failover-only","command":"failover-only","command_set":"cgminer-core","category":"Pools","access":"control","parameters":"true|false","description":"Restrict work to the primary pool unless it is dead (failover-only mode).","support":{"stock":"http-cgi","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"PYASIC_COMPATIBILITY.md command list ('failover-only')"},{"id":"logon","command":"logon","command_set":"extended","category":"Session","access":"control","parameters":"none","description":"Open a control session; returns SessionID. Single-session mutex: fails if a session already exists. SessionID is the FIRST parameter of every mutating command. (LuxOS-family model; BraiinsOS uses gRPC bearer token instead.)","support":{"stock":"no","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"LUXOS_RE \u00a73 (lines 213-249), \u00a74 (cmd 51)"},{"id":"logoff","command":"logoff","command_set":"extended","category":"Session","access":"control","parameters":"session_id","description":"Close the active control session.","support":{"stock":"no","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"LUXOS_RE \u00a74 (cmd 52)"},{"id":"session","command":"session","command_set":"extended","category":"Session","access":"read","parameters":"none","description":"Report whether a control session is currently active.","support":{"stock":"no","braiins":"no","luxos":"read","dcent_os":"planned"},"source":"LUXOS_RE \u00a74 (cmd 53)"},{"id":"kill","command":"kill","command_set":"extended","category":"Session","access":"control","parameters":"none","description":"Force-terminate any active session (recover a stuck mutex).","support":{"stock":"no","braiins":"no","luxos":"control","dcent_os":"planned"},"source":"LUXOS_RE \u00a74 (cmd 54)"},{"id":"fans","command":"fans","command_set":"extended","category":"Cooling","access":"read","parameters":"none","description":"Fan statistics: per-fan RPM, speed %, target %.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"BRAIINSOS_RE \u00a710 (line 1271 'fans'); LUXOS_RE \u00a74 (cmd 13); PYASIC \u00a75 LuxOS ext ('fans')"},{"id":"temps","command":"temps","command_set":"extended","category":"Cooling","access":"read","parameters":"none","description":"Per-chain board and chip temperatures.","support":{"stock":"read","braiins":"read","luxos":"read","dcent_os":"beta"},"source":"BRAIINSOS_RE \u00a710 (line 1271 'temps'); LUXOS_RE \u00a74 (cmd 21)"},{"id":"tempctrl","command":"tempctrl","command_set":"extended","category":"Cooling","access":"read","parameters":"none","description":"Temperature-control thresholds (target \/ hot \/ dangerous).","support":{"stock":"no","braiins":"no","luxos":"read","dcent_os":"planned"},"source":"LUXOS_RE \u00a74 (cmd 20); PYASIC \u00a75 LuxOS ext ('tempctrl')"},{"id":"power","command":"power","command_set":"extended","category":"Power","access":"read","parameters":"none","description":"Get power consumption in watts (measured or estimated).","support":{"stock":"no","braiins":"grpc","luxos":"read","dcent_os":"beta"},"source":"LUXOS_RE \u00a74 (cmd 71); PYASIC \u00a75 LuxOS ext ('power')"},{"id":"profiles","command":"profiles","command_set":"extended","category":"Tuning","access":"read","parameters":"none","description":"List available tuning profiles (frequency\/voltage operating points). Note: profile values are runtime operating points, not factory presets.","support":{"stock":"no","braiins":"grpc","luxos":"read","dcent_os":"beta"},"source":"LUXOS_RE \u00a74 (cmd 45); PYASIC \u00a75 LuxOS ext ('profiles')"},{"id":"profileset","command":"profileset","command_set":"extended","category":"Tuning","access":"control","parameters":"session_id,profile_name[,frequency_step,voltage_step,update_atm]","description":"Set the active tuning profile for the miner\/board. (BraiinsOS equivalent is a gRPC tuner call; stock has no socket equivalent.)","support":{"stock":"no","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"LUXOS_RE \u00a73 (line 224 example), \u00a74 (cmd 46)"},{"id":"curtail","command":"curtail","command_set":"extended","category":"Power","access":"control","parameters":"session_id,sleep|wakeup[,voltage_step,frequency_step,mode]","description":"Demand-response sleep\/wake control (curtailment). LuxOS exposes sleep\/wakeup; an operator can pause hashing for grid events. (BraiinsOS pause\/resume is gRPC.)","support":{"stock":"no","braiins":"grpc","luxos":"control","dcent_os":"planned"},"source":"LUXOS_RE \u00a74 (cmd 72; also sleep\/wakeup in PYASIC \u00a75 LuxOS ext)"}]}