Bambu Lab P2S in Home Assistant einbinden

Der Bambu Lab P2S 3D-Drucker lässt sich nahtlos in Home Assistant (HOAS) einbinden. Mit der Bambu Lab Integration (Custom via HACS) plus go2rtc und WebRTC bekommst du Status, Temperatur und stabilen Live-Stream. Gerade da die reine HOAS Integration den Videostream des P2S nicht flüssig wiedergeben kann. 

Bambu Lab HOAS-Integration installieren

HACS > Integrationen > „Bambu Lab“ (greghesp/ha-bambulab) installieren. Konfiguriere: LAN Mode, IP, Access Code. Erzeugt Entities wie sensor.p2s1_druckstatus – welche essenziell für die Automatisierung ist. Ein paar Beispiel: 

  • Benachrichtung, wenn Druck abgeschlossen wurde oder ein Fehler aufgetreten ist.
  • Beim öffnen und schließen der Tür geht das Licht automatisch an, gerade kein Druck stattfindet. 
  • Schaltet den Drucker über eine steuerbare Steckdose aus, wenn der Druck abgeschlossen und und die Nozzle abkühlen konnte. 

LAN Mode & Access Code aktivieren

Über den P2S-Touchscreen die folgende Einstellung vornehmen und anschließend den Drucker neustarten:
Einstellungen > Network > LAN Only Mode. Aktiviere Video Stream und Entwicklermode, notiere Access Code („xxxxxxxx“).

Ich empfehle eine dem Drucker feste IP via Router-Reservierung (MAC) zuzuweisen: Vermeidet Das verhindert Verbindungsabbrüche bei IP-Wechsel. Der Entwicklermodus ist wichtig, damit über HOAS der Drucker zusätzlich gesteuert werden kann. Über Bambu Lab Studio kann der Drucker darüber hinaus auch bedient werden. Er muss lediglich einmal manuell hinzugefügt und der Freischaltcode eingegeben werden. 

go2rtc einrichten (integriert seit 2024.11)

Falls nicht bereits vorhanden installiere das Add-on: go2rtc

Alternativ findest du es hier https://github.com/AlexxIT/go2rtc

Nach der Installation das Add-on aktivieren und zur Seitenleiste hinzufügen. Dort unter Config das folgende eingeben. Die xxxxxx muss durch den Access Code ersetzt werden.

				
					streams:
  p2s-kamera:
    - rtsps://bblp:xxxxxx@10.0.5.xx:322/streaming/live/1
				
			

WebRTC Camera Card installieren

Im nächsten Schritt brauchen wir noch die Card, damit wir den Live Feed ins Dashboard einbinden können. Dazu unter HACS > Frontend > „WebRTC Camera“ installieren.

Nachdem dies installiert ist und HomeAssistant neu gestartet wurde, öffne das Dasboard und editiere es. Über rechts oben die drei Punkte kannst du die Ressourcen verwalten. Dort musst du das folgende einfügen.

/hacsfiles/webrtc-camera/webrtc-camera.js.

Speichern und HomeAssistant einmal neustarten. 

Dashboard-Einbindung (mit Druckerstatus-Check)

Über den folgenden Code kannst du nun manuell eine Card hinzufügen und das Live Bild des Druckers einbetten.

				
					type: conditional
conditions:
  - condition: state
    entity: sensor.p2s1_druckstatus
    state_not: offline
  - condition: state
    entity: sensor.p2s1_druckstatus
    state_not: unavailable
card:
  type: custom:webrtc-camera
  url: p2s-kamera
  muted: true
  aspect_ratio: "16:9"

				
			

