HA SwitchPlate HASPone: DIY In-Wall Touchscreen Home Assistant Controller

I decided I needed a desktop button board and wanted a model that was a little smaller than the existing desktop base currently published in the repo. Here’s the result!

Available now in dev and will be pushed to master with the next project release.

6 Likes

Wow, that looks gee to great!

1 Like

Wow that looks great, the biggest issue I have with current nextion screens is viewing angles and the cheap feeling resistive display, this looks quite high quality, resolution is ok. would be nice if they did another with a sub 3" screen but I might pick one up to play with

I’ve been running the dev branch since you released 12 days ago or so and everything seems to be ok except I’ve noticed that HA reboots seem to now anger the HASPs. I first noticed that my backlight automations weren’t happening as normal and rebooted the HASP and they were back to normal. This was pretty repeatable. Every time I rebooted HA the backlight would be unavailable in HA until I rebooted the HASP and a couple/several days would go by without issue.
Noticed today that when I updated HA to the latest release the time stopped updating and the backlight was again unavailable. Again, a reboot fixed the issue and they were back to normal again and have been since.
Haven had much of a chance to troubleshoot but thought I’d throw the behavior out there in case you know what might be the issue.

1 Like

Hey thanks for the report! I’ve noticed the same behavior and have since implemented several features on the HASP side and also the Hass side to help address this. The current build in dev has those improvements, so if you’re feeling ambitious, you might test the latest build and see if it works any better for you!

What do you think it is possible to install HASP on LANBON L8?
The device uses ESP32.


Blakadder has successfully installed tasmota https://templates.blakadder.com/lanbon_L8-HS.html

Or maybe it will be possible to connect an esp 8266 to this LCD?

3 Likes

Probably not, the HASP project is tightly tied to the Nextion touchscreen platform. Does look like an interesting device! I don’t think it will mount in a North American work box, has anyone tried it?

@luma
is there an easy way to duplicate a page? ie i have a room that controls an outdoor fan aswell as the dining room fan. i would like to put one HASP there but control both fans. ideas?

If you have a page that works well for you, could can create a copy of the yaml with a new name, then search + replace the old page number for the new. This will only really work for those pages which offer multiple copies of the same layout, which would be pages 1-3 and 4+5.

For example, let’s say you have page 2 setup like you want, and you want to do the same on page 3. Copy the page2 yaml file to a new file in the same package folder, and replace the following:

Search: _p2 and replace with _p3
Search: p[2] and replace with p[3]

1 Like

By the way, I found the Lanbon L8 only https://github.com/fvanroie/hasp-lvgl

1 Like

hasp-lvgl started out as an HA SwitchPlate clone for replacing the Nextion screen with a commodity display. We have recently added Lanbon L8 support with the help of @blakadder and it runs quite smoothly.

The code-base has diverged a lot though to accommodate lvgl features and real-time object manipulation. We’re still working on HA integration but feel free to check out the daily-builds. To learn more about the project check out the documentation.

2 Likes

First things first here - HASP-lvgl is an AMAZING project and I think it will take things to the next step over time. @fvanroie is an incredibly skilled developer and he has essentially re-written the entire HASP codebase to make it portable and performant. He also happens to be super nice and helpful and generally a joy to work with. His work on HASP hasn’t been super-visible here as he’s not a Home Assistant user, but you can thank him already for developing the tools I used to create the anti-aliased fonts along with icons from FontAwesome. That never could have happened without his work on reverse engineering the new Nextion font format and helping me use the tools he created to work with it.

I think this project will be the future of HASP.

To me, the major benefit of HASP-lvgl is the portability across multiple display devices and microcontroller options. The Nextion product in use by the HASP has served us well, but the parent company has always been challenging to work with and hasn’t gotten any better over time. Decoupling the project from that vendor results in huge benefits in terms of cost, features, and product selection. It’s going to take a lot of work but for that reason alone the work feels worth it.

However, for the immediate future my time will continue to be spent on HASP for a handful of reasons. Right now, HASP is the only solution where we have a fully-realized electronic and mechanical solution suitable for use in North America, along with integration with Home Assistant. As of the moment none of those things are true with HASP-lvgl…yet. Also, I’ve sold a bunch of these things and I feel a sense of obligation to support those existing users who were kind enough to give me money with the understanding that I wasn’t going to bail on them, and I take that pretty seriously.

