GithubHelp home page GithubHelp logo

vroland / epdiy Goto Github PK

View Code? Open in Web Editor NEW
1.2K 1.2K 172.0 60.24 MB

EPDiy is a driver board for affordable e-Paper (or E-ink) displays.

Home Page: https://vroland.github.io/epdiy-hardware/

License: GNU Lesser General Public License v3.0

C 96.15% Python 2.90% CMake 0.68% Makefile 0.26%

epdiy's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

epdiy's Issues

Ghosting issue

When I run demo for like 10 minutes and then I run dragon, the text (inverted) stays slightly visible on dragons wing. It needs tens of refreshes before the burned text disappears, so at this point it's not useful for static content like a dashboard. I tried to play with the refresh cycle but to no avail. I think what's missing here is to add an inverted image to the refresh cycle(as can be seen on the waveshare displays or on kindle for example). Maybe single inverted image can replace the current 3x black/white flash and make the refresh even faster.

Also, sorry to keep spamming issues!

Bom quantities for v3

Hi,
I'm trying to build a v3 pcb. In bom, however, there are cosmic quantities entered for the parts.
For example:
General Purpose Amplifiers General Purpose 2 3V ~ 32V, ±1.5V ~ 16V 700kHz 0.3 V/us SOIC-8_150mil RoHS has quantity of 20.

As far as I noticed that bom is not for one board and more like for 20? Is that correct?

And also is bom created for v3 board or just v2 board?

Terminal example 'crashes' USB Serial chip

Somehow the terminal example annoys the USB Serial chip so much it causes to re-enumerate on the USB bus 😎

Tried it with the Arduino IDE serial terminal, screen and IDF monitor. All three are gloriously killed 👍

Could be a shitty driver on my Linux Mint, could be a bad chip. Haven't seen this behaviour before in other USB serial chips, this is my first board with the CH330.

Noisy / grainy image with ED097TC2

I just received my ED097TC2 panel to replace the broken ED097OC4. While it appears to be of better contrast it is also a lot more "grainy" (see right side of attached picture). Any suggestions what I can tweak to get rid of this?

Fun fact - if I place my hand on the display during update (placed it o the left side) the grain appears to be much reduced.

IMG_20210106_123041

How to calibrate RV1?

Messed with RV1 and now i've got a completely black screen 😆 , any hints on calibrating RV1 and also recover the eink to normal?

No this is worse. I blew up the opamp... Replaced it and it now works again. Rotating RV1 too close somewhere apparantly blew op U7.

Regarding the opamp i've submitted a PR to properly close the second opamp, it could be related but not sure.

I want to make my own font file, but Error encountered

I want to make my own font file, but even with your example practice, the font Successfully generated,but can't run in esp32. I'll revise it according to the guide you gave "fontconvert.py" The exercise generated a custom font file, The firmware generated by compilation will report an error when running .can you give us some suggestions?

This is my generation step:

  1. modify fontconvert.py here:
    intervals= [
    # arrows
    (0x2190, 0x21FF),
    # math
    (0x2200, 0x22FF),
    # symbols
    (0x2300, 0x23FF),
    ]
  2. run command in Raspberry where can run python:
    python3 fontconvert.py msyh 10 FiraCode-Regular.ttf Symbola.ttf >hz500.h
FiraCode-Regular.ttf Symbola.ttf   the same as your example.

hz500.zip

  1. esp32 run error:

rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0018,len:4
load:0x3fff001c,len:1216
ho 0 tail 12 room 4
load:0x40078000,len:9720
ho 0 tail 12 room 4
load:0x40080400,len:6352
entry 0x400806b8
Guru Meditation Error: Core 1 panic'ed (StoreProhibited). Exception was unhandled.
Core 1 register dump:
PC : 0x4000c46c PS : 0x00060130 A0 : 0x800d0e74 A1 : 0x3ffb1f70
A2 : 0x00000000 A3 : 0xffffffff A4 : 0x0003f480 A5 : 0x00000000
A6 : 0x00000001 A7 : 0x00003f48 A8 : 0x00000000 A9 : 0x3ffb1f40
A10 : 0x4008ed10 A11 : 0x000001e0 A12 : 0x00000000 A13 : 0x3ffd1efc
A14 : 0x00060120 A15 : 0x00000000 SAR : 0x0000001d EXCCAUSE: 0x0000001d
EXCVADDR: 0x00000000 LBEG : 0x4000c46c LEND : 0x4000c477 LCOUNT : 0x00003f47