Meine Dashboard Konfiguration

				
					views:
  - title: Home
    sections:
      - type: grid
        cards:
          - type: custom:ha-bambulab-ams-card
            entity: ''
            header: ''
            subtitle: ''
            style: graphic
            ams: d401457e7788
            show_info_bar: true
            custom_humidity: sensor.p2s1_ams_1_luftfeuchtigkeit
            custom_temperature: sensor.p2s1_ams_1_temperatur
          - type: custom:ha-bambulab-print_status-card
            printer: 746a7b9c4038116390c18
            style: graphic
            custom_light: light.p2s1_druckraumbeleuchtung
            custom_camera: camera.p2s1_kamera
      - type: grid
        cards:
          - type: entities
            entities:
              - entity: sensor.p2s1_startzeit
                name: Startzeit des Drucks
              - entity: sensor.p2s1_endzeit
                name: Zielzeit des Drucks
                secondary_info: none
              - entity: sensor.p2s1_aktuelle_schicht
                name: Aktuelle Schicht
              - entity: sensor.p2s1_gesamtzahl_der_schichten
                name: Gesamtanzahl Schichten
              - entity: sensor.p2s1_aktueller_arbeitsschritt
                name: Aktueller Arbeitsschritt
              - entity: sensor.p2s1_gewicht_des_drucks
                name: Gewicht des Drucks
              - entity: binary_sensor.p2s1_druckfehler
                name: Druckfehler
              - entity: sensor.p2s1_bauteillufterdrehzahl
                name: Bauteillüfterdrehzahl
              - entity: sensor.p2s1_druckbetttemperatur
                name: Druckbetttemperatur
              - entity: sensor.p2s1_druckkopflufterdrehzahl
                name: Druckkopflüfterdrehzahl
              - entity: sensor.p2s1_hotendlufterdrehzahl
                name: Hotendlüfterdrehzahl
              - entity: sensor.p2s1_temperatur_der_duse
                name: Temperatur der Düse
                secondary_info: last-changed
              - entity: sensor.p2s1_zieltemperatur_der_duse
                name: Zieltemperatur der Düse
              - entity: sensor.p2s1_temperatur_im_druckraum
                name: Temperatur des Druckraum
              - entity: sensor.p2s1_druckbett_typ
                name: Druckbett Typ
              - entity: sensor.p2s1_dusentyp
                name: Düsentyp
              - entity: sensor.p2s1_dusengrosse
                name: Düsengröße
              - entity: update.p2s1_firmware_status
                name: Firmware Status
            state_color: false
            title: Status P2S
      - type: grid
        cards:
          - type: entities
            entities:
              - entity: binary_sensor.p2s1_ams_1_aktiv
                name: Status
              - entity: sensor.p2s1_ams_1_index_der_luftfeuchtigkeit
                name: Index Luftfeuchtigkeit
              - entity: sensor.p2s1_ams_1_luftfeuchtigkeit
                name: Luftfeuchtigkeit
                secondary_info: last-changed
              - entity: sensor.p2s1_ams_1_temperatur
                name: Temperatur
                secondary_info: last-changed
              - entity: binary_sensor.p2s1_ams_1_trocknen
                name: Status Filament trocknen
              - entity: sensor.p2s1_ams_1_verbleibende_trocknungszeit
                name: Verbleibende Trocknungszeit
            title: Status AMS
    header:
      card:
        type: markdown
        content: '# 3D-Printing World'
        text_only: true
    badges:
      - type: entity
        show_name: true
        show_state: true
        show_icon: true
        entity: sensor.p2s1_druckstatus
        name: Druckerstatus
        show_entity_picture: false
        state_content: state
        visibility:
          - condition: screen
            media_query: '(min-width: 1024px)'
      - type: entity
        show_name: true
        show_state: true
        show_icon: true
        entity: sensor.p2s1_druckfortschritt
        name: Druckerfortschritt
        state_content: state
      - type: entity
        show_name: true
        show_state: true
        show_icon: true
        entity: sensor.p2s1_verbleibende_zeit
        name: Verbleibende Druckzeit
      - type: entity
        show_name: true
        show_state: true
        show_icon: true
        entity: binary_sensor.p2s1_gehausetur
        name: Gehäusetür
  - type: sections
    title: LiveView
    path: liveview
    cards: []
    sections:
      - type: grid
        cards:
          - type: conditional
            conditions:
              - condition: state
                entity: sensor.p2s1_druckstatus
                state_not: offline
              - condition: state
                entity: sensor.p2s1_druckstatus
                state_not: unavailable
            card:
              type: custom:webrtc-camera
              url: p2s-kamera
              muted: true
              aspect_ratio: '16:9'
        column_span: 1

				
			
Das könnte auch interessieren...
LinkedIn
Reddit
Email
WhatsApp
Telegram
Print