ESP8266 into existing alarm DSC System

What are the deltas? I wired and flashed a 8266 today and a quick test seems to show that it’s picking up zones from both of my zone expansion modules. I have a pgm expansion module I haven’t programmed on the panel yet so I’m not sure if it works with that or not yet. It also seems to pickup both partitions I currently have.

This is just to test with. I have an esp32 with Ethernet that I plan to use as my “real” install platform as well as optos that arrived today for ground isolation. I also think I’ll add code for MQTT publishing of zone status changes.

I’m just trying to figure out if I should or want to move to the new version you’re working on and testing currently but am not clear what the change log looks like.

Thank you, great project and documentation! I was able to breadboard and get flashed and running in about 15-20 minutes.

The new version is designed to work better with multi partitions and gives the ability to fully control each partition individually. Most of the changes involve adding full Lcd keypad emulation where you can have a separate virtual keypad assigned to each partition. These virtual keypad can be used to fully program your panel. Basically you can use your phone with the HA app and the virtual keypad as an alarm keypad. I’ve also added a panel time set function that can be used to keep the panel time updated automatically. The issue currently is that the addition of these functions are using up most of the ram resources of the ESP8266 so it’s possible that some odd behavior can occur. With the ESP32, there is no issue. I’ve moved to the ESP32 as my main dev platform as it is much more powerful device. I will try and keep the ESP8266 dev working but it is challenging.


1 Like

I just received my PCB for the Wemos D1 mini version, so switching to an esp32 is a bit harder. Do you think the Wemos C3 might work for this? The format is the same and the basic tx/rx/Vin/Grn pins are at the same place but i’m not sure if the rest would be compatible.

It looks like it will work fine. From what I see, you can use GPIO10, GPIO8 and GPIO5 instead of 5,4 and 15 as used on the d1 mini. I’ve used d1 mini pro esp32 and they work well.

@Dilbert66

Is there a schematic that is a bit more readable like the OP posted.

I want to give this a go but I can’t really make out all the resistors and transistors etc locations. The OP picture shows it nicely but it does not have all the components that you suggested for the NodeMCU V3

You can view more info here:

I am still confused. Whos instructions should I follow? yours or taligentx

both rep has info on the diagram and different ways of connecting it. I am not an expert, which method will give me full read write access and the virtual keypad with the NodeMCU ESP8266.

not all the diagrams show all the parts that are needed.

for example the list below what I need from your rep. but then on the diagram there is 33k resistor that is not on this list.

1 Ceramic Capacitor capacitance 100nF
2 Screw terminal - 2 pins pin spacing 0.137in (3.5mm); pins 2; hole size 1.0mm,0.508mm
1 Voltage Regulator - 3.3 V LM1117
1 NPN-Transistor 2N3904
2 15kΩ Resistor resistance 15kΩ
2 10kΩ Resistor resistance 10kΩ
1 1kΩ Resistor resistance 1kΩ

Q1 looks like the NPN I believe but where is the Ceramic capacitor.

then also the black wire. on this diagram I can see it but not sure where to ground it in the parts where it just shows down arrow. See below. Is that grounding to the box grounding to the ESP8266?

image

other diagram on taligentx does not show any black wire.

DSC Aux(+) ---+--- Arduino Vin pin
              |
              +--- 5v voltage regulator --- esp8266 NodeMCU / Wemos D1 Mini 5v pin
                                            esp32 development board 5v pin

DSC Aux(-) --- Arduino/esp8266/esp32 Ground

                        Arduino        +--- dscClockPin (Arduino Uno: 3)
DSC Yellow ---+--- 15k ohm resistor ---|
              |                        +--- 10k ohm resistor --- Ground
              |
              |     esp8266/esp32      +--- dscClockPin (esp8266: D1, GPIO 5 / esp32: 18)
              +--- 33k ohm resistor ---|
                                       +--- 10k ohm resistor --- Ground

                        Arduino        +--- dscReadPin (Arduino Uno: 5)
