Home Assistant Control pad

Home Assistant Control pad

•  •  19 updates •  33h 16m

This project is a Control pad, it is able to control your Home Assistant devices using knobs and buttons and display it's status on the screen.

By Pegoku

Timeline

Pegoku
Pegoku 49m spent working 68d ago
Pegoku
Pegoku 2h spent working 70d ago

Finished the case!

Update attachment
Pegoku
Pegoku 4h spent working 80d ago

Designing the case. It's taking longer than expected.
Had to redo it bc was using an outdated pcb model. :sob:

Update attachment
Pegoku
Pegoku 1h spent working 80d ago

PCB is finished!

Update attachment
cskartikey cskartikey 3 months ago
congrats!!!
Pegoku
Pegoku 1h spent working 80d ago

Finished placing all the components

Update attachment
Pegoku
Pegoku 2h spent working 81d ago

Mostly finished placing the components. I removed the battery protection circuit, as the lipo I found already has a BMS https://www.ebay.es/itm/255510046348 (103450)

Update attachment
Pegoku
Pegoku 28m spent working 82d ago

Started PCB design

Update attachment
Pegoku Pegoku 3 months ago
I usually split the design in parts and then join them together. It makes it easier to route
cskartikey cskartikey 3 months ago
yo wtf is that :sob:
Pegoku
Pegoku 2h spent working 82d ago

Finished the schematic

Update attachment
Pegoku
Pegoku 1h spent working 82d ago

Added usb, and battery charging. Will be adding Battery protection in the next update

Update attachment
Pegoku
Pegoku 16m spent working 82d ago

Didn't have much time. I selected The buck-boost I wanted to use for the battery to get 3.3Vout

Update attachment
Pegoku
Pegoku 1h spent working 83d ago

Started designing the schematic.
Components I've selected so far:
ESP32-S2-MINI-2-N4R2
PEC11R-4220F-S0024 (rotary encoders)
B3F-4055 (tactile switches)

Update attachment
Pegoku
Pegoku 2h spent working 84d ago

I've got problems. The main one being the lack of GPIOs, specially the ADC ones. Currently, I'm using potentiometers connected to the esp32-C3's ADC. Sadly, that IC only has 6 ADCs, of which I can only use 3. The way I could solve it, would be using multiplexers or using another IC, probably I'll do the latter and switch to an esp32-S2, it has way many pins. I'll also probably switch from potentiometers to rotary encoders, They're more precise and they have an integrated push button. Everything else seems to be mostly ok. Software is good enough (for now).

Update attachment
Pegoku
Pegoku 23m spent working 85d ago

Did some fixes, added D1 action/toggle button support and changed the way the status is displayed. Now it is a vertical bar instead of a %.

https://github.com/Pegoku/Home-Assistant-Control-pad/commit/4f834a4ae482cdbac89055461fc4d4e149cb0441
https://github.com/Pegoku/Home-Assistant-Control-pad/commit/a390e9b2af473974dd2b65b0f206155f6e7b7c18

Update attachment
Pegoku
Pegoku 21m spent working 85d ago

Not sure if it's a bug or user error, but it seems like if use the same variable twice for the same screen item(eg. rectangle). The esp32 refuses to connect to wifi, it also doesn't respond to actions (eg. button presses)

Update attachment
Pegoku
Pegoku 58m spent working 85d ago

Added button to toggle status of d1s1 (naming structure I'll prob use from now one: dxsy (device x, screen y))
Fixed screen: wasn't fully seated

Update attachment
Pegoku
Pegoku 58m spent working 86d ago

Fixed bugs.
Potentiometer broke (started giving wrong readings) and replaced with a 10k one.
Only updates when screen 1 is selected.
Commit: https://github.com/Pegoku/Home-Assistant-Control-pad/commit/ec1d299c47b62787a1d863779df7093e4b4c41c8

Pegoku
Pegoku 3h spent working 86d ago

Potentiometer is able to control the leds and display the reading in the screen

Update attachment
Pegoku
Pegoku 1h spent working 87d ago

Was able to get the screen working and multiple pages via Home Assistant
https://esphome.io/components/display/ssd1306

Update attachment
Pegoku
Pegoku 1h spent working 87d ago

It was hard and took longer than expected, but I did a sketch of what I'd like for the Pad to have.
1* Mode/View toggle buttons
2* Adjustment knobs (pots or encoders)
3* Action buttons
4* Toggle switches (TBD)
5* USB-C Charge port
6* display info (OLED)

Update attachment