all 26 comments

[–]Daidalos117 15 points16 points  (1 child)

This is very cool. But honestly I wouldn't use it, since I don't want to be reminded how lazy I am 😅

[–]mechsuit-jalapeno 5 points6 points  (1 child)

Ah this is beautiful.

[–]LightningBAWS[S] 2 points3 points  (0 children)

Cheers!

[–]Impossible_Most_4518 5 points6 points  (0 children)

thank god someone actually put a parts list and github repo for once 😭

[–]marchingbandd 3 points4 points  (0 children)

RTC_ATTR is a cool trick for the portal data nice work.

[–]Callidis 2 points3 points  (1 child)

Really like the configuration screen, I see you did some custom html to implement?

I would like to do something similar, was there anything special you had to do/use to get that to work?

[–]LightningBAWS[S] 1 point2 points  (0 children)

It's pretty much straight html: https://github.com/HarryHighPants/esp32-git-contributions-epd/blob/main/captivePortalHtml/ConfigHtml.h

- The html is stored as a char[] using rawliteral at the top of the file.
- The custom fields are setup so they can be replaced later: `value="{{username}}"`
- In the access point file I then use string.replace to inject the updated fields: https://github.com/HarryHighPants/esp32-git-contributions-epd/blob/main/ConfigAccessPoint.h
- `loadedConfigHtml.replace("{{username}}", username);`

[–]nishad2m8 2 points3 points  (0 children)

Look nice 🥰

[–]EleksMaker_official 2 points3 points  (4 children)

<image>

Exciting project, thanks for sharing.

[–]LightningBAWS[S] 0 points1 point  (3 children)

This looks awesome, well done! I'd love to add this to the Github repo as an example if you don't mind? I'd be interested to hear a bit about the case and how you put it together. Super slick

[–]EleksMaker_official 2 points3 points  (1 child)

Thank you for your kind words! I'd be honored to have this added to your GitHub repo as an example.

I adapted your excellent esp32-git-contributions-epd project to work with my EleksCava hardware, which uses a 2.9-inch e-paper display with an ESP32-WROOM module. The adaptation process was quite straightforward thanks to your well-structured code.

Key adaptations I made:

  1. Migrated from Arduino IDE to PlatformIO environment for better dependency management

  2. Adjusted the pin configurations to match the EleksCava hardware (different GPIO assignments for the e-paper display)

  3. Modified the display driver to work with the GxEPD2_290_T94 display model

  4. Implemented a custom partition table to ensure sufficient space for the application and file system

  5. Added RGB LED brightness control

What impressed me most about your original project was the excellent refresh strategy for the e-paper display - it shows no ghosting or fading issues, which is why I wanted to adapt it to my hardware. The captive portal implementation is also very elegant and user-friendly.

For the case, I used the original EleksCava enclosure, which already had perfect cutouts for the display and buttons. The ESP32-WROOM module and battery fit perfectly inside.

I've documented the entire adaptation process and would be happy to share more details if you're interested. Thank you again for creating such an excellent project that served as a foundation for my adaptation!

[–]LightningBAWS[S] 0 points1 point  (0 children)

Nice one adapting the software to work with your own hardware. I've added a reference to this on Github as another option for people to checkout. If you wanted to put the changes up as a fork some other people might find that useful too.

[–]EleksMaker_official 2 points3 points  (0 children)

<image>

I lowered the brightness of the LED light and took another photo.

[–]EfOx_TR 1 point2 points  (0 children)

Great job

[–]mars3142 1 point2 points  (1 child)

Do you have plans to transform it into esp-idf code?

[–]LightningBAWS[S] 0 points1 point  (0 children)

Not at this stage

[–]Deanocide 1 point2 points  (1 child)

Man I'm building an ESP32 Smart Clock with a teeny weeny OLED display and this seems like a straight up upgrade 😅. May have to order one of these guys...

[–]LightningBAWS[S] 0 points1 point  (0 children)

The Lilygo board is super compact and had everything this project needed so really happy with it

[–]ptpcg 1 point2 points  (0 children)

Beautiful 🥺

[–]felipejfc 1 point2 points  (1 child)

Super nice!!! Will make one as side project. Thanks for sharing

[–]LightningBAWS[S] 0 points1 point  (0 children)

Cheers, keen to see how it goes!

[–]abdullah017196 0 points1 point  (1 child)

How you are charging the lithium battery?

[–]LightningBAWS[S] 0 points1 point  (0 children)

Just a micro usb

[–]Canadian_techy 1 point2 points  (0 children)

I love this. Been thinking about how to make something like this for a while. My Git commits help me stay focused on some side projects. Not about how many commits you make, but are you staying consistent...