Files
Home-Assistant/print_log_context.md
T
2026-06-28 14:27:20 -04:00

2.8 KiB
Raw Blame History

Print Log Project — Context for Claude Code

What we're building

A Home Assistant automation system that logs 3D printer activity to a Notion database in real time — creating a row when a print starts and updating it when it finishes, fails, or is cancelled.

Notion Database

Printers

Friendly Name Entity Prefix Type Notes
PrintsCharming p1s_01p09c470102673 Bambu P1S Full data
Ds-Turd-Flinger a1_03919d540806387 Bambu A1 Full data
Polly-Pocket a1mini_0309ca580403653 Bambu A1Mini Full data
Constipation-Orion constipation_orion Bambu Full data
Jordyns-Layer-Slayer jordyns_layer_slayer Bambu Full data
Centauri Carbon centauri_carbon Elegoo FDM file_name + print_status only
Saturn saturn Elegoo Resin file_name + print_status only

Bambu sensors follow pattern: sensor.{prefix}_print_status, _gcode_filename, _print_weight, _print_length, _active_tray (attrs: type, color)

Elegoo sensors: sensor.{prefix}_file_name, sensor.{prefix}_print_status (status values for Elegoo need verification — may differ from Bambu)

HA Config Files Produced

Three files were generated (in the HA config repo):

  • print_log_configuration.yaml — input_text helpers + rest_commands
  • print_log_automations.yaml — 14 automations (start+finish × 7 printers)
  • print_log_secrets_addition.yaml — Notion bearer token line for secrets.yaml

Correct Template for Storing Notion Page ID

rest_command responses are already parsed as dicts — do NOT use | from_json: CORRECT: value: "{{ notion_response.content.id | default('') }}" WRONG: value: "{{ (notion_response.content | from_json).id | default('') }}"

The finish automation condition checks | length == 36 on the stored ID.

Notion rest_command structure

  • notion_create_print: POST to /v1/pages, returns page ID in response body
  • notion_update_print: PATCH to /v1/pages/{page_id}
  • Auth header uses !secret notion_token_bearer (full "Bearer ntn_..." string)
  • Token stored in secrets.yaml as notion_token_bearer

HA Setup

  • HAOS on x86 server
  • Gitea repo at code.cubecraftcreations.com (username: overseer)
  • IoT VLAN: 192.168.69.x, Main: 192.168.1.x
  • ~150 devices, UniFi networking