Today I had some time to check LCD pinout and write a simple app that test weloop tommy LCD.
First thing first, you should read documentation for Sharp memory lcd LS013B7DH01. Next step is to read Programming memory LCD application note so you will know how to communicate with the screen.
Communication is really easy, it consists of:
- write only SPI line: SCLK, SI
- chip selection pin: SCS
- screen enable pin: DISP
The only problem with this is to know watch pinout. It's as follows:
LCD Pin | SPI name | NRF WLCSP ball | NRF Name |
SCLK | SCLK | E8 | P0.31 |
SI | MOSI | B7 | P0.28 |
SCS | SS | D8 | P0.30 |
EXTCOMIN | - | F8 | P0.04 |
DISP | - | G8 | P0.06 |
EXTCOMIN pin can be skipped because EXTMODE pin is grounded on board.
SPI MISO line is not used so can be set as NC in code.
This LCD requires 5V power supply, by default 5V voltage regulator is disconnected so LCD does not work, use P0.13 to enable voltage regulator!
The most important SPI commands are
- override single line
- override multiple lines
- clear whole screen
You cannot change just one pixel, the smallest accepted data portion is one line. Full description of a command structure and list of all commands can be found in Programming memory LCD application note
I've created a simple app that shows how to communicate with screen. It can be imported and compiled on mbed site.
In a few days I will publish pinout for:
- watch buttons
- backlight
- vibration motor
To write an accelerometer demo I still need a new watch. Thank you all for the donations, $30 more and I will have it. If you want to help please donate HERE. Thanks!
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.
You may be able to use the Adafruit Sharp Memory display library to save effort. I'm building a similar watch from scratch, same microcontroller, at least. Good luck!
Are you sure? yes | no