PINE64
PineTime display and micropython - Printable Version

+- PINE64 (https://forum.pine64.org)
+-- Forum: PineTime (https://forum.pine64.org/forumdisplay.php?fid=134)
+--- Forum: Development Discussion on PineTime (https://forum.pine64.org/forumdisplay.php?fid=136)
+--- Thread: PineTime display and micropython (/showthread.php?tid=8836)

Pages: 1 2


PineTime display and micropython - danielt - 01-19-2020

Just wondered if anyone has got the display going from MicroPython.

So far I've spent most of my time on PineTime hacking together a bootloader robust enough to allow me to stick the back on (albeit with something I could undo in an emergency). Nothing too fancy... just getting the bootloader and app cooperate to turn the user button into a watchdog enforced long press reset button.

I've been using MicroPython with a BLE REPL as a test payload and the next step is to get something on the display so I just wondered if someone is ahead of me there and already has this going in Python? Once the back is on I'd like to at least see the time!


RE: PineTime display and micropython - tomthetaffer - 01-19-2020

This looks great, I had no idea we could use Python for this kind of project.
I'll certainly start tinkering with this as soon as I have the time.
I'd love to see any examples of your work you may have.


RE: PineTime display and micropython - Memiks - 01-19-2020

(01-19-2020, 04:11 AM)danielt Wrote: Just wondered if anyone has got the display going from MicroPython.

So far I've spent most of my time on PineTime hacking together a bootloader robust enough to allow me to stick the back on (albeit with something I could undo in an emergency). Nothing too fancy... just getting the bootloader and app cooperate to turn the user button into a watchdog enforced long press reset button.

I've been using MicroPython with a BLE REPL as a test payload and the next step is to get something on the display so I just wondered if someone is ahead of me there and already has this going in Python? Once the back is on I'd like to at least see the time!

Hi Danielt,

I found this project https://github.com/devbis/st7789_mpy
but not tested for the moment since I would like to have a bootloader to test before.

Could you please provide your bootloader to test ?

I also found some information from Hynitrion about the touch screen, please see in this Zip file : https://wiki.pine64.org/images/2/2f/CST816S.zip

If I have a way to test I think I could help you.

BR,
Memiks


RE: PineTime display and micropython - danielt - 01-20-2020

(01-19-2020, 06:05 PM)Memiks Wrote:
(01-19-2020, 04:11 AM)danielt Wrote: Just wondered if anyone has got the display going from MicroPython.

So far I've spent most of my time on PineTime hacking together a bootloader robust enough to allow me to stick the back on (albeit with something I could undo in an emergency). Nothing too fancy... just getting the bootloader and app cooperate to turn the user button into a watchdog enforced long press reset button.

I've been using MicroPython with a BLE REPL as a test payload and the next step is to get something on the display so I just wondered if someone is ahead of me there and already has this going in Python? Once the back is on I'd like to at least see the time!

I found this project https://github.com/devbis/st7789_mpy
but not tested for the moment since I would like to have a bootloader to test before.

Could you please provide your bootloader to test ?

My work to date can be found at https://github.com/daniel-thompson/wasp-os (the bootloader and micropython are both submodules which you can look at independently if you prefer). Having said that there's no documentation at this point... I'm still focused on getting the time to display (given this the device is a watch and all that).


RE: PineTime display and micropython - tomthetaffer - 01-20-2020

(01-20-2020, 03:49 AM)danielt Wrote:
(01-19-2020, 06:05 PM)Memiks Wrote:
(01-19-2020, 04:11 AM)danielt Wrote: Just wondered if anyone has got the display going from MicroPython.

So far I've spent most of my time on PineTime hacking together a bootloader robust enough to allow me to stick the back on (albeit with something I could undo in an emergency). Nothing too fancy... just getting the bootloader and app cooperate to turn the user button into a watchdog enforced long press reset button.

I've been using MicroPython with a BLE REPL as a test payload and the next step is to get something on the display so I just wondered if someone is ahead of me there and already has this going in Python? Once the back is on I'd like to at least see the time!

I found this project https://github.com/devbis/st7789_mpy
but not tested for the moment since I would like to have a bootloader to test before.

Could you please provide your bootloader to test ?

My work to date can be found at https://github.com/daniel-thompson/wasp-os (the bootloader and micropython are both submodules which you can look at independently if you prefer). Having said that there's no documentation at this point... I'm still focused on getting the time to display (given this the device is a watch and all that).

Thank you for sharing this. Knowing some python I think this will be a good route for me to take.


RE: PineTime display and micropython - Memiks - 01-20-2020

YES ! really thank you for this.

It will be the first step for me to develop to the pinetime Wink.

I check that and give you feedback soon !

Thanks.


RE: PineTime display and micropython - lupyuen - 01-20-2020

PineTime's touchscreen controller is so interesting that I wrote a whole article about it :-)

Building a Rust Driver for PineTime’s Touch Controller


RE: PineTime display and micropython - danielt - 01-21-2020

(01-20-2020, 06:41 PM)Memiks Wrote: YES ! really thank you for this.

It will be the first step for me to develop to the pinetime Wink.

I check that and give you feedback soon !

Thanks.

Great. It will be interesting to compare notes. I have started experimenting with porting the pure-Python RPi ST7789 driver from pimoroni but it hasn't sprung into life yet.

(01-20-2020, 09:26 PM)lupyuen Wrote: PineTime's touchscreen controller is so interesting that I wrote a whole article about it :-)

Building a Rust Driver for PineTime’s Touch Controller

Cool. I've been enjoying your articles.


RE: PineTime display and micropython - danielt - 01-21-2020

Just checked in a proof-of-conept display driver based on the adafruit+pimoroni one. Nothing fancy at this point but we can do basic line by line stuff:

Code:
import pinetime
tft = pinetime.st7789()
tft.set_window()
for i in range(240):
    tft.data([0xf8, 0x00] * 240)

I might just spend a little while at this point seeing if I can draw the pine logo.
Drawing the pine logo from C with the least possible code size is about to a side challenge to see if we can give the bootloader a splash screen...


RE: PineTime display and micropython - tomthetaffer - 01-22-2020

Would it be possible for you to give us a brief Would it be possible for me to flash this to a Pinetime via a Raspberry Pi?
I'm very eager to get started with learning this, and just need a bit of guidance on how to start with Wasp-Os