Thanks to visit codestin.com
Credit goes to github.com

Skip to content

zhufucdev/Diss

Repository files navigation

Desktop Integrated Scheduling System

Some micro hardware project to bring the busy schedule right in front of you

How to build

Need some monitor, so that you can see the pixels

The one I choose is some GDEY075Z08 E-Paper display. If interested, buy one here

How to program

Driving the display

I wrote a graphic library for this project, namely epui. Check its repo here.

I also wrote a display driver, which can be found here.

This default driver, namely EdeyDisplay, is built for raspberrypi. If you want to reproduce in other platforms or for other screens, just write yours.

# your_display.py

from display import Display
from PIL.Image import Image

class YourDisplay(Display):
    def __init__(self):
        super().__init__((600, 480))
        
    def draw(self, canvas: Image):
        # Do some stuff with canvas
        pass

Just take YourDisplay instead

# main.py
# -- snip --

if __name__ == '__main__':
-   display = GdeyDisplay()
+   display = YourDisplay()

    img = Image.new('L', display.canvas_size, 255)
    draw = ImageDraw.Draw(img)
    context = construct_ui(draw, display.canvas_size)

    main(display, context, img)

Private assets

You will never know my api keys. Instead, fill in yours

cd proper_res
echo 114514 >> caiyun_key
echo '{"something": "other things"}' >> client_secret.json # this is for Google Calendar

Tests and previews

Like in Driving the display, replace YourDisplay with LocalDisplay

# main.py
# -- snip --

if __name__ == '__main__':
-   display = YourDisplay()
+   display = LocalDisplay(800, 480)

    img = Image.new('L', display.canvas_size, 255)
    draw = ImageDraw.Draw(img)
# -- even more snip --

This time, your computer renders the 800x480 pixels high resolution image and pops the window right in front of you

About

Some micro hardware project to bring the busy schedule right in front of you

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages