Firmware for BTClock which uses WebSockets to fetch data.
Find a file
2024-12-19 13:54:28 -06:00
.forgejo/workflows Fix LittleFS sha256 generation 2024-12-18 22:52:50 +01:00
.github Fix matrix expansion 2024-09-21 18:40:44 +02:00
.vscode Fix refactored GitHub workflow 2023-11-30 21:57:01 +01:00
boards Fix merged binary for v8 2024-09-21 18:25:13 +02:00
ci Use CA bundle instead of single certificates, make auto update URL configurable 2024-11-25 23:54:02 +01:00
data@85b9b17506 Add bitaxe logo to WebUI 2024-12-18 01:32:11 +01:00
include Initial commit 2023-11-06 20:16:07 +01:00
lib Add mining pool daily/expected earnings 2024-12-18 21:17:19 -06:00
scripts Fix preaction script 2024-12-18 20:41:42 +01:00
src Removed pool name consts; reduce Preferences hits 2024-12-19 13:54:28 -06:00
test Adapted tests for Mow Units 2024-12-10 15:18:04 +01:00
.gitignore Use CA bundle instead of single certificates, make auto update URL configurable 2024-11-25 23:54:02 +01:00
.gitmodules Restoring .gitmodule link to main webui repo 2024-12-18 21:17:19 -06:00
CMakeLists.txt More LittleFS fixes 2024-03-18 20:28:41 +01:00
dependencies.lock Add suffix compact mode, added extra zap notify settings, WebUI cleanup 2024-11-28 18:22:07 +01:00
LICENSE.txt Added license and readme 2023-11-10 23:33:24 +01:00
maintainers.yaml Bugfix for suffix compact mode 2024-12-05 04:32:32 +01:00
partition.csv Switch to leaner MCP23017 library, create new aligned partition tables 2024-12-18 19:47:03 +01:00
partition_8mb.csv Remove whitespace 2024-12-18 21:34:52 -06:00
partition_16mb.csv Switch to leaner MCP23017 library, create new aligned partition tables 2024-12-18 19:47:03 +01:00
platformio.ini Remove platformio edit 2024-12-18 21:31:05 -06:00
README.md README update 2024-12-18 21:17:19 -06:00
requirements.txt Add requirements.txt for CI 2024-11-27 11:41:58 +01:00
sdkconfig.defaults Bugfixes for stack size and market cap with small chars, write tests for the small char mcap 2024-09-28 00:03:18 +02:00
x509_crt_bundle Use CA bundle instead of single certificates, make auto update URL configurable 2024-11-25 23:54:02 +01:00

BTClock v3

Latest release

BTClock CI

Software for the BTClock project.

Biggest differences with v2 are:

  • Uses WebSockets for all data
  • Built on the ESP-IDF with Arduino as a library
  • Makes better use of native timers and interrupts
  • Able to be flashed over-the-air (using ESP OTA)
  • Added market capitalization screen
  • LED flash on new block (and focus to block height screen on new block)

New features:

  • BitAxe integration
  • Zap notifier
  • Braiins Pool and Ocean mining stats integration

"Steal focus on new block" means that when a new block is mined, the display will switch to the block height screen if it's not on it already.

Most information about BTClock v2 is still valid for this version.

NOTE: The software assumes that the hardware is run in a controlled private network. The Web UI and the OTA update mechanism are not password protected and accessible to anyone in the network. Also, since the device only fetches numbers through WebSockets it will skip server certificate verification to save resources. Since 3.2.0 the WebUI is password protectable and all certificates are verified. OTA update mechanism is not password-protected.

Building

Use PlatformIO to build it yourself. Make sure you fetch the WebUI submodule.

Braiins Pool and Ocean integration

Enable mining pool stats by accessing your btclock's web UI (point a web browser at the device's IP address).

Under Settings -> Extra Features: toggle Enable Mining Pool Stats.

New options will appear. Select your mining pool and enter your pool username (Ocean) or api key (Braiins).

The Mining Pool Earnings screen displays:

  • Braiins: Today's mining reward thus far
  • Ocean: Your estimated earnings if the pool were to find a block right now

Braiins Pool integration

Create an API key based on the steps here.

The key's permissions should be:

  • Web Access: no
  • API Access: yes
  • Access Permissions: Read-only

Copy the token that is created for the new key. Enter this as your "Mining Pool username or api key" in the btclock web UI.

Ocean integration

Your "Mining Pool username" is just the onchain withdrawal address that you specify when pointing your miners at Ocean.