Contact Sales

What's new

 1.14.0

Version 1.14.0 introduces detailed miner status & an option to keep existing licenses when applying a contract key

Added

  • Introduced new server-streaming method GetMinerDetailedStatus in the braiins.bos.v1.MinerService to read detailed miner status
  • Introduced new messages braiins.bos.v1.GetMinerDetailedStatusRequest and braiins.bos.v1.GetMinerDetailedStatusResponse. The response wraps braiins.bos.v1.MinerDetailedStatus
  • Introduced new message braiins.bos.v1.MinerDetailedStatus with a status oneof that tells the user the miner state and the reason for it
  • Introduced new field detailed_status in the braiins.bos.v1.GetMinerDetailsResponse message
  • Introduced new messages used by the status oneof: ExpectedTime, Unspecified, ApplicationUnavailable, UnsupportedHardware, DeadPools, MissingLicense, UserPause, ThermalPause, DpsCooldown, TunerError, HardwareError, DelayedStart, CoolingDown, WaitingWhileCold, Defrosting, Normal and Preheating

  • Introduced new enumeration ThermalPauseReason
  • Introduced new optional field keep_existing in the braiins.bos.v1.ApplyContractKeyRequest message to keep the licenses that are already on the miner

Deprecated

  • Marked GetMinerStatus method as deprecated in MinerService. Instead of this method, the user should use GetMinerDetailedStatus
  • Marked status field as deprecated in the GetMinerDetailsResponse message. Instead of this field, the user should read detailed_status

 1.13.0

Version 1.13.0 introduces the option to wipe the network configuration during a factory reset.

Added

  • Introduced new optional field wipe_network in the braiins.bos.v1.FactoryResetRequest message. When set to true, the factory reset also clears the network configuration, so the miner comes back on DHCP with the stock hostname after the next boot. When omitted or set to false, the miner keeps its network configuration, as before.

 1.12.0

Version 1.12.0 introduces information about the PIC board.

Added

  • Introduced new field is_pic_model in the braiins.bos.v1.GetMinerDetailsResponse message to indicate whether the miner has a PIC (Programmable Interrupt Controller) board.

 1.11.0

Version 1.11.0 introduces the miner efficiency profile, hydro water temperatures and the new Advanced Settings service.

Added

  • Introduced new method GetMinerEfficiencyProfile in the braiins.bos.v1.PerformanceService. User can now retrieve the miner efficiency curve as an array of efficiency points ordered by power target.
  • Introduced new messages braiins.bos.v1.MinerEfficiencyPoint, braiins.bos.v1.GetMinerEfficiencyProfileRequest and braiins.bos.v1.GetMinerEfficiencyProfileResponse.
  • Introduced new fields lowest_water_inlet_temp and highest_water_outlet_temp in the braiins.bos.v1.Hashboard message to get lowest water inlet and highest outlet temperatures per hashboard for hydro miners.
  • Introduced new braiins.bos.v1.AdvancedSettingsService to turn on experimental bosminer features and change advanced system settings. Methods added:

    • GetSettings - returns settings with their current values. By default it returns only the settings the user has configured; set include_default to also get the ones still on their default value.
    • SetSettings - updates one or more settings in a single call. A null value clears a setting and restores its default. If any setting fails validation, the miner rejects the whole request with a standard gRPC error and changes nothing. On success, the response echoes back the applied settings, with null for the settings that were cleared.
    • GetSettingsSchema - returns a JSON Schema that describes all available settings with their types, constraints, metadata and default values.
    • ResetAllSettings - resets all settings to their default values and returns the effective values of all supported settings after the reset.

Changed

  • Extended braiins.bos.v1.TunerState enumeration with TUNER_STATE_PREHEAT variant.

 1.10.0

Version 1.10.0 introduces system upgrade over the API, log download and overflow-safe best share values.

Added

  • Introduced new field best_share_str in braiins.bos.v1.WorkSolverStats and braiins.bos.v1.PoolStats messages with the best share value as a decimal string, which can hold values larger than 2^64-1.
  • Introduced new method SystemUpgrade in the braiins.bos.v1.UpgradeService. User can now upload firmware and run a system upgrade.
  • Introduced new method RestoreStock in the braiins.bos.v1.UpgradeService. User can now restore the stock firmware.
  • Introduced new braiins.bos.v1.LogType enumeration with log type variants for downloading miner logs.
  • Introduced new streaming method braiins.bos.v1.MinerService::GetLog() to download merged miner log files.

Changed

  • Deprecated field best_share in braiins.bos.v1.WorkSolverStats and braiins.bos.v1.PoolStats messages. Use best_share_str instead to avoid overflow for values exceeding 2^64-1.

 1.9.0

Version 1.9.0 introduces factory reset, DPS start target and fan pause runtime configuration.

Added

  • Introduced new field on_start_target_percent in the braiins.bos.v1.DPSConfiguration, braiins.bos.v1.DPSConstraints, braiins.bos.v1.SetDPSRequest and braiins.bos.v1.SetDPSResponse messages. User can now set the target that Dynamic Performance Scaling starts from.
  • Introduced new method braiins.bos.v1.ActionsService::FactoryReset() to perform a factory reset.
  • Introduced new enumeration braiins.bos.v1.FanPauseRuntime with FAN_PAUSE_RUNTIME_LIMITED and FAN_PAUSE_RUNTIME_INDEFINITE variants.
  • Introduced new field fan_pause_runtime in the braiins.bos.v1.ManualPauseMode message to configure fan runtime duration in manual pause mode.
  • Introduced new field default_fan_pause_runtime in the braiins.bos.v1.CoolingConstraints message to get default fan pause runtime.
  • Introduced new field fan_pause_runtime_limited_duration_s in the braiins.bos.v1.CoolingConstraints message to get fan pause runtime limited duration.

Changed

  • Extended braiins.bos.v1.TunerState enumeration with TUNER_STATE_CONTINUOUS variant.

 1.8.0

Version 1.8.0 introduces new Upgrade service braiins.bos.v1.UpgradeService and relative power/hashrate target configuration.

Added

  • Introduced new field uid in the braiins.bos.v1.PoolGroup message to get group uid.
  • Introduced new service braiins.bos.v1.UpgradeService with methods:

    • UpdateAutoUpgradeConfig - enables/disables AutoUpgrade and configures schedule -GetAutoUpgradeStatus - retrieves current AutoUpgrade configuration and execution status
  • Introduced new messages for AutoUpgrade scheduling:

    • units.DayOfWeek enum and custom upgrade.UpgradeTime message for schedule configuration
    • DailySchedule - schedule upgrades to run daily at a specific time
    • WeeklySchedule - schedule upgrades to run weekly on a specific day of the week at a specific time
    • MonthlySchedule - schedule upgrades to run monthly on a specific day of the month (1-28) at a specific time
    • AutoUpgradeSchedule - oneof message that can contain any of the schedule types
    • UpdateAutoUpgradeConfigRequest - request message to update AutoUpgrade configuration
    • UpdateAutoUpgradeConfigResponse - response message containing enabled status and next execution timestamp
    • GetAutoUpgradeStatusRequest - request message to get AutoUpgrade status
    • GetAutoUpgradeStatusResponse - response message containing enabled status, schedule, next execution, and last execution timestamps
  • Introduced new enumeration RelativeTargetReference with NOMINAL, MIN, MAX and CURRENT variants for relative target setting.
  • Introduced new message SetRelativeTargetRequest with save_action, percentage, and reference fields.
  • Introduced new methods SetRelativePowerTarget and SetRelativeHashrateTarget to allow setting power and hashrate targets relative to a reference value.

 1.7.0

Version 1.7.0 introduces changes to braiins.bos.v1.PoolGroupConfiguration and braiins.bos.v1.PoolConfiguration.

Added

  • Introduced new enumeration braiins.bos.v1.FanPauseMode with FAN_PAUSE_MODE_AUTO and FAN_PAUSE_MODE_MANUAL variants.

  • Introduced new field default_fan_pause_mode in the braiins.bos.v1.CoolingConstraints message to get default fan pause mode.

  • Introduced new messages braiins.bos.v1.SetQuickRampingRequest, braiins.bos.v1.QuickRampingResponse and braiins.bos.v1.SetDefaultQuickRampingRequest.

  • Introduced new method SetQuickRamping in the braiins.bos.v1.PerformanceService. User can now set quick ramping time up and down values.

  • Introduced new method SetDefaultQuickRamping in the braiins.bos.v1.PerformanceService. User can now set quick ramping time up and down to default.

  • Introduced new fields quick_ramping_time_up_s and quick_ramping_time_down_s in the braiins.bos.v1.HashboardPerformanceConfiguration message to get quick ramping time up and down values.

  • Introduced new field quick_ramping_time_s in the braiins.bos.v1.HashboardConstraints message to get quick ramping time constraints.

Changed

  • Mark uid for braiins.bos.v1.PoolGroupConfiguration and braiins.bos.v1.PoolConfiguration as optional. This change allows to create new pool group or pool without providing empty uid value. When new entity is created uid is generated automatically. When updating existing Pool Group with UpdatePoolGroup method, uid is required, otherwise error is returned back to the user.

 1.6.0

Version 1.6.0 introduces option to set a fans mode during the curtailment & apply the custom contract

Added

  • Introduced new messages PauseMode, AutoPauseMode and ManualPauseMode.
  • Introduced new field pause_mode in the braiins.bos.v1.CoolingAutoMode message to set and get pause cooldown fan speed for automatic cooling mode
  • Introduced new field pause_mode in the braiins.bos.v1.CoolingManualMode message to set and get pause cooldown fan speed for manual cooling mode
  • Introduced new field pause_cooldown_fan_speed_ratio in the braiins.bos.v1.CoolingConstraints message to get pause cooldown fan speed constraints
  • Introduced new method ApplyContractKey in the braiins.bos.v1.LicenseService. User can now apply contract key to miner and get license

 1.5.0

Version 1.5.0 introduces inlet & outlet temperatures and more hardware information

Added

  • Introduced new fields lowest_inlet_temp, highest_outlet_temp in the braiins.bos.v1.Hashboard message to get the lowest inlet and highest outlet temperature for a specific hashboard
  • Introduced new fields serial_number, board_name and chip_type in the braiins.bos.v1.Hashboard message
  • Introduced new PsuInfo message and added it to the braiins.bos.v1.GetMinerDetailsResponse message
  • Introduced new ControlBoardSocFamily enumeration and added it to the braiins.bos.v1.GetMinerDetailsResponse message
  • Introduced new field serial_number in the braiins.bos.v1.GetMinerDetailsResponse message

 1.4.0

Version 1.4.0 introduces DPS modes control, customizable min/max fan speed control & unified miners cooling methods

Added

  • Introduced new field mode in the braiins.bos.v1.DPSConfiguration, braiins.bos.v1.SetDPSRequest, braiins.bos.v1.SetDPSResponse message to get or set DPS mode

  • Introduced new field mode in the braiins.bos.v1.DPSConstraints message to get the default value for DPS mode

  • Introduced new method SetCoolingMode in the braiins.bos.v1.CoolingService. Users can now set cooling mode to automatic, manual, hydro or immersion. It gives the user the possibility to set specific temperature and fan settings for each mode

  • Introduced new field min_fan_speed in the braiins.bos.v1.CoolingAutoMode to set minimum fan speed for automatic cooling mode

  • Introduced new field max_fan_speed in the braiins.bos.v1.CoolingAutoMode to set maximum fan speed for automatic cooling mode

  • Introduced new field min_fan_speed in the braiins.bos.v1.CoolingConstraints to get default value for minimum fan speed for automatic cooling mode

  • Introduced new field max_fan_speed in the braiins.bos.v1.CoolingConstraints to get default value for maximum fan speed for automatic cooling mode

  • Introduced new field target_temperature in the braiins.bos.v1.CoolingManualMode to set target temperature for manual cooling mode

Changed

  • Marked SetImmersionMode method as deprecated in CoolingService. Instead of this method, the user should use SetCoolingMode with immersion mode
  • Marked disabled cooling mode as deprecated in CoolingConfiguration mode
  • Extended CoolingConfiguration mode with new value immersion that represents immersion cooling mode
  • Extended CoolingConfiguration mode with new value hydro that represents hydro cooling mode

 1.3.0

Version 1.3.0 introduces a few small improvements.

Changed

  • Extended braiins.bos.v1.Platform enumeration with PLATFORM_STM32MP157C_II2_BMM1 variant.
  • Extended braiins.bos.v1.SupportArchiveFormat enumeration with SUPPORT_ARCHIVE_FORMAT_ZIP_ENCRYPTED variant.

 1.2.0

Version 1.2.0 introduces the possibility to configure all pool groups at once and read Braiins OS errors.

API Enhancements

  • Introduced new method SetPoolGroups in the braiins.bos.v1.PoolService to set all Pool groups at once.
  • Introduced new method GetErrors in the braiins.bos.v1.MinerService to get all miner errors.
  • Introduced new field model in the braiins.bos.v1.Hashboard message that contains hashboard name.

 1.1.0

Version 1.1.0 introduces the ability to read network configuration, changes in authentication, and a few more updates.

API Enhancements

  • Introduced a new field last_share_time, in braiins.bos.v1.PoolStats that provides information about the last share time.
  • Introduced a new field token, in braiins.bos.v1.LoginResponse that provides the created authentication token, which was previously available only in the response header.
  • Introduced a new field timeout_s, in braiins.bos.v1.LoginResponse that provides information about the authentication token expiration time.
  • Introduced a new method GetNetworkInfo, in braiins.bos.v1.NetworkService to retrieve the current network configuration for the default network interface.
  • Introduced a new field kernel_version, in braiins.bos.v1.GetMinerDetailsResponse that provides information about the kernel version.

 1.0.0

The first stable release of the Public API incorporates minor enhancements.

API Enhancements

  • Introduced new field enabled in the braiins.bos.v1.DPSConfiguration that provides info, if DPS is enabled by default or not.
  • Introduced new field enabled in the braiins.bos.v1.TunerConstraints that provides info, if DPS is enabled by default or not.
  • Introduced new field default_mode in the braiins.bos.v1.TunerConstraints that provides info about the default tuner mode.
  • Introduced new field status in the braiins.bos.v1.GetMinerDetailsResponse that provides info about the current miner status.

 1.0.0-beta.6

Version 1.0.0-beta.6 contains one new feature: Network configuration.

Network Service Configuration

  • New braiins.bos.v1.NetworkService with GetNetworkConfiguration and SetNetworkConfiguration methods

 1.0.0-beta.5

Version 1.0.0-beta.5 contains one small extension.

Platform Enumeration Extension

  • Extension of the braiins.bos.v1.Platform enumeration with new value for Zynq.

 1.0.0-beta.4

Version 1.0.0-beta.4 contains one new feature and one breaking change.

Updates and Reversions

  • We added option to clean tuner profiles by adding braiins.bos.v1.PerformanceService::RemoveTunedProfiles
  • Introduced a new field system_uptime_s in the braiins.bos.v1.GetMinerDetailsResponse that replaces system_uptime (marked as deprecated) to keep the best practice that a field name should also describe the unit (when applicable).
  • We reverted removing braiins.bos.v1.MinerModel enumeration from the previous release because this change was causing troubles to our users. Instead of dropping enumeration, we decided to mark it as deprecated and introduce new field miner_model for string representation.

 1.0.0-beta.3

Version 1.0.0-beta.3 contains a few minor improvements.

Minor Improvements and Removals

  • Extension of the braiins.bos.v1.GetMinerDetailsResponse message with bosminer_uptime_s field that contains bosminer uptime.
  • We removed braiins.bos.v1.MinerModel enumeration and changed type of model field in braiins.bos.v1.MinerIdentity to string. Replacing model enumeration with string eliminates the need to release a new version every time we add support for new model.

 1.0.0-beta.2

Version 1.0.0-beta.2 extends performance management and Pool Group management possibilities. It also introduces an API to get Mining Status.

Performance and Pool Management Enhancements

  • Introduction of a new braiins.bos.v1.PerformanceService::SetDefaultHashrateTarget() method that allows the user to set the currently configured hashrate target value to default one.
  • Dynamic Performance Scaling with new braiins.bos.v1.PerformanceService::SetDPS() method to configure dynamic performance scaling.
  • Evolved Pool Group Management with new braiins.bos.v1.PoolService::CreatePoolGroup() and braiins.bos.v1.PoolService::RemovePoolGroup() methods to allow addition and removal of pool groups.
  • Introduction of Mining Status with a new braiins.bos.v1.MinerService::GetMinerStatus() method streaming actual miner status.

 1.0.0-beta.1

The latest release, version 1.0.0-beta.1, enhances the authentication functionalities while also introducing two new features: Device Location and Support Archive.

Enhanced Authentication and New Features

  • Introduction of a new braiins.bos.v1.AuthenticationService::SetPassword() method that allows the user to set a new password on the miner.
  • Device Location functionality with braiins.bos.v1.ActionsService::SetLocateDeviceStatus() and braiins.bos.v1.ActionsService::GetLocateDeviceStatus() methods to turn on/off device location function.
  • Support Archive feature with a new braiins.bos.v1.MinerService::GetSupportArchive() streaming method that allows to download BOS support archive.

 1.0.0-beta

The latest release, version 1.0.0-beta, introduces a significant addition: the all-new BOS License feature.

New Licensing Features

  • Introduction of a new braiins.bos.v1.LicenseService::GetLicenseState() streaming method to fetch BOS License state.

 1.0.0-alpha.1

New version 1.0.0-alpha.1 extends authentication options and introduces new features, Locate Device and Support Archive.

Extended Authentication and New Functionalities

  • Introduction of new braiins.bos.v1.AuthenticationService::SetPassword() method that allows user to set a new password on the miner.
  • Locate Device feature with new braiins.bos.v1.ActionsService::SetLocateDeviceStatus() and braiins.bos.v1.ActionsService::GetLocateDeviceStatus() methods to turn on/off a LED on the device.
  • Support Archive with a new braiins.bos.v1.MinerService::GetSupportArchive() streaming method that allows downloading a BOS support archive.

 1.0.0-alpha

The first release for the new Braiins OS Public API, which introduces the first batch of features.

Initial API Features Introduction

  • With ActionService, user can start/stop/restart/pause/resume mining (BOS). Reboot of the whole miner is supported as well.
  • With ConfigurationService methods, user can read current miner configuration and configuration constraints.
  • With CoolingService methods, user can read current state of fans or current temperatures, or configure immersion mode.
  • With MinerService methods, user can read miner HW details, overall miner or hashboards statistics.
  • With PoolService methods, user can read all currently used pool groups, as well as update a specific pool group.
  • With TunerService methods, user can read current tuner state and configure tuner power target.
  • Overall to use gRPC API, user must be authenticated. For this purpose, AuthenticationService with Login method is present.

Was this helpful?