DIY eBook Reader - Build your own Kindle using an ESP32

Поделиться
HTML-код
  • Опубликовано: 23 июл 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👍

  • @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 সও২যাক্ব্ব২স্ব্বস্ব২ওওওওওওওস্বস্বস্য্ব্বস২২ও২ওওয্ব্বয২ওওওও২ওয্ব্ব্ব%২য্ব্ব্বসস্বযসস্ব্বয২ওওওয্য্ব্ব্ব্ব্ব্বয২স্ব্ব্ব্বসা%ওও২ওও২ওয়াওস্ব্ব্বয্বস্বয্বসস্বয২ওওও২ওওও

  • @marekzabielski1015
    @marekzabielski1015 Год назад +1

    Great project

  • @karmadhendup2572
    @karmadhendup2572 3 месяца назад

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

  • @roguesecurity
    @roguesecurity 2 года назад +2

    This is amazing!!!

  • @anwaralisuthar1569
    @anwaralisuthar1569 4 месяца назад

    Great work

  • @peter.stimpel
    @peter.stimpel 2 года назад +1

    quite an achievement, congrats!

  • @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

  • @jacksteven4892
    @jacksteven4892 2 года назад +12

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

  • @shrithanosmaharaj8679
    @shrithanosmaharaj8679 2 года назад +1

    came here from reddit, great work

  • @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.

  • @arseniyp4492
    @arseniyp4492 Год назад +1

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

  • @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. ;)

  • @tw_mortadragon265
    @tw_mortadragon265 2 года назад +1

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

  • @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 года назад

      জজপব

  • @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!

  • @garagewizzard
    @garagewizzard 2 года назад +1

    Neat :)

  • @ozey1587
    @ozey1587 Месяц назад +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 :(

  • @drickph3066
    @drickph3066 2 года назад +2

    R pico pi or zero pi will work?

  • @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.

  • @cochieguevarra5723
    @cochieguevarra5723 Год назад

    does this work on watchy?

  • @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.

  • @t0biascze644
    @t0biascze644 8 месяцев назад

    whats the battery life tho

  • @debayanbhowmik8085
    @debayanbhowmik8085 11 месяцев назад

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

    • @atomic14
      @atomic14  11 месяцев назад

      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.

  • @zoomingh
    @zoomingh 2 года назад

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

  • @1992annamalinina
    @1992annamalinina 2 года назад +1

    Price?

  • @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