Backtrace: 0x4000c46c:0x3ffb1f70 0x400d0e71:0x3ffb1f80 0x400d4617:0x3ffb1fb0 0x40088d2d:0x3ffb1fd0

Resources and Suggestions

Feel free to post useful resources, suggestions or show off your projects here. Older comments of this nature can be found in #21 .

Unable to flash the board

Hello,
I'm having issues flashing projects to the board. Sometimes i can, then after a while i can no longer flash, i get error: "A fatal error occurred: Timed out waiting for packet content"
Would you happen to know any solution? I was thinking about replacing the HL-340
thanks

BOM list

Nice work @vroland ! I am trying to fabricate one board and get the dusty ED060SC4 part working.

Are you able to generate the BOM so that it's easier to have the parts ordered?

Or if you have a spare one, i wont mind buying it as well! My previous attempt to design a board that drinks the e-ink failed and your board will be useful to help me play around, test the e-ink displays to make sure it's working before making a revision based off your design. :)

SMPS Power Chip Decision Question

Hi @vroland!

First of all, I'm really excited for this project and really one of the thing I've been searching for. This is awesome!
I'm currently, building the newest design based on the current gerbers file on hardware/epaper-breakout/gerbers and am also trying to understand the schematics and comparing it to other available e-paper display driver like the Inkplate6 and Waveshare's IT8951. In the design I saw you use LT1945, L7915 and L7815 to supply the necessary power to the e-paper display and I believe you also mentioned that the design is taken from https://hackaday.io/project/21607-paperback-a-desktop-epaper-monitor.

My question are,

  1. What's the reason behind choosing those instead of using TPS65186 (which is designed specifically for e-paper) ?
  2. Is there a plan to use TPS65186? Looking at the Inkplate6 is seems pretty straight-forward to implement.

Thanks again!

LT1945 issues

Hi,
I soldered a v4 board and tested it without the ePaper display connected. Unfortunately, part U2 (LT1945) burnt down between the pins 6 & 7 (top left). As I'm not that experienced at SMD soldering, I gave it a new try, soldered a new board and tested every single connection, it was all fine. However, the part burnt down at exactly the same place.

