DIY eBook Reader - Build your own Kindle using an ESP32

Поділитися
Вставка
  • Опубліковано 4 сер 2024
  • I've been busy playing with another ESP32 based e-Paper display. Once again we're sponsored by PCBWay - www.PCBWay.com/?from=atomic
    There are some interesting aspects to this project:
    We're using deep sleep to save on battery - check out my recent video on this subject for a deep dive: • Mastering ESP32 Deep S...
    We're also using an SD Card in SPI mode using a few of the spare GPIO pins on the board - we've covered this previously in this video: • Record & Playback Audi...
    Parsing, layout out and rendering ePub files is pretty interesting. It's a good challenge to try and get this working nicely on embedded devices like the ESP32.
    [0:00] Introduction/demo
    [1:07] ePub format overview
    [1:34] What's inside an ePub file?
    [1:49] The content.opf file
    [2:20] ePub components
    [2:32] Challenges
    [2:55] Getting ePub files onto the device
    [3:08] Touch screen failure
    [3:24] Listing files on an SD Card
    [3:33] Enabling long files names in the ESP-IDF
    [3:51] Reading ZIP archives on the ESP32
    [4:15] Parsing the content.opf file to get the book structure
    [4:56] Should we build a web browser?
    [5:34] Parsing the XHTML content
    [5:52] Laying out the content
    [7:28] Deep sleep
    [7:41] Show me the code!
    Everything is on GitHub here: github.com/atomic14/diy-esp32...
    If you've got an ESP32 based ePaper display then please give it a go!
    You can get the LilyGO board I'm using from here: s.click.aliexpress.com/e/_9u8DGd (affiliate link)
    ----
    Patreon: / atomic14
    ko-fi: ko-fi.com/atomic14
  • Розваги

