Skip to content

reyco2000/ESP32-Chipshift

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

21 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ESP32-Chipshift

A collection of ESP32 and Arduino tools and utilities for embedded systems development, focusing on display interfaces and digital potentiometer control.

πŸ“‹ Overview

This repository contains four distinct projects designed to simplify embedded systems development:

  1. CYD Nixie Clock - Wi-Fi connected NTP clock for the Cheap Yellow Display (CYD)
  2. SD1306 Image Editor - Image to bitmap converter for OLED displays
  3. TFT Display Bitmaps Tool - JPEG to RGB565 converter for TFT displays
  4. TPL-0501-100 ESP32 - Digital potentiometer control library

πŸ› οΈ Projects

1. CYD Nixie Clock

An ESP32-based clock sketch that renders a retro Nixie tube theme on the 320Γ—240 TFT included with the Cheap Yellow Display (CYD). The firmware uses Wi-Fi to sync with public NTP servers, keeps time locally using millis(), and only redraws digits when they change for flicker-free visuals.

Features:

  • Wi-Fi and NTP powered time keeping with hourly resync
  • Custom Nixie style digits with blinking colon animation
  • Tunable timezone offset, NTP servers, and refresh intervals
  • Compatible with Bodmer's TFT_eSPI library and CYD pinout

Location: CYD_Clock/

Quick Start:

cd CYD_Clock
open NixieClockCYD.ino in the Arduino IDE
  1. Configure the TFT_eSPI User_Setup.h for your panel/pinout
  2. Add your Wi-Fi credentials and timezone offset in the sketch
  3. Upload to a CYD (ESP32-2432S028R) or similar ESP32+ST7789 board

Read more β†’


2. SD1306 Image Editor

A bitmap converter tool for SD1306 OLED displays compatible with Arduino, ESP32, and ESP8266 using the Adafruit GFX Library.

Features:

  • Convert images to C arrays for SD1306 displays
  • Built with Python tkinter for easy GUI interaction
  • Direct integration with Adafruit GFX Library
  • Visual image preview and editing

Location: SD1306-Image-Editor/

Quick Start:

python editor3.py

Read more β†’


3. TFT Display Bitmaps Tool

A Python utility that converts JPEG images into RGB565 format C arrays suitable for embedded systems with TFT displays.

Features:

  • JPEG to RGB565 C array conversion
  • Little-endian byte order for ESP32 compatibility
  • Automatic output file generation
  • Optimized for TFT_eSPI and Adafruit_GFX libraries
  • Memory-efficient 16-bit color format

Location: TFT_Display_Bitmats_Tool/

Requirements:

  • Python 3.x
  • Pillow library

Quick Start:

pip install Pillow
python rbg.py <image_file.jpg>

Read more β†’


4. TPL-0501-100 ESP32

Arduino sample code for controlling the TPL0501 Digital Potentiometer with ESP32. Includes examples for both single and dual digital potentiometer configurations.

Features:

  • Single digital potentiometer control
  • Dual digital potentiometer control
  • I2C communication examples
  • Part of a next-generation joystick project for the Color Computer

Location: TPL-0501-100ESP32/

Files:

  • singledigipot.ino - Single digipot example
  • dualdigipotTPL0501.ino - Dual digipot example

Quick Start:

  1. Open .ino file in Arduino IDE
  2. Select your ESP32 board
  3. Upload to your device

Read more β†’


🎯 Use Cases

  • Embedded Display Development: Convert images for OLED and TFT displays
  • IoT Timekeeping: Build Wi-Fi synchronized clocks for the Cheap Yellow Display
  • Retro Computing: Digital potentiometer control for vintage hardware interfaces
  • ESP32 Projects: Ready-to-use utilities for common ESP32 display and I/O tasks
  • Arduino Development: Cross-platform tools for Arduino-based projects

πŸ“¦ Requirements

General

  • ESP32 or Arduino-compatible board
  • Arduino IDE or PlatformIO

For Image Tools

  • Python 3.x
  • Pillow library (for TFT tool)
  • tkinter (for SD1306 editor)

For Hardware Projects

  • TPL0501 Digital Potentiometer (for digipot project)
  • SD1306 OLED Display (128x64) or TFT Display

πŸš€ Getting Started

  1. Clone this repository:

    git clone https://github.com/reyco2000/ESP32-Chipshift.git
    cd ESP32-Chipshift
  2. Navigate to the project folder you need:

    cd CYD_Clock             # For the Wi-Fi Nixie clock
    cd SD1306-Image-Editor     # For SD1306 tools
    cd TFT_Display_Bitmats_Tool # For TFT tools
    cd TPL-0501-100ESP32       # For digital potentiometer
  3. Follow the specific README in each folder for detailed instructions

πŸ‘€ Author

Reinaldo Torres Email: reyco2000@gmail.com

πŸ“„ License

This project is open source and available under the terms specified in the LICENSE file.

🀝 Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the issues page or submit a pull request.

πŸ“ Notes

  • Ensure your images are appropriately sized for your target microcontroller's memory
  • For ESP32 with PSRAM, larger images are supported
  • Consider using PROGMEM or SPIFFS for storing large image arrays
  • Test digital potentiometer configurations with appropriate resistor values

Made with ❀️ for the embedded systems community

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •