Community update on the bug fixes, user experience improvements, and new features included in our latest Braiins OS release.
Since the launch, there has been a huge amount of feedback from miners, both happy testimonials and pain points to work on. We want to keep the community informed about how we will address this feedback as we continue to make Braiins OS better, so we will now begin publishing regular development updates.
In each update, we’ll tell you what’s changed from the previous releases and what our development team is currently working on. This update will be focused on our latest release, Braiins OS and Braiins OS+ 20.04. As always, you can send us your feedback either in our telegram group or via a support ticket.
Before we get into details of the firmware update, a couple of important public service announcements.
Short answer: yes.
One potentially confusing thing that we want to clarify for developers who are interested in building our code from sources is that we run the synthesis of the FPGA firmware components manually and commit the results into the binary repository in order to make our build process more efficient. Anybody who doesn’t mind the timely synthesis process can build absolutely everything from sources themselves by following our FPGA documentation which contains run.sh in the design folder to run the synthesis.
If you are a novice developer or otherwise need further assistance with building Braiins OS fully from sources, please open a support ticket and we can help.
There has also been some discussion recently amongst miners about GPL compliance when it comes to CGminer. We want to be clear about how this applies to Braiins OS.
Up until our latest major release (March 2020), Braiins OS was built on top of CGminer, which was using Bitmain’s FPGA code as a backend. This component from Bitmain was closed. We built BOSminer from scratch to replace CGminer in order to make everything open-source, including replacing the previously closed FPGA IP core with our own open core.
In other words, the above paragraph simply means that Braiins OS users do not need to worry about this GPL matter because we are not using CGminer or Bitmain’s FPGA IP core.
Additionally, it should be noted that we own the IP for BOSminer and we have a contributor license agreement in place for it. Braiins OS is released free of charge under the GNU GPLv3, while Braiins OS+ has its own software license agreement. We reserve the right to use this software however we see fit, including providing commercial licensing to individuals should they be interested. If any hardware manufacturers want to implement BOSminer, we will be happy to accept their commits to the public repository and keep this open standard for the mining community through the contributor license agreement.
We are focused on continuing to develop our products and supporting our users as best as we can. What others in the industry do in regards to this matter is up to them.
We’d like to thank everybody who has tested Braiins OS and Braiins OS+ and provided feedback. The response from the community is greatly appreciated! What follows is a breakdown of what we’ve done to address the most prominent feedback.
Full description: The installation and uninstallation processes were not as easy as they could be, and we don’t have detailed troubleshooting guides or instructional videos published yet.
We have taken several steps to improve this experience for users. There’s now a new SD card image which will copy all current configuration parameters automatically (i.e. no IP changes, same pool settings, etc.). Additionally, we have built a new web package image which can be used on pre-2019 stock firmwares to install Braiins OS via web interface. The SSH installation script (upgrade2bos.py) has also been enhanced to copy current configuration parameters and allow you to edit them during the install process, while the downgrade to stock (restore2factory.py) process has been enhanced as well. Finally, we’ve created a new tool called BOS toolbox which is a batch configuration script that allows multiple devices to more easily be configured simultaneously.
Note that we are still planning to create install videos and troubleshooting guides, but this has been delayed until the quarantine is over and we can meet to work on everything together.
Full description: There is a bug in the code that handles I2C communication with temperature sensors and shuts down miners in case of erroneous temperature readings. This is only happening on a few machines, but it is a critical bug because it is causing extra downtime whenever it occurs.
We discovered that this was an issue with the Xilinx I2C controller core that we have integrated into the FPGA bitstream. We’ve switched to the I2C present in the SoC and the bitstream only routes the signal of the peripheral (IIC0) to corresponding FPGA pins. In other words, this issue should no longer occur with the latest release.
Full description: BOSminer would sometimes crash when the maximum voltage (at 850 MHz) had been reached during the autotuning process. The autotuner would also stop operating when the minimum and maximum frequencies were reached. This has been fixed and the searchable frequency range has been expanded to 155 MHz as a minimum for low power mode and 950 MHz for overclocking.
Full description: The reported rejection rate in the GUI was multiplied by 100, making it appear to be critically high until the miner looks at the actual rejected share amount compared to the total submission amount and realizes that the percentage is reported incorrectly. This has been fixed.
[NEW] Make autotuning status clear in the GUI and available through the API.
Full description: In the initial release, users had to look for the word “TUNE” in their logs to see clearly whether the tuning is finished or still in progress. Many users have requested that we add a tuning indicator to the GUI so that it is obvious when the tuning is ongoing, and we have done so in the latest release. Additionally, the TUNERSTATUS API command has been implemented which provides details about the tuning stage, duration, estimated power consumption, etc.
Full description: Without a minimum frequency constraint, the autotuning process may search for optimal performance in a frequency range that cannot be used to hash effectively. Setting an absolute minimum frequency (which we’ve done at F155 MHz) will prevent the autotuning process from wasting time in this ineffective lower range.
Full description: Releasing “nightly” builds in between major releases makes bug fixes and new features available to the community faster. Our first nightly build was released on April 14th, and we will continue publishing them regularly going forward, (although it’s not actually every night). It should be noted that nightly builds have limited test coverage, so we advise miners to only update a few devices at first to test before rolling it out to a higher number of units. You can select whether or not you want to use the nightly builds in the BOSminer configuration.
Full description: We now have Braiins OS telegram groups for Spanish, Russian, and Chinese. Feel free to provide feedback and ask questions in whichever language you are most comfortable. You can find the links to every language community in the pinned message of the main group: https://t.me/BraiinsOS.
Please note that the above does not include ALL feedback we’ve collected, but it is an overview of the highest priority tasks. In other words, don’t worry if you don’t see something you’ve discussed with us on this list. The full changelog can be found here.
One feature request that we haven't implemented yet is saving autotuning results when devices power off or reboot. This is one of our highest priorities for the next nightly build.
With the halving now just a couple of weeks away, we will turn more attention towards supporting the newer generation hardware such as the S17, T17, and M20s. However, this doesn’t mean that we will stop improving the S9 firmware, as those improvements will translate forward to the new hardware as well.
We currently have Braiins OS with BOSminer running on an S17, but there is still a lot to do in order to make it enterprise-ready. There is no ETA yet for new-gen support, but you can sign up to get notified when we make a release.
Bitcoin mining software stack company: Slush Pool, Braiins OS+ & Stratum V2.
By miners, for miners.
Industry leaders in transparency and innovation, with more than 1.25 million BTC mined since 2010.
Increase hashrate on S9s to 17+ TH/s, improve efficiency as much as 20%, and get 50% lower pool fees on Slush Pool
Cutting-edge firmware with an implementation of Stratum V2 and mining software written from scratch in Rust language.
Quality improvements including reduced data loads, empty block elimination, hashrate hijacking prevention, and more.