Skip to content

Uploaded 4.3 version with TT-GO 1.14 display #1816

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Open
wants to merge 14 commits into
base: master
Choose a base branch
from

Conversation

jpx13
Copy link

@jpx13 jpx13 commented Aug 23, 2024

Trial to adapt the ESP32 miner to the Lilygo TT-GO 1.14 WIP
Seems to crash after a while
I am using Bodmer's tft_eSPI library
There is also a config file in the library folder to make the onboard display recognized, it is not uploaded here

jpx13 added 2 commits August 23, 2024 11:55
Trial to adapt the ESP32 miner to the Lilygo TT-GO 1.14
WIP
Seems to crash after a while

float sharerate = share_count / (millisecs / 1000.0);

display_mining_results(String(hashrate_float, 1), String(accepted_share_count), String(share_count), String(uptime),
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From our discussion on Discord:
I think I know, since it refers to a mutex it must be happening in a point when two threads found the share at almost or exactly the same time and both want to take control of the display? but it's weird as only one thread should be updating it unless I made something wrong or don't remember it correctly, I'll check in a second
No, indeed this is possible, both cores update the display. Can you check if that's the case by removing one of two display_mining_results calls?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had the same idea just 14 minutes ago, and removing the || defined(DISPLAY_114) from the second core seems to do the trick...
After seeing a few times the display half frozen before the console crashes...
it is now working since 15 minutes, but of course updates only on core 0 shares...
Maybe the solution would be to raise a flag while the display is still doing something, and check it in the mining loop (core 0 and core 1) to wait before sending the result ?


float sharerate = share_count / (millisecs / 1000.0);

display_mining_results(String(hashrate_float, 1), String(accepted_share_count), String(share_count), String(uptime),
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here's the second instance.

Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One thing to add - you don't have to make a separate folder with your changes, if you uploaded it to the ESP_Code folder it would nicely show the difference between master branch and your changes,but don't worry for now, just remember for future attempts :)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thx :)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Uploaded the new version with handleSystemEvents for both cores
added also the User_setuo.h for tft_eSPI lib

@revoxhere revoxhere self-assigned this Aug 23, 2024
@revoxhere revoxhere added enhancement New feature or request in progress This is currently being worked on labels Aug 23, 2024
jpx13 added 3 commits August 24, 2024 10:45
added handleSystemEvents to core 1 and core 2 as suggested
Also added the User_Setuo.h for the tft_eSPI library
Changed the mining display screen to new version
changed font
@jpx13
Copy link
Author

jpx13 commented Aug 30, 2024

New version of the mining screen
changed font

Also both settings are available in the User_Setup.h
the user has to comment out or uncomment the lines according to its display type
note: For st7735 the pins can be assigned differently upon user need, so they are not carved in stone as it is an excternal display. I used the pins I  had already soldered on my own display and ESP
@jpx13
Copy link
Author

jpx13 commented Sep 3, 2024

Uploaded latest code with st7735 display

Comment or uncomment acording to your display type
sorry, still learning github...
Features displays for Lilygo ttgo 1.14, generic 7735 display and the Cheap Yellow Display ESP32 2432S028 dev board.
To be able to flash the CYD sketch, you need to select in the IDE the option for minimal SPIFF as the flash memory requirement is higher than for the other displays.
This new display adds A sntp synced clock with time and date, and also Balance fetching from the API every 5 minutes (displays balance, username and number of miners)
The TFTeSPI library is required, and according to your device, you might do changes in the User_Setup.h file.
Uploaded a binary of the 2432S028 Duinocoin miner for those who can't or don't want to compile it by themselves.
@jpx13
Copy link
Author

jpx13 commented Mar 7, 2025

Added today the ESP32-2432S028 CYD Duinocoin Miner with clock, calendar and balance display.
I also uploaded a binary for those who can't or don't want to compile by themselves.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
enhancement New feature or request in progress This is currently being worked on
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants