NerdNos-Firmware/README.md
Alfonso C. Alvarez cf0e667668 Merge branch 'master' of https://github.com/alcar21/NerdMiner_v2 into feature/add_platformio_support_and_improvements
# Conflicts:
#	.gitignore
#	Lib/Free_Fonts.h
#	Lib/images.h
#	Lib/myFonts.h
#	NerdMinerV2.ino
#	README.md
#	TFT_setup/User_Setup.h
#	lib/TFT_eSPI/User_Setup.h
#	platformio.ini
#	src/Lib/Free_Fonts.h
#	src/Lib/images.h
#	src/Lib/myFonts.h
#	src/NerdMinerV2.ino
#	src/NerdMinerV2.ino.cpp
#	src/TFT_setup/User_Setup.h
#	src/media/Free_Fonts.h
#	src/media/images.h
#	src/media/myFonts.h
#	src/mining.cpp
#	src/mining.h
#	src/wManager.h
2023-04-17 15:04:42 +02:00

83 lines
3.1 KiB
Markdown

# NerdSoloMiner
**The NerdSoloMiner v2**
This is a **free and open source project** that let you try to reach a bitcoin block with a small piece of hardware.
The main aim of this project is to let you **learn more about minery** and to have a beautiful piece of hardware in your desktop.
Original project https://github.com/valerio-vaccaro/HAN
![image](images/NerdMinerv2.jpg)
## Requirements
- TTGO T-Display S3
- 3D BOX [here](3d_files/)
### Project description
**ESP32 implementing Stratum protocol** to mine on solo pool. Pool can be changed but originally works with ckpool.
This project is using ESP32-S3, uses WifiManager to modify miner settings and save them to SPIFF.
This miner is multicore and multithreads, each thread mine a different block template. After 1,000,000 trials the block in refreshed in order to avoid mining on old template.
***Current project is still in developement and more features will be added***
## Build Tutorial
### Hardware requirements
- TTGO T-Display S3 > Buy it on aliexpress or amazon
- 3D BOX
### Flash firmware
Create your own miner using the online tool **ESPtool** and the **binary files** that you will find in the src/bin folder.
If you want you can compile the entire project using Arduino, PlatformIO or Expressif IDF.
1. Get a TTGO T-display S3
1. Download this repository
1. Go to ESPtool online: https://espressif.github.io/esptool-js/
1. Load the firmware with the binaries from the src/bin folder.
1. Plug your board and select each file from src/bin with its address
#### Build troubleshooting
1. Online ESPtool works with chrome, chromium, brave
1. ESPtool recommendations: use 115200bps
1. Build errors > If during firmware download upload stops, it's recommended to enter the board in boot mode. Unplug cable, hold right bottom button and then plug cable. Try programming
### NerdMiner configuration
After programming, you will only need to setup your Wifi and BTC address.
1. Connect to NerdMinerAP
1. Setup your Wifi Network
1. Add your BTCaddress
Optional you can select other pool:
| Pool URL | Port | URL |
|--- |--- |--- |
| solo.ckpool.org | 3333 | https://solo.ckpool.org/ |
| btc.zsolo.bid | 6057 | https://zsolo.bid/en/btc-solo-mining-pool |
| eu.stratum.slushpool.com | 3333 | https://braiins.com/pool |
**If you need to reboot your currentConfig**, hold right top button during 5 seconds and config will be deleted.
#### Build video
[![Ver video aquí](https://img.youtube.com/vi/POUT2R_opDs/0.jpg)](https://youtu.be/POUT2R_opDs)
## Developers
### Project guidelines
- Current project was addapted to work with PlatformIO
- Current project works with ESP32-S3 but any ESP32 can be used.
- Partition squeme should be build as huge app
- All libraries needed shown on platform.ini
### On process
- [x] Move project to platformIO
- [x] Bug rectangle on screen when 1milion shares
- [x] Bug memory leaks
- [x] Bug Reboots when received JSON contains some null values
- [ ] Improve hashrate using Blockstream Jade miner code
- [ ] Add blockHeight to screen
- [ ] Add new screen with global mining stats
- [ ] Add support to control BM1397
Enjoy