КОМЕНТАРІ • 60

  • @sandorkonya
    @sandorkonya 2 роки тому +16

    A very ingenious way of parsing the .epub file! Really liked this vid!

  • @dosgos
    @dosgos 2 роки тому +3

    Interesting project and exciting video. So much content in under 8 minutes.

  • @JonPYbanez
    @JonPYbanez 2 роки тому +1

    this is phenomenal. fantastic work.

  • @MinNyeAccount
    @MinNyeAccount 2 роки тому +1

    This is really a nice project, and much good infomation

  • @M5Stack
    @M5Stack 2 роки тому +1

    Good work! thank you for sharing this! we have shared this in our community👍

  • @marekzabielski1015
    @marekzabielski1015 Рік тому +1

    Great project

  • @anwaralisuthar1569
    @anwaralisuthar1569 5 місяців тому

    Great work

  • @shrithanosmaharaj8679
    @shrithanosmaharaj8679 2 роки тому +1

    came here from reddit, great work

  • @yurievi4
    @yurievi4 2 роки тому +2

    awesome work mate!

    • @atomic14
      @atomic14  2 роки тому +2

      Thanks! I got to the 80% point where I thought if I didn't show people it would never be finished...

    • @md.abdulbaten3033
      @md.abdulbaten3033 2 роки тому

      @@atomic14 সও২যাক্ব্ব২স্ব্বস্ব২ওওওওওওওস্বস্বস্য্ব্বস২২ও২ওওয্ব্বয২ওওওও২ওয্ব্ব্ব%২য্ব্ব্বসস্বযসস্ব্বয২ওওওয্য্ব্ব্ব্ব্ব্বয২স্ব্ব্ব্বসা%ওও২ওও২ওয়াওস্ব্ব্বয্বস্বয্বসস্বয২ওওও২ওওও

  • @karmadhendup2572
    @karmadhendup2572 4 місяці тому

    Really amazing. I will try to work in a similar way.👍

  • @peter.stimpel
    @peter.stimpel 2 роки тому +1

    quite an achievement, congrats!

  • @roguesecurity
    @roguesecurity 2 роки тому +2

    This is amazing!!!

  • @jacksteven4892
    @jacksteven4892 2 роки тому +12

    Great project! Maybe if you could add support for ZIM files you could make an offline Wikipedia reader?

  • @hakimtsv8957
    @hakimtsv8957 2 роки тому +2

    Keep it up i really like your projects

    • @atomic14
      @atomic14  2 роки тому +1

      Thank you!

    • @hakimtsv8957
      @hakimtsv8957 2 роки тому

      @@atomic14 thank you! You're the one inspiring us and giving us this content

  • @garagewizzard
    @garagewizzard 2 роки тому +1

    Neat :)

  • @juliankager1657
    @juliankager1657 6 місяців тому

    Hey very nice project, i am also trying to do a project with the liligo epd and I wantet to ask you if the files of the 3d printed case files are available, i did not find them on your git repository sadly. Kind regard.

  • @usefulrandom1855
    @usefulrandom1855 11 місяців тому +1

    I got an Arduino the other day, done the first few basic tutorials but they are all a bit crap and give no more info on how to use/incorporate into other projects. I am defo going to build one of these and have joined your discord!
    I also saw your forecast/temp monitor one, I want one as well lol, I would add a couple of stock prices to the display I think that should not be too much trouble with a little research.

  • @MrNoipe
    @MrNoipe 2 роки тому +9

    Really impressive video, very well explained. Have you thought about improving the text display by using hinting/antialiasing?

    • @atomic14
      @atomic14  2 роки тому +2

      Can definitely make some improvements on the text side of things. The library I'm using for driving the ePaper display github.com/vroland/epdiy has some scripts for turning ttf fonts into bitmaps for rendering which does seem to have some antialiasing, but being able to draw ttf fonts directly would be brilliant.

    • @shahidcox9344
      @shahidcox9344 2 роки тому

      ঝ ওজ পজজজজবজজ,ঝঝন বনআজ জওজজ৷, ঝজও, বজজআজ জ জনওন

    • @shahidcox9344
      @shahidcox9344 2 роки тому

      জপজপজজওজবআ

    • @shahidcox9344
      @shahidcox9344 2 роки тому

      বআও জজ

    • @shahidcox9344
      @shahidcox9344 2 роки тому

      জজপব

  • @tw_mortadragon265
    @tw_mortadragon265 2 роки тому +1

    how long does the battery work for fter a full charge?

  • @electronash
    @electronash 2 роки тому +1

    Looks great. I might have to build one. I've never had an ePaper device.
    (quick heads-up on "reder" in the vid title.)

    • @electronash
      @electronash 2 роки тому

      To confirm the LilyGo EPD47 is the same module as the "LILYGO T5-4.7 Inch E-paper ESP32 V3 Version 16MB FLASH 8MB PSRAM" on their AliExp store, yep?
      They have a choice between 18650 battery clips, or JST PH, and two different USB serial chips.

    • @atomic14
      @atomic14  2 роки тому +1

      @@electronash That's the one - I got the JST one but depends what you have lying around battery wise. USB chips - I've had some issues on my mac with some of the new chips - but my machine is ancient... One thing to be aware of is that I struggled to find connectors for the 4 pin sockets to get the SD Card connected to the board. The official adapter is here - not sure what the pinouts are though! www.aliexpress.com/item/1005002317501092.html

    • @electronash
      @electronash 2 роки тому

      @@atomic14 Great, thanks. ;)

  • @arseniyp4492
    @arseniyp4492 Рік тому +1

    only for esp32 up to v3 version(lilygo esp32v3 wrover e)? or esp32s3 too?

  • @neurojitsu
    @neurojitsu 2 роки тому +3

    Glad to have discovered your channel, new sub! I've literally just become interested in the whole maker culture thing... after looking into how to motorise my camera slider, and it just kinda snowballed from there... very quickly! Now I'm looking to get a 3D printer... and fascinated by the M5Stack, ESP32...
    I have a quick question for you. How easy or difficult a learning path would it be to learn how to interface M5Stack- or Arduino-based electronics with say, an iPhone watch or iPad? I'm aware there are APIs and developer tools, what sort of programming knowledge or language do they require? I'm interested in potentially engaging a developer to help, but prefer to know something about the basics first so that I have the competence and knowledge to manage any relationship with a developer... thanks!

    • @atomic14
      @atomic14  2 роки тому

      For talking to an iPhone or iPad you are either looking at Bluetooth Low Energy (BTLE) or WiFi. If you're writing an app for the phone then bluetooth is a good option.

    • @dosgos
      @dosgos 2 роки тому

      You mean "maker culture" or "whole maker culture"? This ebook would fall under "whole maker culture"!

    • @neurojitsu
      @neurojitsu 2 роки тому

      @@dosgos ha ha, I'm so new to it that I've no idea what you mean!

  • @ozey1587
    @ozey1587 2 місяці тому +2

    Hi, very nice project!
    Any chance you would revisit this in the future to port it to the newer LillyGO T5 4.7 ESP32-S3 version (v2.3)
    i've tried myself but i'm struggeling with a bunch of errors i don't understand :(

  • @mridulagrawal2370
    @mridulagrawal2370 Рік тому

    The Lilygo display you got comes with the ESP32 attached right? I cannot get that board and I want to use a 5.83 inch display from some other brand. Do you think this code would still work? The display is standalone and I will be using an esp8266. I am quite new to the world of microcontrollers.

    • @atomic14
      @atomic14  Рік тому

      The esp8266 probably won't be powerful enough for the ebook project. It requires quite a lot of memory so needs a chip that has PSRAM.

  • @drickph3066
    @drickph3066 2 роки тому +2

    R pico pi or zero pi will work?

  • @phizaics
    @phizaics 2 роки тому +1

    what kind of battery backup do you get from this?

    • @atomic14
      @atomic14  2 роки тому +1

      No idea yet - the buttons on the board mean that you can't use EXT1 mode and have to use the ULP which does use more power. I need to try and measure the deep sleep current. My weather display gets a couple of months battery time and that wakes up every 30 minutes and connects to WiFi.

  • @cochieguevarra5723
    @cochieguevarra5723 Рік тому

    does this work on watchy?

  • @t0biascze644
    @t0biascze644 9 місяців тому

    whats the battery life tho

  • @debayanbhowmik8085
    @debayanbhowmik8085 Рік тому

    Is there any way to make the device compatible with .pdf files ?

    • @atomic14
      @atomic14  Рік тому

      PDFs are a nightmare to parse. The best way to do it would be to render the PDF pages to images on a PC and then just load those onto the device.

  • @1992annamalinina
    @1992annamalinina 2 роки тому +1

    Price?

  • @zoomingh
    @zoomingh 2 роки тому

    Hi
    Plz, I need design like..... Mic- esp- speaker
    (1 esp)
    Voice streamer
    Can you help me?
    Ths

  • @phucnguyenthai5398
    @phucnguyenthai5398 2 роки тому

    Impressive!!!! But the refresh rate seems to be a problem. Unsure if we can accelarate it up.

  • @HashirEasa
    @HashirEasa 2 роки тому

    haha 612 page pdf go brrrrrrrrrrrrrrrr

  • @navidmorovati1742
    @navidmorovati1742 2 роки тому

    Hi

  • @tromzinck
    @tromzinck 2 роки тому

    slow down

  • @browaruspierogus2182
    @browaruspierogus2182 2 роки тому +1

    ESP is not good for that