Documentation
Complete guides for setting up and using your HashedMax devices
Initial Setup
Follow these steps to get your HashedMax device up and running:
Flash the Firmware
Download the appropriate firmware from the Downloads page and flash it to your device using the web flasher or PlatformIO.
Connect to WiFi Setup
On first boot, the device creates a WiFi access point named HashedMax-Setup. Connect to it with your phone or computer.
Configure Your Network
Open a browser and go to 192.168.4.1. Enter your WiFi credentials and save.
Access the Web Portal
After connecting to your network, find the device's IP address on the display and open it in a browser to access the full web portal.
WiFi Configuration
The HashedMax uses the WiFiManager library for easy network setup.
📶 Resetting WiFi Settings
To reset WiFi settings and enter setup mode again, hold the BOOT button for 5 seconds while the device is running, or reflash the firmware.
Supported Networks
- 2.4 GHz WiFi networks (5 GHz not supported by ESP32)
- WPA/WPA2 security
- Hidden networks (enter SSID manually)
Pool Settings
Configure your mining pool through the web portal. The device supports any Stratum V1 compatible pool.
Recommended Pools
| Pool | URL | Port | Notes |
|---|---|---|---|
| Public Pool | public-pool.io | 21496 | Low diff, solo mining |
| CK Pool Solo | solo.ckpool.org | 3333 | True solo mining |
| NerdMiner Pool | nerdminer.io | 3333 | Community pool |
⚠️ Worker Name
Use your Bitcoin address as the worker name for solo pools. Any shares found will be credited directly to your wallet.
Wiring Guides
Detailed wiring instructions for building your HashedMax devices.
HashedMax Nano Wiring
The Nano uses a single ESP32-S3 with a TFT display.
Required Components
- 1x ESP32-S3 DevKitC (N16R8 recommended)
- 1x 3.5" ILI9488 TFT Display (480x320, SPI)
- 1x 5V 2A USB-C power supply
- 1x Momentary push button (optional, for reset)
Display Connections (SPI)
| Display Pin | ESP32-S3 Pin | Function |
|---|---|---|
| VCC | 3.3V | Power |
| GND | GND | Ground |
| CS | GPIO 10 | Chip Select |
| RESET | GPIO 4 | Reset |
| DC/RS | GPIO 2 | Data/Command |
| SDI/MOSI | GPIO 11 | SPI Data In |
| SCK | GPIO 12 | SPI Clock |
| LED/BL | GPIO 3 | Backlight |
| SDO/MISO | GPIO 13 | SPI Data Out |
HashedMax Nano Supreme Wiring
The Nano Supreme uses an ESP32-S3 master with multiple ESP32-D0 slaves connected via I2C.
Required Components
- 1x ESP32-S3 DevKitC (Master)
- 1-3x ESP32-D0 DevKit (Slaves)
- 1x 3.5" ILI9488 TFT Display
- 1x 5V 6A Power Supply with barrel jack
- 2x 4.7kΩ resistors (I2C pull-ups)
- Decoupling capacitors (100µF for power rails)
I2C Bus Connections
| Signal | ESP32-S3 (Master) | ESP32-D0 (Slave) |
|---|---|---|
| SDA | GPIO 8 | GPIO 21 |
| SCL | GPIO 9 | GPIO 22 |
| GND | GND | GND |
📌 I2C Pull-up Resistors
Connect 4.7kΩ resistors between SDA→3.3V and SCL→3.3V. Only one set is needed for the entire I2C bus.
Slave Setup (ESP32-D0)
Each slave needs a unique I2C address configured before flashing.
I2C Address Configuration
| Slave | I2C Address | platformio.ini Flag |
|---|---|---|
| Slave #0 | 0x40 | -DI2C_SLAVE_ADDR=0x40 |
| Slave #1 | 0x41 | -DI2C_SLAVE_ADDR=0x41 |
| Slave #2 | 0x42 | -DI2C_SLAVE_ADDR=0x42 |
Flashing Multiple Slaves
- Edit
platformio.inito set the correct I2C address - Connect the first slave via USB
- Flash with
pio run -t upload - Repeat for each additional slave, changing the address each time
Using the Web Portal
The web portal provides real-time monitoring and configuration of your miner.
Accessing the Portal
Find your device's IP address on the display, then open it in any web browser on the same network.
Portal Features
- Dashboard: Real-time hashrate, shares, and uptime
- Configuration: Pool settings, WiFi, and device options
- Logs: View mining activity and errors
- OTA Update: Update firmware over WiFi
Understanding Stats
Hashrate
Displayed in kH/s (kilohashes per second) or MH/s (megahashes per second). The display shows a smoothed average using Exponential Moving Average (EMA) for stability.
Shares
- Local Shares: Soft-difficulty shares found locally (for progress tracking)
- Pool Shares: Shares accepted by the mining pool
- Best Difficulty: The highest difficulty share found
🎰 About Solo Mining
Solo mining is a lottery. At these hashrates, finding a block is extremely unlikely but not impossible. The fun is in the journey!
Troubleshooting
Device Won't Boot
- Ensure proper power supply (5V 2A minimum for Nano, 5V 6A for Supreme)
- Try a different USB cable (some cables are charge-only)
- Hold BOOT button while pressing RESET to enter bootloader mode
Display Shows Nothing
- Check all SPI connections
- Verify backlight pin is connected
- Ensure display is powered (3.3V)
WiFi Won't Connect
- Ensure you're using a 2.4 GHz network
- Check password is correct
- Try moving closer to the router
I2C Issues (Nano Supreme)
Symptoms
- Master shows 0 hashrate
- "I2C Error" messages in serial monitor
- Slaves not receiving jobs
Solutions
- Check pull-up resistors: 4.7kΩ between SDA→3.3V and SCL→3.3V
- Verify common ground: All devices must share a common GND
- Keep wires short: I2C works best under 30cm
- Check addresses: Each slave must have a unique address
Power Issues
Symptoms
- Device randomly resets
- Display flickers
- Slaves crash-loop
Solutions
- Use adequate power supply: 5V 6A for Nano Supreme with 3 slaves
- Add decoupling capacitors: 100µF on 5V and 3.3V rails
- Check USB cables: Use data-capable cables, not charge-only
- Avoid USB hub: Connect directly to power supply