DSC Green ----+--- 15k ohm resistor ---|
              |                        +--- 10k ohm resistor --- Ground
              |
              |     esp8266/esp32      +--- dscReadPin (esp8266: D2, GPIO 4 / esp32: 19)
              +--- 33k ohm resistor ---|
                                       +--- 10k ohm resistor --- Ground

FYI, do NOT use 15k for r2/r3. That will give you the wrong voltage for the esp’s as they require a max of 3.3volt. The 15k/10k divider ratio is for arduino’s which can handle 5 volts. Use 33k/10k as my schematic indicates.

The schematic is as basic as it can be. There is no capacitor needed. Just power the nodemcu using usb instead of using the lm voltage regulator. That is an optional component as my schematic indicates. The ground symbol just shows the common connection points for all the other ground symbols. It avoids having to draw lines all over the place to show the ground connection. It does not connect to any chassis. Your parts list is not correct. Stick only to parts used in the schematic I show. 33k and 10k resistors You are looking at various implemenations of the same thing and some are misleading. The 15k/10k is not correct for the ESP devices and will most likely cause damage to the chip.

okay thanks. I dont have any means of getting a USB power source where my alarm box is unfortunately. Unless there is some kind of usb adapter I can plug into the battery.

maybe something like this? @Dilbert66

image

Perhaps. You can also use something like this:

I guess there are 12volt to usb adapters out there as well used for automotive use and those would work fine too. You don’t need anything too expensive.

I like the other adapter more. The one in the picture will work for the NodeMCU correct? I cant order from Amazon it takes too long to deliver in my country.

You can use anything that adusts from 12 volt down. It’s your choice. As long as it can provide 5volt or 3.3volt output with at least 1 amp.

okay here is the exact one I can get. it is 5v and 3 amp. so it will work? 3 amp not to much?

That should work perfectly

I am using the main branch version and before upgrading I wanted to see what the alarm-keypad-card looked like. I copied the js and three mp3 files to local/www, adding a link to /local/alarm-keypad-card.js to the resources via the dashboards → add resource, rebooted HA and cleared the browser cache. However, any attempt to add the custom card to a dashboard via custom:manual card results in “Custom element doesn’t exist: alarm-keypad-card.”.
Do I need to have the NEW branch installed on my actual esphome instance for this to work? If not, any ideas as to how to fix the error, Also, is there an easy way to upgrade while keeping zxone definitions etc.

Thanks for this project which has been one of my most used and valued.

The path for the files is actually /config/www where config is where your configuration.yaml sits. No you technically don’t need the new branch but the display won’t show anything since there is no sensor configured for that in the master branch. This custom card could work with any other alarm system as long as it provided the right inputs.

To upgrade, just copy your zone definintions from your yaml to the new version. They will be the same.

Thanks again for the help. , I upgraded to the -NEW branch and all the sensors seem to be working. However, I have tried every combination of file placement and resource pointer that I can think of without success for the alarm-keypad-card
.
For clarity, I am running standard HA OS on a pi and everything is up to date. My configuration yaml file therefore shows up in /config and I have /config/www/ where I put the 3 mp3s and the one file alarm-keypad-card.js - I did this through a manual samba copy and not by adding any repository . [All my HACS installed cards show up under config/www/community]

I then went to settings-> dashboard → resources and added the path /config/www/alarm-panel-card.js. Unfortunately no luck.

I also installed the original galaxy card via a custom repository and this seemed to work at least as far as not giving me the “Custom element doesn’t exist: alarm-panel-card.” error.

Do you have any insight into what I am missing?

The files go to /config/www but when you add the resource you use the path /local/alarm-panel-card.js
/local represents /config/www

Edit: should be /local/alarm-keypad-card.js

Sadly, that was how I originally interpreted the instructions so this was the very first version I tried, without success.

No idea what I am doing wrong, so I guess I need to keep experimenting.