All parts were ordered from LCSC, LT1945 from AliExpress (https://www.aliexpress.com/item/32863876207.html?spm=a2g0s.9042311.0.0.290d4c4dfx2shh)

Has someone else faced this issue?
Is testing without the ePaper display recommended?

At the 2nd try I didn't solder the esp32 for now. Could this be the problem?

Thanks!

Demo crash

So I managed to compile the demo file but it crashes. This is the output in command prompt... any ideas?

W (993) main: Hello World!

Heap summary for capabilities 0x00000800:
At 0x3ffae6e0 len 6432 free 0 allocated 6312 min_free 0
largest_free_block 0 alloc_blocks 22 free_blocks 0 total_blocks 22
At 0x3ffb2a20 len 185824 free 170644 allocated 15036 min_free 169740
largest_free_block 169740 alloc_blocks 26 free_blocks 2 total_blocks 28
At 0x3ffe0440 len 15072 free 15036 allocated 0 min_free 15036
largest_free_block 15036 alloc_blocks 0 free_blocks 1 total_blocks 1
At 0x3ffe4350 len 113840 free 113804 allocated 0 min_free 113804
largest_free_block 113804 alloc_blocks 0 free_blocks 1 total_blocks 1
At 0x4008c9dc len 79396 free 79360 allocated 0 min_free 79360
largest_free_block 79360 alloc_blocks 0 free_blocks 1 total_blocks 1
Totals:
free 378844 allocated 21348 min_free 377940 largest_free_block 169740
Heap summary for capabilities 0x00000400:
At 0x3f800000 len 4194303 free 4194264 allocated 0 min_free 4194264
largest_free_block 4194264 alloc_blocks 0 free_blocks 1 total_blocks 1
Totals:
free 4194264 allocated 0 min_free 4194264 largest_free_block 4194264
Guru Meditation Error: Core 1 panic'ed (LoadProhibited). Exception was unhandled.
Core 1 register dump:
PC : 0x400d8ac5 PS : 0x00060f33 A0 : 0x800d53a0 A1 : 0x3ffb8ea0
0x400d8ac5: rmt_set_tx_intr_en at C:/Users/LGT/Desktop/esp-idf/components/driver/rmt.c:378 (discriminator 2)

A2 : 0x00000003 A3 : 0x00000008 A4 : 0x3ffb13f4 A5 : 0x00000000
A6 : 0x3ffb13f4 A7 : 0xdfffffff A8 : 0x00000000 A9 : 0x00000004
A10 : 0x00000002 A11 : 0x00060f20 A12 : 0x3ffb654c A13 : 0x00000001
A14 : 0x000000fe A15 : 0xffffffbf SAR : 0x0000001d EXCCAUSE: 0x0000001c
EXCVADDR: 0x00000000 LBEG : 0x00000000 LEND : 0x00000000 LCOUNT : 0x00000000

ELF file SHA256: 50fa5ed7bb33b1ef

Backtrace: 0x400d8ac2:0x3ffb8ea0 0x400d539d:0x3ffb8ed0 0x400d4662:0x3ffb8ef0 0x400d4540:0x3ffb8f40 0x400d424b:0x3ffb8f70
0x400d8ac2: rmt_ll_enable_tx_end_interrupt at C:/Users/LGT/Desktop/esp-idf/components/soc/esp32/include/hal/rmt_ll.h:183 (discriminator 2)
(inlined by) rmt_set_tx_intr_en at C:/Users/LGT/Desktop/esp-idf/components/driver/rmt.c:378 (discriminator 2)

0x400d539d: rmt_pulse_init at C:/xampp/htdocs/epdiy/components/epd_driver/rmt_pulse.c:42

0x400d4662: epd_base_init at C:/xampp/htdocs/epdiy/components/epd_driver/ed097oc4.c:102

0x400d4540: epd_init at C:/xampp/htdocs/epdiy/components/epd_driver/epd_driver.c:865

0x400d424b: epd_task at c:\xampp\htdocs\epdiy\examples\demo\build/../main/main.c:133

Rebooting...

Discontinued part

In the BOM, the 200k potentiometer is discontinued. I can't find a replacement on LCSC either I'm afraid. Ordered them off AliExpress now and Western vendors have Bourns 3x3 pots so it's not impossible to get, but do you know of a replacement part on LCSC perhaps for other future builders?

It's the EVM3ESX50B25 btw

Want to cooperate with you

Can you share your email?
We are Lilygo Company.
I want to cooperate with you on some projects related to ink screen.

Question about Parts List / BOM

Hi @vroland,

thanks for the cool project! Looks very nice :) I would like to build a board too!

I was wondering which parts list to use:

I see that in the newest version of the PCB a jumper was added, I guess that one could be added into the parts list too. Or did I get this wrong?

Or should I refer to the schematics and get the required parts from there?

Thanks a lot!

Questions about the components

Hi @vroland I love this and I am eager to make this thing! I plan on making it as compact as possible and also as cheap as possible, so I have some questions. Hope this is the right place to ask those...

  1. I struggle with the BOM as the components are not marked with designators according to the schematic. Would it be possible for you to update the bom with component numbers?
  2. in schematic IRLML6402 is used but it seems large mosfet is used on the pictured board (or is that a different component?). Is that just due to newer schematic revision?
  3. Is there a reason why such a large regulators are used? There seems to be quite a few alternatives in SOT-89 like:
    https://lcsc.com/product-detail/New-Quadratic-Unclassified-Data_MDD-Microdiode-Electronics-78L15_C414028.html
  4. Is ESP-WROVER required for its larger memory or can usual ESP-WROOM-32 be used?
  5. I don't see the potentiometer in the schematic, also is it possible to provide resistance values for each display type?
  6. Any particular reason why 74HC4094 is used instead of more widely available 74HC595? I see there are some differences between the two.
  7. I see AMS1086CD-3.3 is used in BOM and LT1086 in the schematic, both of which have very large quiescent current. I use HT7333 in my ESP projects without problems. Maybe separate regulators for the display and the ESP would make sense? It would also be possible to easilly cut power to the display circuitry that way when the refresh is done to save more power.

Please don't take these questions as nitpicking on your awesome project, it's just me being OCD. I want to optimize everything as much as possible so it can be used in compact low power projects.

Draw Image API Question

Hi!

I was tinkering and working on the epdiy board to display images to the e-paper display.
I know that in the API you can use epd_draw_grayscale_image() to display image with the assumption that the previous display state is all white(cleared).

Is there a way or an API that I can use, so that I can update the display from an image buffer with the assumption that the previous display is non-white? For example, the current display is showing an image from an image buffer and I wanted to update the display with a new image buffer without clearing the display.

Thanks!

Use the terminal example as an actual terminal

I had great fun already using the Serial Terminal example, and with a bit of foolishness i added a second USB serial to route my PC keyboard from one terminal into the e-ink terminal session (by connecting the second USB-Serial TX line to the RX of the CH330). One problem arose when trying to update the board: the second usb-serial causes the communication to fail.

I'd like to have a proper input method on the ESP32. Could be as simple as just using a second serial port (they can be routed to any GPIO) and then pushing them towards the regular serial output. That will also allow some control options, like the classical terminals used to have. Alternatively a PS2 port, Bluetooth host or USB host could also work. I don't think we have the GPIOs left for a full keyboard matrix (i think you'd need about 20 GPIOs to do it).

Any thoughts on what you'd like to do in terms of input devices? We could make the expansion header a bit more useful by adding in as much of the GPIOs as we can.

(besides this hardware/software upgrade the terminal code would need a pretty decent upgrade too, to get to 80columns width, work with a cursor, stuff like VIM would be useful to have. But the first tests were really pleasing!)

Heck at some point i'd love to see the ESP32 do an SSH into my desktop :P (or maybe use a seperate ESP32 for that, so the current chip can focus on being a terminal).

SSH on ESP32: https://github.com/ewpa/LibSSH-ESP32

RV1 gives only 0.391V

Hi,
I'm trying to calibrate voltage. Between VCOM pad and GND there is constant voltage of 0.391V. I haven't flashed esp yet - just plugged to usb.

Copyright infringement 'Weather' example

You have blatantly copied my G6EJD weather station software without recognising me as the author as required by the GitHub licence and my licence, see here:

This software, the ideas and concepts is Copyright (c) David Bird 2018. All rights to this software are reserved.
Any redistribution or reproduction of any part or all of the contents in any form is prohibited other than the following:

  1. You may print or download to a local hard disk extracts for your personal and non-commercial use only.
  2. You may copy the content to individual third parties for their personal use, but only if you acknowledge the author David Bird as the source of the material.
  3. You may not, except with my express written permission, distribute or commercially exploit the content.
  4. You may not transmit it or store it in any other website or other form of electronic retrieval system for commercial purposes.
    The above copyright ('as annotated') notice and this permission notice shall be included in all copies or substantial portions of the Software and where the
    software use is visible to an end-user.

I have today issues a copyright infringement take-down notice on LilyGo who included your code and now require you to do the same, or I shall raise a GitHub Take-Down notice within 5-days if you have not made the necessary changes.

Memory footprint of epd_init()

The issue was found while using LilyGO's port of the epdiy library for Arduino/ESP32:
https://github.com/Xinyuan-LilyGO/LilyGo-EPD47
However, is seems to be applicable for the 'master' library as well.

Ok. Let's add few debug print messages near epd_init() function, as follows:

Serial.print(F("before epd_init: Free heap size: ")); Serial.println(ESP.getFreeHeap());

    epd_init();

Serial.print(F("after epd_init: Free heap size: ")); Serial.println(ESP.getFreeHeap());

This is a console output for the test above running on WROVER-E with 8 MB of PSRAM:

before epd_init: Free heap size: 194912
after epd_init: Free heap size: 97856

So, the epd_init() takes about 97 Kbytes of built-in ESP32 static RAM.

Is it good or bad? The answer depends on whether or not we gonna use other functions of the ESP32 SoC...
The space remaining is Ok to bring up Wi-Fi stack or Bluetooth, but not both. 😞

The epd_init() function code contains the following:

conversion_lut = (uint8_t *)heap_caps_malloc(1 << 16, MALLOC_CAP_8BIT);

When we alter the line onto this (valid for built together with Arduino/ESP32) :

    conversion_lut = (uint8_t *)heap_caps_malloc(1 << 16,
                          psramFound() ? MALLOC_CAP_SPIRAM : MALLOC_CAP_8BIT);

 - it's getting much better now:

before epd_init: Free heap size: 194912
after epd_init: Free heap size: 163408

My sketch works fine to me when connversion LUT table is located in PSRAM. However, we yet need to:

  • find an equivalent of psramFound() in ESP-IDF, and
  • make sure that there is no significant performance reduction.

Kindle touch(d01200) screen SPI interface

Hi :)
Sorry, This is not an issue but just a newbie question.

