deanhuff
Posts: 16
Joined: Sun Nov 08, 2020 2:48 pm

Picowriter - eink typewriter advise

Sat Jul 31, 2021 9:02 pm

Hello, I have decided to learn how to use the pico by attempting to create an EINK typewriter. The project goals are outlined in GitHub here

In short, my idea is to use the following hardware:
  • pi pico
  • usb HID host in pico for keyboard input
  • battery power on VBUS GPIO PIN
  • EINK SPI screen
  • Realtime clock to maintain time while powered off
The software would accept keyboard input from a usb keyboard and type it on the eink screen. Additionally, the typed characters would be written into a file in the onboard 2MB flash storage. Ultimately, i'd like to arrive at some kind of VIM type editor but that would come later.

Later on down the road, if things pan out, I'd like to add some form of wifi networking to send/receive documents and bluetooth keyboard support.

I'm looking for advise as to if my design is possible and/or any good! :)

M_P
Posts: 109
Joined: Sun Jan 06, 2013 5:40 pm

Re: Picowriter - eink typewriter advise

Sat Jul 31, 2021 10:59 pm

For the way you describe your project, e-ink would certainly be the best looking kind of display to use, but I don't know if it will be practical for what you're hoping to do. The e-ink displays I've used have a very low refresh rate (on the order of several seconds to tens of seconds) and a limited number of writes before they start to wear out. You're probably better off going with a monochrome OLED or a TFT. For service life, good old TFT is king (for now, anyway).

deanhuff
Posts: 16
Joined: Sun Nov 08, 2020 2:48 pm

Re: Picowriter - eink typewriter advise

Sun Aug 01, 2021 3:46 am

M_P wrote:
Sat Jul 31, 2021 10:59 pm
The e-ink displays I've used have a very low refresh rate (on the order of several seconds to tens of seconds) and a limited number of writes before they start to wear out.
I bought a small 2.5” eink display to test with, it hasn’t arrived yet. The specs say it is 2s refresh and 300ms partial refresh. If I’m able to get it to work with the little test display, I will upgrade to a larger 5-6” display. For the actual product.

Eink is core to the project both for battery life and for use in direct sunlight. Hopefully the refresh rates will land in the acceptable range.

hippy
Posts: 10618
Joined: Fri Sep 09, 2011 10:34 pm
Location: UK

Re: Picowriter - eink typewriter advise

Sun Aug 01, 2021 6:02 pm

If you are concerned about battery life would it not be more sensible to have some kind of keyboard matrix rather than using a USB keyboard ?

The label of the USB keyboard I am currently using states 5V @ 300mA though I am not sure how accurate that is.

deanhuff
Posts: 16
Joined: Sun Nov 08, 2020 2:48 pm

Re: Picowriter - eink typewriter advise

Sun Aug 01, 2021 7:24 pm

Yes you are correct, but USB is ubiquitous for wired keyboards. Do you have an example of a readily available matrix keyboard connection that would be lower power? It seems that even raspberry decided to just use an internal USB port for the P400's keyboard (I don't know if that's the case for sure but i only see 3 usb ports on the back of my 400). Lots of keyboards these days have USB hubs in them as well, I'm sure that will be a hurdle i'll need to overcome in this project.

out of curiosity, i purchased a USB current meter just to see what kind of draw my keyboards are pulling.

deanhuff
Posts: 16
Joined: Sun Nov 08, 2020 2:48 pm

Re: Picowriter - eink typewriter advise

Mon Aug 02, 2021 11:58 pm

deanhuff wrote:
Sun Aug 01, 2021 7:24 pm
out of curiosity, i purchased a USB current meter just to see what kind of draw my keyboards are pulling.
To follow up. I tested my USB keyboards while plugged into the pico. The result was 5.12V @ 0.001AMPS. I'm not going to worry about the keyboard being a power drain. It would be interesting to plug into a RGB keyboard and see how much power drains. I plugged in my apple aluminum keyboard (with USB hub) and it pulls 0.11A @ 5.08V

deanhuff
Posts: 16
Joined: Sun Nov 08, 2020 2:48 pm

Re: Picowriter - eink typewriter advise

Thu Aug 19, 2021 1:02 pm

I have a github and reddit for the project now. I've got basic text entry working on the device and I'm running into a few roadblocks.

1. Is there a way to increase the clock speed of the SPI interface?
- Eink by its nature is slow, but the particular implementation of the waveshare screen I'm using seems bad. Partial refreshes require an entire frame buffer to be sent to the unit (4700+ messages!) Even to just draw 1 letter on screen. I'm sure it's doing some compositing of an internal framebuffer to mesh with the new stuff to draw, but it seems that I should be able to do this more efficiently.

2. I'd like to port vi to work on my little spi screen. Does anyone know of a spi-vi port that already exists (or anything similar)?

Return to “General”