![](img/2024-03-26-14-58-08-image.png)

# InkyDash

A simple e-ink / epaper powered calendar with weather information and daily progres bar

## Usage

### Wiring

If you are using the offical PCB, then follow the silk screen wiring instructions. Otherwise, if you are using generic ESP8266, follow the following wiring instructions to connect your e-ink display SPI control board to your development board.

#### Wemos D1 mini

- BUSY -> D2

- RST -> D4

- DC -> D3

- CS -> D8

- CLK -> D5

- DIN -> D7

- GND -> GND

- 3.3V -> 3.3V

#### Generic ESP8266

- BUSY -> GPIO4

- RST -> GPIO2

- DC -> GPIO0

- CS -> GPIO15

- CLK -> GPIO14

- DIN -> GPIO13

- GND -> GND

- 3.3V -> 3.3V

### Customizations

#### Low Power Mode

If your InkyDash is running off battery, set LOW_POWER_MODE to true and add a resistor between the D0 / GPIO16 pin to the RST pin of the ESP8266. **This resistor is critical for the ESP8266 to wake up from deep sleep mode.** The resistor values depends on your development board, but usually 330R to 1k Ohm is commonly used by the community.

#### Weather Locations

You can change your weather location by editing these few lines in the weather.ino file.

```c
//Latitude & Longitude of your location
/* Hong Kong */
const String lat = "22.2783";
const String lon = "114.1747";

/* Timezone */
const String timezone = "Asia/Singapore";
```

The weather information is provided by `open-meteo.com`. They do not require API key for request count less than 500 per hour. You can modify where the weather API grab data if you have your own weather station at home. You just need to modify the following in `weather.ino`.

```c
// In updateCurrentWeatherInfo() function

//Update the current lines to your data sources
currentTemp = doc["current"]["temperature_2m"];
currentHumd = doc["current"]["relative_humidity_2m"];
currentRain = doc["current"]["rain"];
minTemp = doc["daily"]["temperature_2m_min"][0];
maxTemp = doc["daily"]["temperature_2m_max"][0];
```

### Firmware Downloading

Open "InkyDash" project with Arduino IDE and upload the firmware into the InkyDash control board.

### Supported Eink Models

Basically you can try this with any 7.5 inch eink display with 3 colors. 

- GxGDEW075Z09 (Recommend)

- GxGDEW075Z08 (Not Tested)

- GxGDEW075T8 (Not Tested, Require some color code change)

- GxGDEW075T7 (Not Tested, Require some color code change)



### Interface

The interface can be changed in the draw `drawHomeFrame()` function.



## License

CopyRight tobychui (C) All Right Reserved