Really happy to see this repo exist, Thank you for your work. I have an old kindle touch that uses an E-Ink screen ED060SCG(LF)T1. I wanted to use this as my DIY project and make use out of it, I'm new to this field so my searches are limited and I'm unable to find a way to connect that screen connector to my Arduino uno. It would be great if you can give me the advice to find a proper SPI interface or display driver for this model. Thank you so much.

Screenshot 2020-09-13 at 4 59 20 PM

Q1 always open

Hi,
awesome project.
i see that Q1 always open. Better add transistor to ground and SMPS_CTRL. Other pin of R1 connect to pin 2 of Q1.
I make a little bit changes in layout/components and all works fine.

Best wishes

some suggestions

  1. Because there is no corresponding API, it is difficult to calculate the word wrap. Can you provide the ability of automatic line wrap In the display string function?
  2. Can you provide the API function of drawjpg() or drawbmp() ?

This is another API about ink screen project, With the ability to read and display JPG, BMP, PNG,
for reference
https://github.com/m5stack/M5EPD/blob/main/src/M5EPD_Canvas.cpp

README for terminal?

I just got a device to run the demo.
However, I can't get the terminal to run. I assumed that it's the same method of building and running, and then writing stuff to /dev/ttyUSB0 (e.g. using script -f /dev/ttyUSB0), but no joy, reading from UART_NUM_1 returns with 0.
Should I have built something differently?

I'm using the rev2/3 config

Thanks!

Difference between V2 and V4

I can't find much information on this. Just some pin differnences and one additional pin GPIO15 is now used. Can you elaborate on that please? :)

Inductors

Hello,
I got the board, i'm trying to solder it. could you tell me if the inductors have polarity and so how to solder them? thanks

Differences between epaper-breakout.pdf and bom.csv

Hi,
bom.csv lists designators which are non existent on the board and also is not coherent with epaper-breakout.pdf.

Here are differences that I've found:

designator BOM PDF
C6 4.7uF 0.33uF
R1 not listed 10kOhm
C7 0.1uF 0.33uF
C10 4.7uF 1uF
C11 100pF 1uF
C19, C20 1uF not listed
L3, L4 22uH not listed
R8, R9 10kOhm 39kOhm
R19 10kOhm not listed
R14 390kOhm 400kOhm
R16 300k not listed
R17 27k not listed
R18 110kOhm not listed
U3 LT1945 L7915
U4 not listed L7815

Which of these sources should be treated as the ground truth?

Beefed up power supply

Not an issue but a question ... is there a reason why you beefed up the power supply / regulators in the later version of the PCB ?. Cannot believe that the display needs that much power ?

Arduino IDE examples

Would it be possible to add an example for arduino ide? That would make development for this much more accessible for many people, me included :)

Help us improve our products

Hi , @vroland

We are making a 4.7-inch ink screen board. It just happens that the driver you write is suitable for our screen. I have changed it to the Arduino method. It is suitable for novices who are not familiar with IDF. Link:

https://github.com/Xinyuan-LilyGO/LilyGo-EPD47

We want you to help us improve this product, do you have any intentions? If you like, we will send you the board for free, please send your address to this mailbox [email protected], thank you

