Adafruit Library
Public Member Functions | List of all members
dispDrvThinkInkGrayscale4T5 Class Reference

Driver for a ThinkInk 2.9" Grayscale 4-level T5 display (pre-2025 version of the Adafruit MagTag). More...

#include <dispDrvThinkInkGrayscale4T5.h>

Inheritance diagram for dispDrvThinkInkGrayscale4T5:
dispDrvBase

Public Member Functions

 dispDrvThinkInkGrayscale4T5 (int16_t dc, int16_t rst, int16_t cs, int16_t sram_cs=-1, int16_t busy=-1)
 Constructor for the ThinkInk Grayscale T5 EPD display driver. More...
 
bool begin (thinkinkmode_t mode, bool reset=true) override
 Attempts to initialize the ThinkInk Grayscale 4 T5 EPD display driver. More...
 
virtual void drawStatusBar (const char *io_username) override
 Draws a status bar at the top of the display. More...
 
void updateStatusBar (int8_t rssi, uint8_t bat, bool mqtt_status) override
 Updates the status bar with current information (battery level, connectivity status, etc). More...
 
virtual void writeMessage (const char *message) override
 Writes a message to the display. More...
 
- Public Member Functions inherited from dispDrvBase
 dispDrvBase (int16_t dc, int16_t rst, int16_t cs, int16_t sram_cs=-1, int16_t busy=-1)
 Constructor for the base display driver for E-Ink displays. More...
 
 dispDrvBase (int8_t cs, int8_t dc, int8_t mosi, int8_t sck, int8_t rst=-1, int8_t miso=-1)
 Constructor for the base display driver for SPI TFT displays. More...
 
virtual ~dispDrvBase ()
 Destructor for the base display driver. This destructor is virtual to allow derived classes to clean up resources properly.
 
virtual bool begin ()
 Attempts to initialize a SPI TFT driver. More...
 
void setWidth (int16_t w)
 Sets the width of the display. More...
 
void setHeight (int16_t h)
 Sets the height of the display. More...
 
void setRotation (uint8_t r)
 Sets the rotation of the display. More...
 
virtual void setTextSize (uint8_t s)
 Sets the text size for the display. More...
 
virtual void showSplash ()
 Displays a splash screen on the display. More...
 

Additional Inherited Members

- Protected Attributes inherited from dispDrvBase
int16_t _pin_dc
 Data/Command pin.
 
int16_t _pin_rst
 Reset pin.
 
int16_t _pin_cs
 Chip Select pin.
 
int16_t _pin_busy
 Optional Busy pin.
 
int16_t _pin_sram_cs
 Optional EPD SRAM chip select pin.
 
uint16_t _pin_mosi
 Optional MOSI pin for SPI TFT displays.
 
uint16_t _pin_miso
 Optional MISO pin for SPI TFT displays.
 
uint16_t _pin_sck
 Optional SCK pin for SPI TFT displays.
 
uint8_t _text_sz = 1
 Text size for displaying a message.
 
int16_t _height
 Height of the display.
 
int16_t _width
 Width of the display.
 
uint8_t _rotation
 Rotation of the display.
 
int _statusbar_icons_y
 Y position of status bar icons.
 
int _statusbar_icon_battery_x
 X position of battery icon.
 
int _statusbar_icon_wifi_x
 X position of WiFi icon.
 
int _statusbar_icon_cloud_x
 X position of cloud icon.
 
int8_t _statusbar_rssi
 RSSI value for status bar.
 
uint8_t _statusbar_bat
 Battery level, as a percentage, for the status bar.
 
bool _statusbar_mqtt_connected
 MQTT connection status for the status bar.
 

Detailed Description

Driver for a ThinkInk 2.9" Grayscale 4-level T5 display (pre-2025 version of the Adafruit MagTag).

Constructor & Destructor Documentation

◆ dispDrvThinkInkGrayscale4T5()

dispDrvThinkInkGrayscale4T5::dispDrvThinkInkGrayscale4T5 ( int16_t  dc,
int16_t  rst,
int16_t  cs,
int16_t  sram_cs = -1,
int16_t  busy = -1 
)
inline

Constructor for the ThinkInk Grayscale T5 EPD display driver.

Parameters
dcData/Command pin for the display.
rstReset pin for the display.
csChip Select pin for the display.
sram_csOptional SRAM Chip Select pin for E-Ink displays that support it.
busyOptional Busy pin for the display.

Member Function Documentation

◆ begin()

bool dispDrvThinkInkGrayscale4T5::begin ( thinkinkmode_t  mode,
bool  reset = true 
)
inlineoverridevirtual

Attempts to initialize the ThinkInk Grayscale 4 T5 EPD display driver.

Parameters
modeThe ThinkInk mode to use for the display.
resetWhether to reset the display before initialization.
Returns
True if the display was initialized successfully, false otherwise.

Reimplemented from dispDrvBase.

◆ drawStatusBar()

virtual void dispDrvThinkInkGrayscale4T5::drawStatusBar ( const char *  io_username)
inlineoverridevirtual

Draws a status bar at the top of the display.

Parameters
io_usernameThe Adafruit IO username to display on the status bar.

Reimplemented from dispDrvBase.

◆ updateStatusBar()

void dispDrvThinkInkGrayscale4T5::updateStatusBar ( int8_t  rssi,
uint8_t  bat,
bool  mqtt_status 
)
inlineoverridevirtual

Updates the status bar with current information (battery level, connectivity status, etc).

Parameters
rssiThe current WiFi RSSI (signal strength) in dB.
batThe current battery level as a percentage (0-100).
mqtt_statusThe current MQTT connection status.

Reimplemented from dispDrvBase.

◆ writeMessage()

virtual void dispDrvThinkInkGrayscale4T5::writeMessage ( const char *  message)
inlineoverridevirtual

Writes a message to the display.

Parameters
messageThe message to write to the display.
Note
This method overrides the base class method to provide specific functionality for the Think Ink Grayscale 4 EAAMGFGN driver.

Implements dispDrvBase.


The documentation for this class was generated from the following file: