Chronio, the amazing project from which I've drawn a lot of inspiration, is the first place I saw a Memory LCD. The model used in that project is no longer produced, but a similar one, the 1.28" LS013B7DH03, is readily available. So I bought one, and realized three things right away
- 1.28" diagonal is crazy small. I wanted something bigger, and fitting all the circuitry I wanted on an appropriately-sized PCB was going to be tricky.
- I definitely wanted to include a light of some kind in my design.
- Generating a 60Hz signal, which is required by the display to prevent burn-in, is going to be a bit of a pain.
The next biggest memory LCD available from Sharp is the LS027B7DH01A, which is 2.7" diagonal. I figured this was just too big for a smartwatch, so I was frustrated. Until I stumbled on something fortuitous:
Lighting, a pleasant surprise, and a baffling discovery
When reading about lighting options for memory LCDs, I came across Flex Lighting, who manufacture an ultra-thin frontlight that laminates on to memory LCDs. The product looked promising, but I couldn't find any way to buy the light membrane by itself; everywhere seemed to only sell the lights pre-attached to a display. However, in the process of looking, I discovered the FlexLighting 12616, a 1.8" diagonal Memory LCD with a light attached. It seemed perfect, so I dug deeper. Like their other products, the 12616 is based on a Sharp Memory LCD. This one is based on the LS018B7DH02, a product which exists nowhere in Sharp's catalog, and can't be purchased anywhere except as part of the 12616. The only reference I could find from Sharp to this device is from their 2018 LCD product catalog (PDF Warning), which lists it as "under development."
Let's just guess
Aside from RF (which, speaking as the holder of an extra-class ham radio license, is dark sorcery incomprehensible to mere mortals), I didn't think there was much in electronics development that was more frustrating than trying to find information in a poorly-written manufacturer's datasheet. It turns out I found something: trying to find information without any manufacturer's datasheet.
I'm reasonably comfortable guessing the communications protocol. Every other memory LCD from Sharp has the same unidirectional (write-only) SPI interface on a 10-pin, 0.5mm pitch FFC connector. However, there are two distinct groups of memory LCDs that I've been able to determine: ones that require 5V power and a 1Hz biasing signal on the EXTCOMIN pin, and ones that require 3.3V power and a 60Hz biasing signal on EXTCOMIN. Everything smaller than the 1.8" display is in the 3.3V class, and everything larger is in the 5V class. I'll be able to experiment when I get my display in a few days, but until then I'm a bit stuck: the schematic is done and the PCB is routed... unless I need to go back and add in a 5V regulator in addition to the 3.3V one.
I suspect (and hope, desperately) that the display will be 3.3V, since 1.8" is closer to 1.28" than 2.7", but I won't know for sure until I can try it.
60Hz, or maybe 1Hz
The 1.28" screen I've been playing with requires a 60Hz signal on EXTCOMIN. The nRF52840 runs FreeRTOS and supports multiple tasks. The signal can be +/- a few Hertz, so setting a 16ms timer and toggling a digital pin every time it goes off should solve the problem, right?
Well yes, but also no: setting this timer raises the apparent power consumption on my dev board from ~60uA to ~500uA. (Note: I'm using the Sparkfun Dev Board with the power LED desoldered. The power LED draws 6mA!). This is measured on a digital multimeter, so it's possible that those 500uA spikes are short and the multimeter's measurement techniques cause it to display the peak rather than the average. But it's also possible that I'm actually averaging 500uA.
My current plan is to use the square wave output on the M41T62Q RTC module. I had originally chosen this particular RTC over the more popular DS1302 for space-saving reasons: the DS1302 is only available in the SOIC-8 package, whereas the M41T62Q is available in a 3mmx3m QFN-16 package -- It turns out that on a board that's only about 35mmx25mm, SOIC-8 is HUGE. The M41T62Q has two big advantages: first, it has a configurable square wave output that can range from 1Hz to 32.768 kHz (in multiples of 2). This means that I could drive either 1Hz or 64Hz, depending on what the LCD requires. Second, its operating current is only 35uA, with a 350nA timekeeping (sleep) current. Even if I assume a constant 35uA current, that's way better than the ~400uA current spike caused by waking up the nrf52840. I also wired this square wave output to a GPIO pin on the MCU, though I'm not totally sure if that's going to be useful yet.