Low power optimizations

I am working on low power optimizations for my board and I was able to go just below 30uA in deep sleep. Probably more can be done but I'm quite happy with this result.

Changes required:

  1. High side switch for EPD 3.3V power rail, should be possible to use SMPS_CTRL pin for it
  2. Software optimizations before going to sleep - setting all shift register pins LOW (SMPS_CTRL HIGH as it's inverted) (or drive OE pin low, requires additional ESP32 pin), i2s deinit (issuing PR now)
  3. run epd_deinit(); right before going to sleep (added with PR request).
  4. (outside epd driver) use rtc_gpio_isolate on GPIO12 and GPIO0 before going to sleep

Adding sofware sofware rotation

I started a EPDiy Fork with the mission to add sofware rotation to the Epaper.
I want to leave this ticket open to document the challenges I go into but also to ping @vroland and other developers that have more experience than me with this library in case I get stuck.

So far I have this 3 points open:

  1. Add software rotation in epd_draw_pixel ( epd_driver.c ) This I already did in Lilygo repository and works well. Then automatically all geometric functions that draw using epd_draw_pixel will be already rotated - Implemented
  2. Add rotation to fonts. According to Valentin this should be easier in this new version of the component
    Notes: Ideally draw_char ( font.c ) should be refactored to use also epd_draw_pixel - Implemented
  3. Add rotation to image functions like epd_copy_to_framebuffer. This one looks the most complicated, since the whole "buffer" should be rotated a part of the initial x & y coordinated.

About 3 I'm not sure if it's the best to do it in epd_copy_to_framebuffer or on a helper function that will rotate the pixels before sending it to the mentioned function.

Possible rotation values

0 Default landscape (As is now)
1 90° clockwise Portrait
2 180° inverted landscape
3 270° inverted Portrait

Naming for the new functions

uint8_t epd_get_rotation();

void epd_set_rotation(uint8_t rotation);

Update BOM

Hi,

I was trying to upload the gerber files and the BOM to a manufacturer, as I don't have the skills to produce a PCB and to solder. Unfortunately on some parts the manufacturer was not able to determine the LCSC parts. Could you pls help me out, as I don't know which alternative parts can fit/have same pinouts? Thanks a lot!
Bildschirmfoto vom 2020-11-02 15-52-19

Potential issue with GPIO12

GPIO12 (MTDI pin) on the ESP32 when pulled high on boot sets another LDO voltage:

image

Which will cause a brownout on the flash-chip in the wrover. We've learned that the hard way with the Hackerhotel 2019 badge project i was part of.

No idea if the display is capable of pulling the pin high on boot, but it might be interesting to verify. I have a few V2 boards (with my modifications bodged in) that aren't booting right now, will look into this.

A fix is relatively easy: burning a fusebit will set the voltage permanently. It is however unfortunate that not all wrovers require the same voltage IIRC.

Wrong voltage

Hey,
I was soldering a v4 board today i finished it then when i powered it on i saw that there was around 5v where there should have been 3.3v, and also it seemed that ground and 3.3v were shorted. After some testing i think the mistake was that i soldered the D4 diode the wrong way (it's the one that is direclty connected to +15v on one side and to one of the inductors on the other)
I corrected that and now 3.3v and ground are no longer shorted but still i'm getting around 4-5v where there should be 3.3v. THe usb to uart transceiver is not recognized by the pc and i cannot flash the esp32 with an external usb to uart board. should i just discard the board? i also tried swapping the MCP1700 LDO
thanks

Framerate

Hello,
This looks really good. How many fps can it pull ? Could it be suitable for office work like programming?

ED060KG1(LF) Support

This is the display for Kobo Glo HD here. I see the ED060KD1 and ED060KC1 in the README which match the resolution and pin count and should work in V5 of the board. Any reason ED060KG1(LF) is not supported or is it just left out of the list?

Updated KiCad files

Would it be possible to get the .pcb and .sch files that correspond to the latest gerbers updated in the repo?

How to use fontconvert.py

image
I observed the code and found that three parameters are required.
They are name, size, and fontstack.

But I cannot execute it correctly. Can you give some pointers?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.