I really like everything about your keypad, the design, simplicity and focus on battery life.
An alarm keypad is characterized (by me) by shortcut buttons to arm or disarm the alarm, plus the usual keypad to enter a code.
HA Setup
I've been looking for a keypad that I can use with the homeassistant alarm. I'm using the native one with alarm_control_panel in configuration.yaml, not an extra app. States are armed_home, armed_away and disarmed. There is a possibility to add more, but I'm pretty sure these are the standard that 99% use. Obviously, this would be automated via homeassistant and the keypad does not have to speak to the alarm system directly, my point is just that I think there should be 3 buttons: arm away, arm home and disarm.
Commercial Models & Design
I've been looking for an alarm keypad, that works over Zigbee and has a simple design.
America has a Comcast model, but that's hard to get here in Europe, there is the "Frient Keypad", but I think there are too many buttons, they aren't placed logically, it's too big etc. Other than that, there's nothing I could find in the zigbee space.
Design wise, I think you could just make it a 3x3 keypad, {#, 0, enter} bottom row and a top row with the 3 alarm buttons.
I know I'm not the only one looking, if you start looking around you see that many find the commercial options available lackluster and describe this as a "holy grail". So I think this could really be of interest.
Functionality
I've also thought a little bit about how I think it could function. Without digging into your code, I imagine that the current keypad collects inputs and then sends them once you hit the enter button, which would make it unidirectional. Correct me if I'm wrong.
You said inputs are prefixed with 1, so the easiest way to implement this would be prefix with 2 for armed home, 3 for armed away, 4 for disarmed.
In this case, I would like to consider a bidirectional communication logic. The reason for that is that the user might want to have confirmation that the arming status changed. So home assistant could reply with rejected or the new status, and make a led behind the appropriate button light up shortly. You could also make it so that pressing # without any numbers just sends the current status, so it could be used to check.
This isn't strictly necessary, HA could also handle it without replying to the keypad, by sending a notification to a phone, make another light flash etc.
Closing Thoughts
I understand that you probably made this keypad for the situation in your home, and you might not be using alarm sensors, but I want to give it a shot at least. I think I'm too far away from hardware programming to contribute much, but I could test and invest in prototypes.
I really like everything about your keypad, the design, simplicity and focus on battery life.
An alarm keypad is characterized (by me) by shortcut buttons to arm or disarm the alarm, plus the usual keypad to enter a code.
HA Setup
I've been looking for a keypad that I can use with the homeassistant alarm. I'm using the native one with
alarm_control_panelinconfiguration.yaml, not an extra app. States arearmed_home,armed_awayand disarmed. There is a possibility to add more, but I'm pretty sure these are the standard that 99% use. Obviously, this would be automated via homeassistant and the keypad does not have to speak to the alarm system directly, my point is just that I think there should be 3 buttons: arm away, arm home and disarm.Commercial Models & Design
I've been looking for an alarm keypad, that works over Zigbee and has a simple design.
America has a Comcast model, but that's hard to get here in Europe, there is the "Frient Keypad", but I think there are too many buttons, they aren't placed logically, it's too big etc. Other than that, there's nothing I could find in the zigbee space.
Design wise, I think you could just make it a 3x3 keypad, {#, 0, enter} bottom row and a top row with the 3 alarm buttons.
I know I'm not the only one looking, if you start looking around you see that many find the commercial options available lackluster and describe this as a "holy grail". So I think this could really be of interest.
Functionality
I've also thought a little bit about how I think it could function. Without digging into your code, I imagine that the current keypad collects inputs and then sends them once you hit the enter button, which would make it unidirectional. Correct me if I'm wrong.
You said inputs are prefixed with 1, so the easiest way to implement this would be prefix with 2 for armed home, 3 for armed away, 4 for disarmed.
In this case, I would like to consider a bidirectional communication logic. The reason for that is that the user might want to have confirmation that the arming status changed. So home assistant could reply with rejected or the new status, and make a led behind the appropriate button light up shortly. You could also make it so that pressing
#without any numbers just sends the current status, so it could be used to check.This isn't strictly necessary, HA could also handle it without replying to the keypad, by sending a notification to a phone, make another light flash etc.
Closing Thoughts
I understand that you probably made this keypad for the situation in your home, and you might not be using alarm sensors, but I want to give it a shot at least. I think I'm too far away from hardware programming to contribute much, but I could test and invest in prototypes.