Get desktop application:
View/edit binary Protocol Buffers messages
Method to factory reset
Request for factory reset action
(message has no fields)
Response for factory reset action
(message has no fields)
Method to retrieve the locate device mode status
Request for locate device status action.
(message has no fields)
Method to pause mining
Request for pause mining action.
(message has no fields)
Response for pause mining action.
Flag that miner mining was already paused
Method to reboot whole miner
Request for reboot bosminer action.
(message has no fields)
Response for reboot bosminer action.
(message has no fields)
Method to restart bosminer
Request for restart bosminer action.
(message has no fields)
Response for restart bosminer action.
Flag that bosminer was already running
Method to resume mining
Response for resume mining action.
(message has no fields)
Response for resume mining action.
Flag that miner was already mining
Method to enable/disable locate device mode
Request message to enable/disable locate device
Method to start bosminer
Request for start bosminer action.
(message has no fields)
Response for start bosminer action.
Flag that bosminer was already running
Method to stop bosminer
Request for stop bosminer action.
(message has no fields)
Response for stop bosminer action.
Flag that bosminer was already stopped
Returns settings with their current values
Request to get settings
If true, all supported settings are returned, including those that still hold their default value. If false (default), only user-configured settings are returned.
Response containing settings as key-value pairs. When include_default is false, only user-configured settings are returned. When include_default is true, all settings are returned with their effective values. { "settings": { "allow_disabling_hashboards_on_nopic_miners": true, "min_fan_pwm": 25, "rambo_mode": "cautious" } }
Returns a JSON Schema defining all available settings with their types, constraints, and metadata
Request to get JSON schema for all available settings
(message has no fields)
Response containing a JSON Schema defining all available settings
Resets all settings to their default values
Request to reset all settings to their default values
(message has no fields)
Response after resetting all settings to default. Contains the effective values of all supported settings after the reset (equivalent to calling GetSettings with include_default=true).
Sets one or more setting values Use null value to clear a setting and revert to default
Request to set one or more settings. Only settings present in the map are modified; keys not included in the request are left untouched and retain their current values. Use null to clear a setting and revert it to its default value.
Response for setting advanced settings. The update is atomic: either all requested settings are applied, or none are. If any setting fails validation or cannot be applied, the whole request is rejected via a standard gRPC error status (e.g., INVALID_ARGUMENT) and no settings are changed. On success, `applied` echoes back all settings from the request with their new values. Settings that were cleared (reverted to default) are returned with a null value.
Method to login and retrieve authentication token
Request for login action.
Response for login action.
Token to be used for authentication
Authentication token validity/timeout in seconds. Token validity refreshed to this value with each request.
Method to set password
Request for set password action.
Response for set password action.
(message has no fields)
Method to get current configuration constraints(min, max, default)
(message has no fields)
Tuner constraints
Cooling constraints
Dynamic Performance scaling constraints
Hashboard constraints
Method to get current miner configuration
(message has no fields)
Structure to return miner configuration
Pool groups configuration
Cooling configuration
Tuner configuration
DPS configuration
Hashchain configuration
Method to get current temperature measurements and fans states
Request to get current temperature and fans measurements
(message has no fields)
Response to get current fan states and temperature measurements
All Fans state
Sensor with current highest temperature
Method to set cooling mode
Request to set cooling mode
Save action
Cooling mode to set. If the cooling mode is changed, all fields that aren't relevant to the new mode are reset to default values. If the cooling mode values are updated, the new values are applied to the current mode.
Response for set cooling mode action.
The resulting cooling mode
Method to set/toggle immersion mode
Request to set immersion mode
Flag to enable or disable immersion mode
Response for set immersion mode action.
The resulting immersion mode
Licence contract key string
Flag if custom license was successfully installed
(message has no fields)
Method to disable hashboards
Save action
IDs of HB that should be disabled
Hashboards disable state
Method to enable hashboards
Save action
IDs of HB that should be enabled
Hashboards enable state
Method to get miner errors
(message has no fields)
Array of errors
Method to get miner hashboards state and statistics.
(message has no fields)
All HB details
Method to download miner log file Method returns stream of messages with binary chunks that needs to be concatenated on the caller side
Type of log to download
Log data chunk
Method to get miner details.
(message has no fields)
Structure to handle system details
Miner ID
Miner identity
Miner platform
BOS Mode
OS Version
Hostname
MAC address
Deprecated: Use system_uptime_s
Miner hashrate declared by manufacturer
Bosminer uptime. `0` means bosminer is not running
System uptime
Miner status
Kernel version
PSU details
Control board soc family
Miner serial number
Whether the miner has a PIC (Programmable Interrupt Controller) board
Method to get aggregated miner stats.
(message has no fields)
Aggregate pool statistic
Miner hashrate statistics
Miner power stats
Method to fetch miner status
(message has no fields)
Method to download BOS support archive Method returns stream of messages with binary chunks that needs to be concatenated on the caller side
Support archive format.
Support archive data
Method to get network configuration
(message has no fields)
Method to get current network configuration for the default network interface
(message has no fields)
Response message for GetCurrentNetworkConfiguration Represents the current network configuration for the default network interface. Only IPv4 is supported.
Name of the network interface
MAC address of the network interface
Miner hostname
Network protocol
List of configured DNS servers
List of assigned IP addresses
Default gateway/route for the interface
Method to set network configuration. You can specify protocol or hostname, or both.
Network protocol. Existing value will be preserved if this field is not set.
Hostname. Existing value will be preserved if this field is not set.
Method to decrement hashrate target for tuner
Request for decrement hashrate target action.
Save action
Decremental value of hashrate target
Method to decrement power target for tuner
Request for decrement power target action.
Save action
Decremental value of power target
Method to read active(runtime) performance mode
(message has no fields)
Method to get the miner efficiency profile
(message has no fields)
Miner efficiency profile curve
Efficiency curve points ordered by ascending power target. The number of points varies by miner model (typically 6 to 20 points).
Method to get the current tuner details
Request for getting the current performance data
(message has no fields)
Response with the current tuner details
Tuner state
Method to increment hashrate target for tuner
Request for increment hashrate target action.
Save action
Incremental value of hashrate target
Method to increment power target for tuner
Request for increment power target action.
Save action
Incremental value of power target
Method to get the current tuner details
(message has no fields)
Tuner profiles for power target mode
Method to remove tuned profiles
(message has no fields)
(message has no fields)
Method to set Dynamic Performance Scaling
Save action
Flag if Dynamic Performance Scaling should be enabled
Flag if shutdown for Dynamic Performance Scaling should be enabled
Dynamic Performance Scaling shutdown duration
Dynamic Performance Scaling target
Dynamic Performance Scaling mode
Initial target for Dynamic Performance Scaling in percent
Flag if Dynamic Performance Scaling is enabled
Flag if shutdown for Dynamic Performance Scaling should be enabled
Dynamic Performance Scaling shutdown duration
Dynamic Performance Scaling Power target
Dynamic Performance Scaling hashrate target
Dynamic Performance Scaling mode
Initial target for Dynamic Performance Scaling in percent
Method to set default hashrate target for tuner
Request for set default hashrate target action.
Save action
Method to set default power target for tuner
Request for set default power target action.
Save action
Method to set default quick ramping (used in curtailments)
Save action
Method to set absolute hashrate target for tuner
Request for set absolute hashrate target action.
Save action
Absolute value of hashrate target
Method to set performance mode
Save action
Method to set absolute power target for tuner
Request for set absolute power target action.
Save action
Absolute value of power target
Method to set quick ramping (used in curtailments)
Save action
Quick ramping time up in seconds when RESUMING the miner. Sets how fast the miner will power up. Used in curtailments
Quick ramping time down in seconds when PAUSING the miner. Sets how fast the miner will power off. Used in curtailments
Method to set hashrate target relative to a reference value
Method to set power target relative to a reference value
Method to create pool group
Request for pool group create action group.uid must not be specified (it will be generated) group.pools[].uid must not be specified (it will be generated)
Save action
Group configuration
Response for pool group create action
Group configuration
Read method to get current pool groups data
Request to get pool groups data
(message has no fields)
Response on getting pool group data
All pool groups details
Method to remove pool group
Request for pool group remove action
Save action
Group id
Response for pool group remove action
(message has no fields)
Method to set pool groups. Existing pool groups will be completely replaced with new groups.
Request for setting pool groups
Save action SAVE just update config but changes will not be applied SAVE_AND_APPLY and SAVE_AND_FORCE_APPLY are equal for this method. Pools config will be updated and changes will be applied that will trigger restart.
Pool groups configuration `uid` must not be specified (it will be generated)
Response on setting pool groups
Configured pool groups
Method to update pool group
Request for pool group update action group.uid must be specified and represents unique id of group which will be updated group.pools[].uid must not be specified (it will be generated)
Save action
New group configuration
Response for pool group update action
Group configuration
Returns the current AutoUpgrade configuration and status
(message has no fields)
Method to restore stock firmware
(message has no fields)
Flag if restore of stock was successfully started
Method to upgrade miner
First message of the stream has to be `metadata` Additional messages of the stream have to be `data`
System upgrade metadata
Firmware
Flag if system upgrade was successfully started
Allows en/disabling of AutoUpgrade feature
Automatic pause mode starts with fans going with last fan speed used for mining and slowly decreases speed down to 0%
Used in:
(message has no fields)
Used in: ,
Structure representing Basis Points
Used in: ,
A basis point is one hundredth of 1 percentage point. For example: 1bps = 0.01%, 250bps = 2.5%
Used in: , ,
BOS modes enumeration
Used in:
Structure to handle BOS version
Used in:
Used in:
Control board soc family “CVITEK”, “BBB”, “AML”, “ZYNQ”, "BRAIINS"
Used in:
The temperature control modes. Miner software tries to regulate the fan speed so that miner temperature is approximately at the target temperature. The allowed temperature range is 0-200 degree Celsius.
Used in: , ,
Temperature that the miner will try to maintain
Temperature threshold at which the fans start to run at 100%.
Temperature threshold at which BOSMiner shuts down in order to prevent overheating and damaging the miner.
Minimum fan speed expressed as a value between 0 and 100. min_fan_speed must be less than max_fan_speed.
Maximum fan speed expressed as a value between 0 and 100. max_fan_speed must be greater than min_fan_speed.
Minimum number of fans required to have BOSminer operational.
Pause mode used for fans when the miner is paused
Used in:
Minimum number of fans required to have BOSminer operational.
Used in:
Disable temperature control. May be dangerous. DEPRECATED: Since Braiins OS 24.XX it is not possible to disable cooling mode.
Used in:
User defined fan speed expressed as a ratio between 0.0 and 1.0 where 0.0 means completely turned off and 1.0 means running at full speed possible
Used in: , ,
Used in: , ,
Fans are kept at a fixed, user-defined speed, no matter the temperature.
Used in: , ,
User defined fan speed expressed as a ratio between 0.0 and 1.0 where 0.0 means completely turned off and 1.0 means running at full speed possible
Temperature threshold at which the fans start to run at 100%.
Temperature threshold at which BOSMiner shuts down in order to prevent overheating and damaging the miner.
Temperature that the miner will try to maintain when power scaling is enabled
Minimum number of fans required to have BOSminer operational.
Pause mode
Used in:
Used in:
Flag if Dynamic Performance Scaling is enabled
Dynamic Performance Scaling power step
Dynamic Performance Scaling hashrate step
Dynamic Performance Scaling minimal power target
Dynamic Performance Scaling minimal hashrate target
Flag if shutdown for Dynamic Performance Scaling is enabled
Dynamic Performance Scaling shutdown duration
Dynamic Performance Scaling mode
Initial target for Dynamic Performance Scaling in percent
Used in:
Dynamic Performance Scaling power step constraints
Dynamic Performance Scaling hashrate step constraints
Dynamic Performance Scaling minimal power target constraints
Dynamic Performance Scaling minimal hashrate target constraints
Dynamic Performance Scaling enabled shutdown default value
Dynamic Performance Scaling shutdown duration constraints
Dynamic Performance Scaling enabled default value
Dynamic Performance Scaling default mode
Initial target for Dynamic Performance Scaling in percent
Used in: ,
Dynamic Performance Scaling hashrate step
Dynamic Performance Scaling minimal hashrate target
Used in: , , ,
Used in: ,
Dynamic Performance Scaling power step
Dynamic Performance Scaling minimal power target
Used in:
Power target settings for Dynamic Performance Scaling
Hashrate target settings for Dynamic Performance Scaling
Used in:
Represents a day of the week.
Used in:
The day of the week is unspecified.
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
Used in: ,
(message has no fields)
Used in:
Used in:
Used in:
Used in:
License type
Contract name
Defines how much DevFee should be generated by the device.
Used in:
Used in: ,
Structure which contain info about one specific miner fan.
Used in:
Fan positions/ID
Actual fan RPM (Revolutions/Rotation Per Minute)
Actual fan speed ratio(PWM) in range 0.0 - 1.0
Structure for fixed share ratio load balance strategy Fixed share ratio is value between 0.0 to 1.0 where 1.0 represents that all work is generated from the group
Used in: ,
Used in: , , , , , ,
Used in:
Used in: , , , ,
Structure to handle HB details
Used in:
Hashboard ID
Flag if HB is enabled
Number of chips
Current HB voltage in volts
Current HB frequency in Hz
Highest chip temperature
Board temperature
Hashboard stats
Hashboard model
Lowest inlet temperature
Highest outlet temperature
Hashboard serial number
Hashboard board name
Hashboard chip type
Lowest water inlet temperature (hydro cooling only)
Highest water outlet temperature (hydro cooling only)
Used in:
Hashboard id
Flag if HB si enabled
Hashboard frequency
Hashboard voltage
Used in:
List of possible HB indices
Default value for flag if hashboards are enabled
HB frequency constraints
HB frequency constraints
Quick ramping time constraints in seconds. Used in curtailments
Used in: ,
Hashboard ID
Flag if hashboard is enabled or not
Used in:
Common frequency for all HB
Common voltage for all HB
Per hashboard frequency/voltage. It has higher priority than global one
Quick ramping time up in seconds. Used in curtailments
Quick ramping time down in seconds. Used in curtailments
Used in:
Hashboard id
Hashboard frequency
Hashboard voltage
Used in: ,
Used in:
Hashrate target
Used in:
Currently used profile
Current hashrate target
Structure to handle hashrate target profile
Used in: ,
Creation timestamp
Tuned hashrate target
Measured hashrate
Estimated power consumption
Used in: , , ,
Used in:
Used in: ,
Used in:
(message has no fields)
Response with locate device status
Used as response type in: ActionsService.GetLocateDeviceStatus, ActionsService.SetLocateDeviceStatus
Supported log types for download
Used in:
Bosminer error logs
Bosminer logs
Boser logs
Monitor logs
System logs
Kernel ring buffer (dmesg)
Manual pause mode runs with defined fixed fans speed and either turns off after a certain period of time or runs indefinitely according to fan_runtime settings
Used in:
User defined pause cooldown fan speed expressed as a ratio between 0.0 and 1.0 where 0.0 means completely turned off and 1.0 means running at full speed possible
Controls how long fans run at the fixed speed before turning off.<br> 1 = FAN_PAUSE_RUNTIME_LIMITED - fans run for a limited duration (see `fan_pause_runtime_limited_duration_s` in `CoolingConstraints`) then turn off<br> 2 = FAN_PAUSE_RUNTIME_INDEFINITE - fans run indefinitely at the fixed speed until miner is resumed
Used in:
Global hashboard frequency
Global hashboard voltage
Per hashboard frequency/voltage. It has higher priority than global one
Used in:
Used in:
Single point on the miner efficiency curve
Used in:
Number of tuned profiles used to interpolate the curve from
Power target
Estimated power consumption
Estimated fan speed expressed as a value between 0 and 100 (PWM)
Estimated outlet temperature
Estimated ambient temperature
Estimated hashrate
Estimated frequency
Estimated voltage
Used in:
Used in:
Deprecated: Use miner_model instead. This field is no longer supported.
Deprecated: This enumeration is not longer maintained
Used in:
Used in:
Miner approximated power consumption.
Miner power efficiency
Used in: ,
Used in:
Artificially limited to 1-28 to cover all months
Used in: ,
Network protocol
Hostname
Used in:
Used in:
BOS Initialization timeout - number of seconds elapsed since bosminer start i.e., number of seconds BOS will start mining in restricted mode burning 5% of hashrate For more, see Section 3.10 of https://braiins.com/os/plus/license
Pause mode to control fans behaviour after you pause the miner
Used in: ,
Used as response type in: PerformanceService.GetActivePerformanceMode, PerformanceService.SetPerformanceMode
Used as field type in:
Supported platforms
Used in:
Structure handle information about configured pool
Used in:
Pool connection id
Pool connection URL
Pool connection user
Flag if pool connection is enabled
Flag if pool is alive
Flag if pool is active (running)
Pool stats
Structure handle information about configured pool
Used in:
Pool connection id<br> If this struct is used when creating a new Pool Configuration, this field must not be specified (it will be generated)<br> If this struct is used when updating an existing configuration, this field must be specified and represents unique id of pool which will be updated
Pool connection URL
Pool connection user
Pool connection password if set
Flag if pool connection is enabled
Structure handle all pool group details
Used in:
Group name
Load balancing strategy
Group pools
Group id
Structure handle configured mining group
Used in: , , , , , ,
Group id<br> gRPC: If this struct is used when creating a new Pool Group, this field must not be specified (it will be generated)<br> gRPC: If this struct is used when updating an existing Pool Group, this field must be specified and represents unique id of Pool group which will be updated<br> REST: If this struct is used when creating a new Pool Group, this field must not be specified (it will be generated)<br> REST: If this struct is used when updating an existing Pool Group, this field must not be specified, uid in URL must be specified and represents unique id of Pool group which will be updated
Group name
Group load balance strategy
Group pools
Structure handle pool statistics
Used in: ,
Accepted shares
Rejected shares
Stale shares
Last difficulty
Best share (deprecated: may overflow for values > 2^64-1, use best_share_str instead)
Generated work
Last share time
Best share as decimal string
Used in: , , , , , , , , , , , , ,
Used in: ,
Used in:
Used in:
Power target
Used in:
current power target profile
Current power target
Structure to handle power target profile
Used in: ,
Creation timestamp
Tuned power target
Measured hashrate
Estimated power consumption
Used in:
PSU hardware version identifier
PSU firmware version identifier
PSU serial number (e.g. "DGAH335BDJDJG0782")
PSU model/version name in human-readable form (e.g. "APW121215b")
Minimal voltage that can be set in volts
Maximal voltage that can be set in volts
Used as response type in: PerformanceService.SetDefaultQuickRamping, PerformanceService.SetQuickRamping
Quick ramping time up in seconds when RESUMING the miner. Sets how fast the miner will power up. Used in curtailments
Quick ramping time down in seconds when PAUSING the miner. Sets how fast the miner will power off. Used in curtailments
Structure for quota load balance strategy
Used in: ,
Structure which contains HB real hashrate stats.
Used in:
Enum to specify the reference point for a relative power/hashrate target.
Used in:
Unspecified
Use nominal (sticker) power/hashrate target as the reference
Use minimal power/hashrate target as the reference
Use maximal power/hashrate target as the reference
Use current power/hashrate target as the reference
Save action for different operations
Used in: , , , , , , , , , , , , , , , , , , , ,
Used in:
Response for set hashrate target action.
Used as response type in: PerformanceService.DecrementHashrateTarget, PerformanceService.IncrementHashrateTarget, PerformanceService.SetDefaultHashrateTarget, PerformanceService.SetHashrateTarget, PerformanceService.SetRelativeHashrateTarget
New value of hashrate target
Response for set power target action.
Used as response type in: PerformanceService.DecrementPowerTarget, PerformanceService.IncrementPowerTarget, PerformanceService.SetDefaultPowerTarget, PerformanceService.SetPowerTarget, PerformanceService.SetRelativePowerTarget
New value of power target
Request for setting power/hashrate target relative to a reference value
Used as request type in: PerformanceService.SetRelativeHashrateTarget, PerformanceService.SetRelativePowerTarget
Save action
Percentage value to set (e.g., 85.5 for 85.5%)
Reference point from which the percentage is calculated
Used in: ,
IP address
Netmask
Gateway
DNS servers
Enumeration for support archive format
Used in:
Compressed zip format
BOS custom format
Compressed encrypted zip format
Used in:
Firmware size (bytes)
Firmware hash (SHA256 hex encoded)
Flag if should discard settings (default is false and keep settings)
Flag if should disable cleanup of directory, in which uploaded firmware is stored (default is false and do cleanup)
Used in: , , , , , , ,
Used in:
Used in: ,
Sensor id
Sensor location
Temperature
Used in: , , , , , , , , , , ,
Used in:
Flag if tuner is enabled
Tuner mode
Tuner power target
Tuner hashrate target
Used in:
Tuner power target mode constraints
Tuner hashrate target mode constraints
Tuner enabled enabled default value
Default tuner mode
Used in: ,
Used in:
Tuner power target
Tuner hashrate target
Used in:
Used in: , ,
Used in: , ,
Hours of day in 24 hour format. Must be from 0 to 23.
Minutes of hour of day. Must be from 0 to 59.
Seconds of minutes of the time. Can be from 0 to 59.
Used in:
License type
Contract name
Current license expiration - number of seconds since the moment the license was received i.e., number of seconds BOS will start mining in restricted mode burning 15% of hashrate
Defines how much DevFee should be generated by the device.
Used in: , , , , , , ,
Used in:
Used in:
Structure to handle HB state
Used in: ,
Real hashrate
Nominal hashrate
Error hashrate
Found blocks
Best share (deprecated: may overflow for values > 2^64-1, use best_share_str instead)
Best share as decimal string