I’m possibly missing something really obvious trying to get my NSPanel set up - still pretty much a HA newbie having moved over from Homeseer, but any thoughts would be welcome as I’m running out of ideas
Hooked the unit up to USB, and as far as I can tell, flashed successfully - Now, this was via the github direct link rather than the local file because frankly, linux file systems are still a bit of a mystery to me (HAOS installed on Proxmox) and I couldn’t work out where to put the tft file that I could then point to it locally by the IP. Flashed it with the usb plugged into the HA server, usb mapped to the HAOS vm. Did try doing local machine, but it didn’t seem to want to. Looked like it was successful though - output of the log file below. Unit is picked up by HA and set up. The point where I’m getting stuck, is when hitting “Update TFT Display”, nothing happens. Tried pressing Exit Reparse first, but the only difference that seems to make is that hitting Update TFT then seems to reboot the unit. That’s pretty much where I am - I can toggle the relays on the unit from the dashboard, but other buttons like Restart don’t work either. and it just shows the default SONOFF interface.
As I said, entirely possible I’ve missed something blindingly obvious, but any thoughts would be much appreciated.
Thanks
INFO ESPHome 2023.8.3
INFO Reading configuration /config/esphome/nshall.yaml...
WARNING GPIO4 is a Strapping PIN and should be avoided.
Attaching external pullup/down resistors to strapping pins can cause unexpected failures.
See https://esphome.io/guides/faq.html#why-am-i-getting-a-warning-about-strapping-pins
INFO Generating C++ source...
INFO Compiling app...
Processing nshall (board: esp32dev; framework: arduino; platform: platformio/[email protected])
--------------------------------------------------------------------------------
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
- toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
Dependency Graph
|-- AsyncTCP-esphome @ 1.2.2
|-- WiFi @ 2.0.0
|-- FS @ 2.0.0
|-- Update @ 2.0.0
|-- ESPAsyncWebServer-esphome @ 2.1.0
|-- DNSServer @ 2.0.0
|-- ESPmDNS @ 2.0.0
|-- ArduinoJson @ 6.18.5
|-- WiFiClientSecure @ 2.0.0
|-- HTTPClient @ 2.0.0
Compiling /data/nshall/.pioenvs/nshall/src/main.cpp.o
Linking /data/nshall/.pioenvs/nshall/firmware.elf
RAM: [= ] 13.4% (used 44016 bytes from 327680 bytes)
Flash: [====== ] 63.6% (used 1166713 bytes from 1835008 bytes)
Building /data/nshall/.pioenvs/nshall/firmware.bin
Creating esp32 image...
Successfully created esp32 image.
esp32_create_combined_bin(["/data/nshall/.pioenvs/nshall/firmware.bin"], ["/data/nshall/.pioenvs/nshall/firmware.elf"])
Wrote 0x12e400 bytes to file /data/nshall/.pioenvs/nshall/firmware-factory.bin, ready to flash to offset 0x0
========================= [SUCCESS] Took 22.78 seconds =========================
INFO Successfully compiled program.
esptool.py v4.6.2
Serial port /dev/ttyUSB0
Connecting.....
Chip is ESP32-D0WD-V3 (revision v3.0)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 48:e7:29:c3:3a:58
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Auto-detected Flash size: 4MB
Flash will be erased from 0x00010000 to 0x0012efff...
Flash will be erased from 0x00001000 to 0x00005fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Compressed 1172480 bytes to 754637...
Wrote 1172480 bytes (754637 compressed) at 0x00010000 in 17.2 seconds (effective 545.7 kbit/s)...
Hash of data verified.
Compressed 17440 bytes to 12128...
Wrote 17440 bytes (12128 compressed) at 0x00001000 in 0.6 seconds (effective 235.9 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 144...
Wrote 3072 bytes (144 compressed) at 0x00008000 in 0.1 seconds (effective 308.1 kbit/s)...
Hash of data verified.
Compressed 8192 bytes to 47...
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (effective 454.7 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
INFO Successfully uploaded program.
INFO UART logging is disabled (baud_rate=0). Not starting UART logs.
Also, I highly recommend uploading the nspanel_blank.tft first. This first upload is way more difficult as you have to get rid off reparse mode, so working with a smaller file will make your life much easier.
Once you see the QR code in your screen, then you are good to go with the final (bigger) file.
And be aware that the Nextion display usen on these panel’s isn’t the best friend of httpS, so we recommend trying some local http server for this in case GitHub link isn’t working. You can setup a http server in your local computer and use that one for transferring the TFT. There are plenty of free http servers for Windows, Mac and Linux.
By the way, next time you share the logs, try to capture from right before pressing the Upload TFT button to the moment the display restarts (which could be just a couple of seconds if the transfer cannot start).
Also, the transfer shouldn’t take more than 20min to complete. If after half an hour it still on the beginning just stop the process and try again. I’ve never seen one of those super slow transfers ending successfully.
Thanks so much for the reply - progress! I found the part that says where to create the www folder for it to be available as the local directory. Funny how much easier that is when I find the right place/didn’t manage to miss that section of the instructions that said where to place the WWW folder
Had an odd error with the flash, but then realised the tft file had gone a bit hinky while FTPing it over for some reason. Recopied, flashed and now up and running Thanks again!
Just a small issue noticed after installation.
Display goes directly to screensaver. Sleep Mode is greyed out and not selectable…
Anyone else noticed this?
Mmmm, this shouldn’t be the case…
The old “Sleep mode” switch was deprecated, so this is why yours is grayed out, however you have now another number selector named “Timeout sleep” which by default is 60s. So the panel shouldn’t go to sleep at first boot until the 60s has passed.
At least one more person reported this same issue you mentioned.
I will investigate.
I will try to update, but shouldn’t this be a breaking change?
I use this in automations to turn off the living room screen at night and when I leave the house.
I finally purchased an NSPanel after seeing this great project and how far it has come. Thanks to Blackymas and the dev team for the work they have put in and a very functional setup they have achieved!!
I have a question (that may be a feature request) - I’ve been looking at the service call to load a page but was wanting to load an entity. Eg: if I push one of the physical buttons load the light entity on the screen for immediate adjustment if desired. Is that currently possible?
Awesome - that is exactly what I was after. I wasn’t sure what “default” did. Is there also a way to call that screen? Eg: if an automation turns the light on, show that screen.
Thank you for the great work.
Yesterday I had some problem loading the tft.
It turned out. I added a component for syncing the relays. But if I added that I couldn’t download the tft.
If one needs to know what to change. You can install spook. Remove Nspanel from the esphome integration and add it again. Spook will show missing components as repairs.