Mein Projekt | Klingelanlage für zwei Haushalte

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

Da in jedem Forum ein paar Regeln eingehalten werden müssen, möchte ich diese auch vorher hier festlegen und niederschreiben. Die grundsätzliche Netiquette setze ich bei Jedem voraus. Darüber hinaus möchte ich nur spezielle Regeln ansprechen:
- Unterlasse FullQuote sondern nutze Alternativen wie Inline-Quoting
-> siehe auch https://de.wikipedia.org/wiki/Fullquote vs. https://de.wikipedia.org/wiki/TOFU#Alternativen_zu_TOFU
- Unterlasse nichtssagende Antworten wie "Danke" oder "werde ich mal testen" oder ähnliches, sofern Du nicht der Threadersteller bist und einen Lösungsvorschlag angeboten bekommen hast.
- Vermeide Doppel-Posts (zwei Beiträge von Dir hintereinander) sondern editiere wenn möglich Deine Posts.

Danke...

  • Mein Projekt | Klingelanlage für zwei Haushalte

    Moin zusammen,

    hier eine kurze Beschreibung meines Projektes. Ich werde versuchen, immer mal wieder "Merkwürdigkeiten" hier zu dokumentieren, damit Andere nicht so lange suchen müssen wie ich.

    Und wenn jemand Input oder Ideen hat, bin ich sehr dankbar.

    -----------------------------------------

    Herleitung:

    Ich wohne in einem Zwei-Familien Haus gemeinsam mit meinen Eltern. Wir teilen uns einen Eingangsbereich mit Türsprechstation, jedoch hat jeder seine eigene Klingel. Bisher ist das über eine Auerswald TK-Anlage mit entsprechender Torstation gelöst. Ausgehend von dem Fakt, das auf dem Festnetz eh nur noch Oma anruft und die Anzahl der Endgeräte (wer braucht denn noch Fax??) in den letzten Jahren drastisch gesunken ist, habe ich die verbliebenen zwei Telefone (je Partei eines) direkt auf den Speedport geklemmt und möchte die TK-Anlage abschalten.

    Auf der Suche nach Ersatz für eine Türsprechstelle (die letzte verbliebene Anwendung auf der TK-Anlage) bin ich dann an meine Grenzen gestossen. Ich habe kein Gerät im Bereich bis ~1.000€ gefunden, das meine Wünsche umgesetzt hätte:

    Wunschliste "Muss"

    - 2 Klingelknöpfe am Tor
    - Gemeinsames Innengerät mit hohem WAF
    - Kamerabild auf das Innengerät
    - Separate Innen-Wecker / Klingeln je Partei
    - Benachrichtigung auf´s iPhone
    - Öffnen von Tür und Einfahrttor per RFID
    - Helligkeitssensorgesteuerte Beleuchtung

    Wunschliste "Könnte"

    - Interaktives Display am Tor
    - Öffnen Tor per iPhone vorhalten (NFC/BLE)
    - Verbinden mit dem Tor aus der Ferne
    - Sprechen mit dem Paketboten
    - Tor öffnen
    - "Briefkastensensoren" mit Einwurfbenachrichtigung

    -----------------------------------------
    Im Moment bin ich am Experimentieren. Meine Bauteile:

    - Raspberry Pi 3b+
    - PiFace digital2
    - RDM 6300 RFID-Leser (Gleicher Tag wie die Alarmanlage)
    - RC522 NFC-Leser
    - Nextion-Display
    - Raspberry-Kamera mit Fisheye-Linse
    - Knöpfe, LED´s, etc.

    Meine aktuellen gedanklichen Baustellen:

    1.) SIP-Telefonie: Aufgrund eines Hybridanschlusses bin ich an einen Speedport gebunden. Und wenn ich überlege, wie oft ich in den Jahren den Router gewechselt habe, will ich die Klingel unabhängig von einer Fritzbox betreiben. Auch eine Asterisk will ich nicht aufsetzen sondern die Klingel direkt per SIP beim Provider registrieren. Das hakt noch.

    2.) Innenstation: Ich hab noch keine Idee, wie ich die Innenstation realisiere. Ich hätte gern ein Tablet / Touchscreen, das Eventgesteuert aufwacht und dann das Bild der Torkamera anzeigt. Zusätzlich müssen zwei Schaltflächen oder Tasten vorhanden sein, um das Tor zu öffnen. Bisher ist das (ohne Video) in der alten Anlage mit einem Telefon und Tastenkombination gelöst, die Erfahrung zeigt, das es Dort keine Sprachverbindung braucht. Die Tastenkombination war zu aufwändig, so das meine Eltern immer mit dem Schlüssel zum Tor gelaufen sind. Das muss also ganz einfach werden.


    Ich nutze mal den nächsten Post, um nach und nach meine Installationsschritte zu dokumentieren. Werde also immer erweitern.
    Images
    • doorpi.jpg

      703.24 kB, 1,512×2,016, viewed 31 times

    The post was edited 3 times, last by Alex01 ().

  • Mein Installationsweg, getestet mit Buster Lite

    Installation Raspberry
    --------------------------
    Image von raspberrypi.org/downloads/raspbian/ laden und mit Win32DiskImager auf eine Micro-SD "brennen"
    Nach Boot mit User pi und Kennwort Raspberry (Achtung, amerikanische Tastatur, z und y vertauscht!!) anmelden

    sudo su und raspiconfig ausführen und die Grundeinstellung vornehmen

    Installation DoorPi
    --------------------------
    sudo su

    apt-get remove python-pip python-rpi.gpio

    apt-get install python-dev

    apt-get update && apt-get -y upgrade && apt-get -y dist-upgrade

    easy_install pip || (wget bootstrap.pypa.io/ez_setup.py -O - | sudo python) && sudo easy_install pip

    pip install linphone4raspberry python-daemon

    pip install doorpi

    Erster Start: doorpi_cli --trace

    Nextion Keyboard einfügen
    --------------------------
    from_nextion.py nach /usr/local/lib/python2.7/dist-packages/doorpi/keyboard kopieren

    RDM6300 Keyboard einfügen und UART bearbeiten
    --------------------------
    from_RDM6300.py nach /usr/local/lib/python2.7/dist-packages/doorpi/keyboard kopieren

    [i] nano /boot/cmdline.txt[/i]

    [i]Erste Zeile: dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait[/i]
    Ersetzen durch: dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
    [/i]


    nano /boot/config.txt
    [/i]
    Hier trägt man folgende Zeilen ein:

    [i]dtoverlay=pi3-disable-bt
    enable_uart=1
    force_turbo=1
    [/i]
    Speichern, schließen und neustarten.

    Installation MJPG Streamer:
    --------------------------
    Die im Lexikon hinterlegte Anleitung hat einen Fehler produziert und nicht funktioniert. Anbei der Weg, wie es unter Stretch funktioniert hat:

    Anleitung: github.com/cncjs/cncjs/wiki/Se…-Setup-&-FFMpeg-Recording

    Wenn man den mjpg_streamer beim booten automatisch gestartet haben möchte der sollte folgende Datei anlegen:
    1. sudo nano /etc/init.d/mjpg_streamer
    Mit diesem Inhalt.


    Shell-Script

    1. #!/bin/sh
    2. # /etc/init.d/mjpg_streamer
    3. ### BEGIN INIT INFO
    4. # Provides: mjpg_streamer
    5. # Required-Start: $all
    6. # Required-Stop: $all
    7. # Default-Start: 2 3 4 5
    8. # Default-Stop: 0 1 6
    9. # Short-Description: MJPG_Streamer_autostart
    10. ### END INIT INFO
    11. start()
    12. {
    13. modprobe bcm2835-v4l2
    14. sleep:2
    15. echo "Starting mjpg-streamer..."
    16. /usr/local/bin/mjpg_streamer -i "input_uvc.so -r 1280x720 -d /dev/video0 -f 30 -q 80" -o "output_http.so -p 9000 -w /usr/local/share/mjpg-streamer/WWW" >/dev/null 2>&1 &
    17. }
    18. stop()
    19. {
    20. echo "Stopping mjpg-streamer..."
    21. kill -9 $(pidof mjpg_streamer) >/dev/null 2>&1
    22. }
    23. case "$1" in
    24. start)
    25. start
    26. ;;
    27. stop)
    28. stop
    29. ;;
    30. restart)
    31. stop
    32. start
    33. ;;
    34. *)
    35. echo "Usage: $0 {start|stop|restart}"
    36. ;;
    37. esac
    38. exit 0
    Nun muss man noch das script ausführbar machen.

    1. sudo chmod +x /etc/init.d/mjpg_streamer


    Mit diesem Befehl wird die eben erstellte Autostart-Datei in den Autostart eingetragen:
    1. sudo update-rc.d mjpg_streamer Defaults



    Pushover mit Bild
    -----------------------------

    Shell Script zur Snapshotaufnahme

    #!/bin/bash
    wget 127.0.0.1:8080/?action=snapshot -O snapshot.jpg
    python pushoverb.py

    Phyton Script zum Pushover mit Bild Versand

    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    import requests
    r = requests.post("https://api.pushover.net/1/messages.json", data = {
    "token": "a78jnxfovzzj4i4mh8keqmegjs695h",
    "user": "umJSytLkp71HJZqXxBDJCt8W6B7rd6",
    "message": "Türklingel"
    },
    files = {
    "attachment": ("image.jpg", open("snapshot.jpg", "rb"), "image")
    })
    print(r.text)


    The post was edited 7 times, last by Alex01 ().