I will also be working towards developing a workable electronic and mechanical solution for HASP-lvgl for North American users, in a manner similar to HASP where the entire project will be open source and buildable with reasonably common tools accessible to the home hobbyist. That effort is going to take some time, so I don’t want to set any expectations. I would be surprised if anything is ready for public test any sooner than 6 months, but I’m also not the only person working on that side of things so who knows.

This is a pretty exciting development that has been the result of over a year of work led by @fvanroie. I expect good things in the future for both the HASP and also, eventually, HASP-lvgl!

8 Likes

This is great. Love to hear it.

can you post GitHub link for HASP2 cant find it in google neither GitHub.

can anyone show the wiring schematics for the transistor and the resistor, on the wiring and how to in the guide it only shows the schematics without it, but if you buy the board you need it. Cant you wire it like that if you already have the BOM and don’t need the PCB, Currently just testing reliablility, might end up buying the pre made board.

If you’re wiring up on a breadboard for prototype, feel free to skip the resistor/transistor bit as you won’t be needing it anyway. Those form a simple low-side switch to allow the HASP to power cycle the Nextion in the rare event that a firmware update doesn’t go well. For a device that’s mounted in your wall, it’ll take a screwdriver or a trip to the breaker box to make that happen without the switch circuit. For a device that’s on your desk in front of you, you can simply pull power whenever needed if a development cycle goes sideways. As a result you aren’t losing anything you’ll need by skipping the switch, but if it’s going in your wall, I’d recommend wiring up that switch for convenience purposes. Part cost is a few cents.

So - for the bench version feel free to follow the schematic here, or check out the full schematic with the switch below, or grab the KiCad source files from the project and you can interact with the design files directly.

1 Like

You can find the repo here: GitHub - HASwitchPlate/openHASP: HomeAutomation Switchplate based on lvgl for ESP32

HOWEVER - do keep in mind there is zero Home Assistant integration at this moment in time. This is still very much an experiment and early in development. I had avoided bringing the topic up here because I don’t want to confuse people or get the pot stirred up about something that’s still a maybe.

So, just in case it wasn’t clear: HASP is still where the project is at for the immediate future.

HASP-lvgl is an experiment to see if we can’t re-platform off of the Nextion product line onto cheaper/better LCDs with more options for users to choose from. It means re-writing all of the stuff that Nextion does out of the box, and they did that with a team of coders over the span of years. It’s a test to see what is possible, and which might wind up being the future of HASP at some point down the road if things bear out.

For now, HASP is still the project, and work continues on bringing new features to HASP users.

@lumathanks for all the info! I’ll give it a try!, I am also checking other MQTT displays like this one: https://github.com/sieren/Homepoint

As mentioned earlier, the next release of HASP is going to require re-flashing the Nextion to allow for an 8x increase in the communication speed between the display and the microcontroller. While I’m at it, I’m considering making a small change to the way the page 4+5 sliders work.

The Nextion project is stone out of RAM, we are using every possible byte which means I cannot add any more buttons without removing something somewhere else. However, I find the sliders on pages 4+5 difficult to use for a few reasons, one of which is that there isn’t a good way to use them to control on/off which is a pretty major oversight.

What I’ve cooked up is the solution you see below. The text label you see above each of the 3 dimmers is already a button that can be used, but it’s much too small for my fat fingers to reliably poke at. So, instead of adding a new button (which we can’t do without deleting something else), I’ve made the slider a little smaller, leaving some room on the left. I’ve then extended the label button down and pushed it backwards in the stack, so it lives “under” the slider. Then, I can overlay an on/off toggle icon on the button so one can tell at a glance if the device is on or off, and push that button once to toggle the light state.

Here’s how that looks:

I’m also working on creating UI elements in Lovelace which will allow one to change which devices are being controlled by each HASP right in the UI without having to deal with YAML. The scene above demonstrates a few things. Each slider can be assigned to control any of your existing light. entities by simply selecting the desired entity from a drop-down list. The text above each slider can be setup in a form field, and the Font selection is also a drop-down where you can select from the fonts available in the project.

5 Likes

the 4mb memory on the back of the nexion can be desoldered and upgraded to 16mb if space is an issue just like upgrading the fake wemos minis from 4mb to pro 16mb they are Winbond 128Mbit SPI Flash Memory 8-Pin SOIC, W25Q128JVSIQ/TUBE £1.42 each from RS components