Skip to content

jctots/telegram-doorman

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚪 telegram-doorman

Interact with your TCS or Koch intercom with a Telegram Bot and ESP8266

example workflow

Open Door Demo
demo.gif
Telegram Actions
menu.png

Example Notifications
notifications.png

Currently supported TCS bus events:

  • send open door command (up to two doors)
  • receive notifications for open door
  • receive notifications for intercom call
  • receive notifications for apartment doorbell
  • receive notifications during lift handset

📱 Features

  • Multi-user: easily register/remove additional 2 telegram chatIDs (group chatID or user chatID) as bot user
  • Silent mode (per user): disable notification of TCS bus events for specific user
  • Party mode (all users): automatic door unlock every intercom call
  • Sniff mode (main user): forward all TCS bus events (for collecting protocol codes for initial configuration)
  • Dev mode (main user): silent mode for other users and enable sniff mode (useful for debugging and testing)
  • Simple DevOps environment via PlatformIO, Arduino OTA, and GitHub Actions

Other hardware-specific features:

  • possible isolation of TCS BUS and ESP circuit via optocoupler when ESP is powered by separate supply
  • possible de-isolation of TCS BUS and ESP circuit via jumper when ESP is powered by TCS bus P-Line
  • separate pin for resetting config to defaults (short-to-ground)

⚙️ System Overview

context.drawio.png

🚀 Getting Started

(Detailed user manual coming soon in /docs)

  • Setup PlatformIO dev environment and build (or download latest .bin from release)
  • Make interface circuit
  • Setup Telegram Bot
  • Flash, integrate and test
  • Enable "Sniff Mode" to capture own TCS:Bus protocol codes
  • Change default config with captured codes
  • Enjoy!

🔧 Reference Circuit and Integration

(Detailed integration manual coming soon in /docs)

protoboard_with_d1mini.jpg intercom_open.jpg intercom_connected.jpg

Link to Interface Circuit Schematic Diagram

✔️ To-do

  • find a way to power ESP from TCS bus P-Line without cracking sound
  • proper cabling and housing
  • support for telegram-keyman for complete keyless apartment entry!
  • create user manual, getting started (sphinx-docs), integration manual (with oscilloscope photos)
  • add section for known issues and limitations
  • low power mode/wake-up/proper scheduling for optional battery support
  • PCB layout
  • logs (reset counter, etc.) and error handling
  • simple HTML web server to update config
  • simple web server for wireless serial debugging
  • add sample unit tests for TDD demo
  • create GitHub actions for automated test and docs generation
  • add sample domain and application models for DDD demo

🗻 Challenges

  • from the TCS Hacking YouTube video, the TCS Bus A-Line is between 20V-24V, our system is between 7V-24V (verified using oscilloscope)
  • in our apartment, we have 2 doors: main door (facing street) and garage door (inside tiefgarage)
  • our system has 6-line TCS bus with video intercom (instead of the usual 2/3 line)
    • getting 5V from the 24V TCS bus P-line using DC-DC buck converter to power the ESP produces noise (cracking sound) in the video intercom (EMI/grounding issues?)
    • decided to use an optocoupler to separate the ESP ground from the TCS bus B-line

osc.jpg

breadboard.jpg

✏️ TCS System References

📜 Credits

About

ESP8266-based smart doorbell bridge — control and monitor your TCS/Koch intercom via Telegram Bot with multi-user support and event notifications

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors