I bought an 1.3" ST7789 TFT display from AliExpress (like this one) and I’m trying to get it to work with ESPHome but running into boot loop issues. I cut the config file way back with this SUPER simple yaml:
esphome:
name: attictemp1
platform: ESP8266
board: d1_mini
logger:
level: DEBUG
spi:
clk_pin: D5
mosi_pin: D7
font:
- file: "comic.ttf"
id: my_font
size: 22
display:
- platform: st7789v
backlight_pin: D0
cs_pin: D3
dc_pin: D1
reset_pin: D2
lambda: |-
it.print(0, 0, id(my_font), "Hello World!");
the compiled binary is less than 300k and the device is wired like this:
You can see that my display device has no CS pin, I don’t know if that’s a problem or not but the CS pin definition is required by ESPHome.
When it fires up ESPHome boot loops with Could not allocate buffer for display!
. Here is the full log:
17:16:05.303 -> e[1;31m[E][display:017]: Could not allocate buffer for display!e[0m
17:16:05.303 ->
17:16:05.303 -> --------------- CUT HERE FOR EXCEPTION DECODER ---------------
17:16:05.303 ->
17:16:05.303 -> Exception (29):
17:16:05.303 -> epc1=0x4000e1b2 epc2=0x00000000 epc3=0x00000000 excvaddr=0x00000000 depc=0x00000000
17:16:05.337 ->
17:16:05.337 -> >>>stack>>>
17:16:05.337 ->
17:16:05.337 -> ctx: cont
17:16:05.337 -> sp: 3ffff620 end: 3fffffc0 offset: 0190
17:16:05.337 -> 3ffff7b0: 3fff04a4 00000000 3fff04a4 402024a2
17:16:05.337 -> 3ffff7c0: 00000001 00000002 3fff04a4 402039d8
17:16:05.337 -> 3ffff7d0: 3ffe88c8 3fff059c 00000020 00000000
17:16:05.337 -> 3ffff7e0: 3ffefd44 00000000 3ffee99c 402087f4
17:16:05.337 -> 3ffff7f0: 3fff059c 00000002 3ffee99c 40208865
17:16:05.371 -> 3ffff800: 3ffef9bc 00000001 3ffee99c 402037d5
17:16:05.371 -> 3ffff810: 3fff059c 00000003 00000000 00000000
17:16:05.371 -> 3ffff820: 3fff04a4 00000000 3ffff860 4020ead9
17:16:05.371 -> 3ffff830: 00000000 3ffeea0c 00000001 3fff0584
17:16:05.371 -> 3ffff840: 3fff04a4 3fff04b4 00000000 402050c6
17:16:05.371 -> 3ffff850: 0000000a 00000012 feefeffe feefeffe
17:16:05.371 -> 3ffff860: 3ffefd3c 4023ae78 402043c4 402043a4
17:16:05.371 -> 3ffff870: 00000007 00000000 3ffe8818 4023ae78
17:16:05.405 -> 3ffff880: 00000000 00000007 00000005 00000013
17:16:05.405 -> 3ffff890: 3ffe883b 4023ae8b 00000000 00000008
17:16:05.405 -> 3ffff8a0: 00000009 00000011 3ffe883d 4023aead
17:16:05.405 -> 3ffff8b0: 00000000 00000007 00000012 00000012
17:16:05.405 -> 3ffff8c0: 3ffe883f 4023aee3 00000000 00000007
17:16:05.405 -> 3ffff8d0: 00000008 00000017 3ffe8841 4023aefa
17:16:05.405 -> 3ffff8e0: 00000000 00000007 00000008 00000017
17:16:05.405 -> 3ffff8f0: 3ffe8843 4023af11 00000000 0000000e
17:16:05.439 -> 3ffff900: 0000000b 0000000b 3ffe8845 4023af27
17:16:05.439 -> 3ffff910: 00000000 00000017 00000006 00000005
17:16:05.439 -> 3ffff920: 3ffe8847 4023af2c 00000000 00000012
17:16:05.439 -> 3ffff930: 00000009 00000007 3ffe8849 4023af3a
17:16:05.439 -> 3ffff940: 00000000 00000016 00000005 00000003
17:16:05.439 -> 3ffff950: 3ffe8656 4023af3d 00000000 00000008
17:16:05.439 -> 3ffff960: 0000000d 00000011 3ffe865c 4023af5f
17:16:05.473 -> 3ffff970: 00000000 00000008 0000000a 00000011
17:16:05.473 -> 3ffff980: 3ffe87a8 4023af81 00000000 00000008
17:16:05.473 -> 3ffff990: 0000000d 00000011 3ffe87b3 4023afa3
17:16:05.473 -> 3ffff9a0: 00000000 00000008 0000000d 00000011
17:16:05.473 -> 3ffff9b0: 3ffe87be 4023afc5 00000000 00000008
17:16:05.473 -> 3ffff9c0: 0000000d 00000011 3ffe884b 4023afe7
17:16:05.473 -> 3ffff9d0: 00000000 00000007 0000000d 00000012
17:16:05.473 -> 3ffff9e0: 3ffe87f9 4023b00b 00000000 00000008
17:16:05.507 -> 3ffff9f0: 0000000d 00000011 3ffe8839 4023b02d
17:16:05.507 -> 3ffffa00: 00000000 00000007 0000000d 00000012
17:16:05.507 -> 3ffffa10: 3ffe884d 4023b051 00000000 00000007
17:16:05.507 -> 3ffffa20: 0000000d 00000012 3ffe884f 4023b075
17:16:05.507 -> 3ffffa30: 00000000 00000008 0000000d 00000012
17:16:05.507 -> 3ffffa40: 3ffe8851 4023b099 00000000 0000000e
17:16:05.507 -> 3ffffa50: 00000007 0000000b 3ffe8853 4023b0a4
17:16:05.507 -> 3ffffa60: 00000000 00000008 00000010 00000011
17:16:05.541 -> 3ffffa70: 3ffe8855 4023b0c6 00000000 00000008
17:16:05.541 -> 3ffffa80: 0000000e 00000012 3ffe869c 4023b0ea
17:16:05.541 -> 3ffffa90: 00000000 00000008 0000000d 00000011
17:16:05.541 -> 3ffffaa0: 3ffe8729 4023b10c 00000000 00000008
17:16:05.541 -> 3ffffab0: 00000010 00000011 3ffe866c 4023b12e
17:16:05.541 -> 3ffffac0: 00000000 00000008 0000000e 00000011
17:16:05.541 -> 3ffffad0: 3ffe88cb 4023b150 00000000 00000008
17:16:05.574 -> 3ffffae0: 0000000d 00000011 3ffe8900 4023b172
17:16:05.574 -> 3ffffaf0: 00000000 00000008 0000000f 00000011
17:16:05.574 -> 3ffffb00: 3ffe8857 4023b194 00000000 00000008
17:16:05.574 -> 3ffffb10: 00000011 00000011 3ffe869a 4023b1c7
17:16:05.574 -> 3ffffb20: 00000000 00000008 0000000c 00000011
17:16:05.574 -> 3ffffb30: 3ffe8859 4023b1e9 00000000 00000008
17:16:05.574 -> 3ffffb40: 0000000f 00000011 3ffe885b 4023b20b
17:16:05.608 -> 3ffffb50: 00000000 00000008 0000000d 00000011
17:16:05.608 -> 3ffffb60: 3ffe8792 4023b22d 00000000 00000008
17:16:05.608 -> 3ffffb70: 0000000c 00000011 3ffe885d 4023b24f
17:16:05.608 -> 3ffffb80: 00000000 00000008 00000013 00000012
17:16:05.608 -> 3ffffb90: 3ffe88d3 4023b285 00000000 00000008
17:16:05.608 -> 3ffffba0: 00000012 00000011 3ffe867c 4023b2b8
17:16:05.608 -> 3ffffbb0: 00000000 00000008 00000012 00000011
17:16:05.608 -> 3ffffbc0: 3ffe8667 4023b2eb 00000000 00000008
17:16:05.642 -> 3ffffbd0: 0000000b 00000011 3ffe885f 4023b30d
17:16:05.642 -> 3ffffbe0: 00000000 00000008 00000013 00000016
17:16:05.642 -> 3ffffbf0: 3ffe8672 4023b34f 00000000 00000007
17:16:05.642 -> 3ffffc00: 0000000e 00000012 3ffe872d 4023b373
17:16:05.642 -> 3ffffc10: 00000000 00000008 0000000f 00000012
17:16:05.642 -> 3ffffc20: 3ffe8764 4023b397 00000000 00000007
17:16:05.642 -> 3ffffc30: 0000000f 00000012 3ffe8861 4023b3bb
17:16:05.642 -> 3ffffc40: 00000000 00000008 00000010 00000011
17:16:05.676 -> 3ffffc50: 3ffe869f 4023b3dd 00000000 00000008
17:16:05.676 -> 3ffffc60: 0000000e 00000012 3ffe8698 4023b401
17:16:05.676 -> 3ffffc70: 00000000 00000008 00000016 00000011
17:16:05.676 -> 3ffffc80: 3ffe88ef 4023b434 00000000 00000008
17:16:05.676 -> 3ffffc90: 00000010 00000011 3ffe8863 4023b456
17:16:05.676 -> 3ffffca0: 00000000 00000008 0000000e 00000012
17:16:05.676 -> 3ffffcb0: 3ffe8865 4023b47a 00000000 00000008
17:16:05.710 -> 3ffffcc0: 0000000f 00000011 3ffe8867 4023b49c
17:16:05.710 -> 3ffffcd0: ffffffff 00000019 0000000e 00000005
17:16:05.710 -> 3ffffce0: 3ffe8869 4023b4a6 00000000 0000000e
17:16:05.710 -> 3ffffcf0: 0000000b 0000000b 3ffe886b 4023b4bc
17:16:05.710 -> 3ffffd00: 00000000 00000007 0000000d 00000012
17:16:05.710 -> 3ffffd10: 3ffe886d 4023b4e0 00000000 0000000e
17:16:05.710 -> 3ffffd20: 0000000b 0000000b 3ffe88dc 4023b4f6
17:16:05.710 -> 3ffffd30: 00000000 00000007 0000000d 00000012
17:16:05.744 -> 3ffffd40: 3ffe8743 4023b51a 00000000 0000000e
17:16:05.744 -> 3ffffd50: 0000000c 0000000b 3ffe88cf 4023b530
17:16:05.744 -> 3ffffd60: 00000000 00000007 0000000b 00000013
17:16:05.744 -> 3ffffd70: 3ffe886f 4023b556 00000000 0000000e
17:16:05.744 -> 3ffffd80: 0000000c 00000011 3ffe8871 4023b578
17:16:05.744 -> 3ffffd90: 00000000 00000007 0000000c 00000012
17:16:05.744 -> 3ffffda0: 3ffe871e 4023b59c 00000000 00000009
17:16:05.744 -> 3ffffdb0: 00000006 00000010 3ffe8873 4023b5ac
17:16:05.778 -> 3ffffdc0: ffffffff 0000000a 00000009 00000015
17:16:05.778 -> 3ffffdd0: 3ffe8972 4023b5d6 00000000 00000008
17:16:05.778 -> 3ffffde0: 0000000d 00000012 3ffe89e5 4023b5fa
17:16:05.778 -> 3ffffdf0: 00000000 00000007 00000006 00000012
17:16:05.778 -> 3ffffe00: 3ffe8650 4023b60c 00000000 0000000e
17:16:05.778 -> 3ffffe10: 00000011 0000000b 3ffe88d7 4023b62d
17:16:05.778 -> 3ffffe20: 00000000 0000000e 0000000c 0000000b
17:16:05.812 -> 3ffffe30: 3ffe8875 4023b643 00000000 0000000e
17:16:05.812 -> 3ffffe40: 0000000c 0000000b 3ffe873c 4023b659
17:16:05.812 -> 3ffffe50: 00000000 0000000d 0000000c 00000012
17:16:05.812 -> 3ffffe60: 3ffe8877 4023b67d 00000000 0000000d
17:16:05.812 -> 3ffffe70: 0000000b 00000012 3ffe8954 4023b6a1
17:16:05.812 -> 3ffffe80: 00000000 0000000e 0000000a 0000000b
17:16:05.812 -> 3ffffe90: 3ffe8879 4023b6b7 00000000 0000000e
17:16:05.846 -> 3ffffea0: 0000000b 0000000b 3ffe874d 4023b6cd
17:16:05.846 -> 3ffffeb0: 00000000 0000000a 0000000a 0000000f
17:16:05.846 -> 3ffffec0: 3ffe887b 4023b6eb 00000000 0000000e
17:16:05.846 -> 3ffffed0: 0000000b 0000000b 3ffe8738 4023b701
17:16:05.846 -> 3ffffee0: 00000000 0000000e 0000000b 0000000c
17:16:05.846 -> 3ffffef0: 3ffe887d 4023b719 00000000 0000000e
17:16:05.846 -> 3fffff00: 0000000f 0000000c 3ffe887f 4023b731
17:16:05.846 -> 3fffff10: 00000000 0000000e 0000000d 0000000b
17:16:05.880 -> 3fffff20: 3ffe8632 4023b747 ffffffff 0000000e
17:16:05.880 -> 3fffff30: 0000000b 00000011 3ffe8881 4023b769
17:16:05.880 -> 3fffff40: 00000000 0000000e 0000000c 0000000b
17:16:05.880 -> 3fffff50: 3ffe8883 4023b77f 00000000 00000007
17:16:05.880 -> 3fffff60: 0000000a 00000012 00000000 00000000
17:16:05.880 -> 3fffff70: 00000000 feefeffe feefeffe feefeffe
17:16:05.880 -> 3fffff80: 3ffefd44 3fff04a4 00000708 feefeffe
17:16:05.880 -> 3fffff90: feefeffe feefeffe feefeffe 3ffeec08
17:16:05.914 -> 3fffffa0: 3fffdad0 00000000 3ffeebc8 40206cc4
17:16:05.914 -> 3fffffb0: feefeffe feefeffe 3ffe850c 40100385
17:16:05.914 -> <<<stack<<<
17:16:05.914 ->
17:16:05.914 -> last failed alloc call: 40201048(64800)
17:16:05.914 ->
17:16:05.914 -> --------------- CUT HERE FOR EXCEPTION DECODER ---------------
17:16:05.914 ->
17:16:05.914 -> ets Jan 8 2013,rst cause:2, boot mode:(3,7)
17:16:05.948 ->
17:16:05.948 -> load 0x4010f000, len 3584, room 16
17:16:05.948 -> tail 0
17:16:05.948 -> chksum 0xb0
17:16:05.948 -> csum 0xb0
17:16:05.948 -> v2843a5ac
17:16:05.948 -> ~ld
17:16:06.016 -> e[0;32m[I][logger:166]: Log initializede[0m
17:16:06.016 -> e[0;32m[I][app:029]: Running through setup()...e[0m
17:16:06.016 -> e[0;35m[C][spi:022]: Setting up SPI bus...e[0m
17:16:06.016 -> e[0;35m[C][st7789v:010]: Setting up SPI ST7789V...e[0m
Anyway, Googling around I found an issue someone opened up 10 days ago here: https://github.com/esphome/issues/issues/1478 and it appears to be unresolved and sounds very similar to my issue so maybe it’s already been reported…?
Any suggestions?
Thanks,
-Greg