|
@@ -0,0 +1,335 @@
|
|
|
|
|
+{
|
|
|
|
|
+ "generated_at": "2026-02-18T09:08:38.278095",
|
|
|
|
|
+ "app": {
|
|
|
|
|
+ "version": "0.2.1b",
|
|
|
|
|
+ "debug_mode": false
|
|
|
|
|
+ },
|
|
|
|
|
+ "system": {
|
|
|
|
|
+ "platform": "Linux",
|
|
|
|
|
+ "platform_release": "6.8.0-100-generic",
|
|
|
|
|
+ "platform_version": "#100-Ubuntu SMP PREEMPT_DYNAMIC Tue Jan 13 16:40:06 UTC 2026",
|
|
|
|
|
+ "architecture": "x86_64",
|
|
|
|
|
+ "python_version": "3.13.12"
|
|
|
|
|
+ },
|
|
|
|
|
+ "environment": {
|
|
|
|
|
+ "docker": true,
|
|
|
|
|
+ "data_dir": "/app/data",
|
|
|
|
|
+ "log_dir": "/app/logs",
|
|
|
|
|
+ "timezone": "Europe/Berlin"
|
|
|
|
|
+ },
|
|
|
|
|
+ "database": {
|
|
|
|
|
+ "archives_total": 128,
|
|
|
|
|
+ "archives_completed": 84,
|
|
|
|
|
+ "printers_total": 11,
|
|
|
|
|
+ "filaments_total": 0,
|
|
|
|
|
+ "projects_total": 0,
|
|
|
|
|
+ "smart_plugs_total": 0
|
|
|
|
|
+ },
|
|
|
|
|
+ "printers": [
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 1,
|
|
|
|
|
+ "model": "H2S",
|
|
|
|
|
+ "nozzle_count": 1,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "RUNNING",
|
|
|
|
|
+ "firmware_version": "01.01.02.00",
|
|
|
|
|
+ "wifi_signal": -63,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 1,
|
|
|
|
|
+ "ams_tray_count": 4,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 2,
|
|
|
|
|
+ "nozzle_rack_count": 1
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 2,
|
|
|
|
|
+ "model": "H2D",
|
|
|
|
|
+ "nozzle_count": 2,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "FAILED",
|
|
|
|
|
+ "firmware_version": "01.02.10.00",
|
|
|
|
|
+ "wifi_signal": -68,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 5,
|
|
|
|
|
+ "ams_tray_count": 1,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 4,
|
|
|
|
|
+ "nozzle_rack_count": 2
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 3,
|
|
|
|
|
+ "model": "H2S",
|
|
|
|
|
+ "nozzle_count": 1,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "FAILED",
|
|
|
|
|
+ "firmware_version": "01.01.02.00",
|
|
|
|
|
+ "wifi_signal": -67,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 1,
|
|
|
|
|
+ "ams_tray_count": 4,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 0,
|
|
|
|
|
+ "nozzle_rack_count": 1
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 4,
|
|
|
|
|
+ "model": "H2S",
|
|
|
|
|
+ "nozzle_count": 1,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "RUNNING",
|
|
|
|
|
+ "firmware_version": "01.01.02.00",
|
|
|
|
|
+ "wifi_signal": -67,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 1,
|
|
|
|
|
+ "ams_tray_count": 2,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 1,
|
|
|
|
|
+ "nozzle_rack_count": 1
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 5,
|
|
|
|
|
+ "model": "H2S",
|
|
|
|
|
+ "nozzle_count": 1,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "RUNNING",
|
|
|
|
|
+ "firmware_version": "01.01.02.00",
|
|
|
|
|
+ "wifi_signal": -69,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 1,
|
|
|
|
|
+ "ams_tray_count": 3,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 1,
|
|
|
|
|
+ "nozzle_rack_count": 1
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 6,
|
|
|
|
|
+ "model": "X1C",
|
|
|
|
|
+ "nozzle_count": 1,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "FINISH",
|
|
|
|
|
+ "firmware_version": "01.11.02.00",
|
|
|
|
|
+ "wifi_signal": -53,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 1,
|
|
|
|
|
+ "ams_tray_count": 3,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 0,
|
|
|
|
|
+ "nozzle_rack_count": 1
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 7,
|
|
|
|
|
+ "model": "X1C",
|
|
|
|
|
+ "nozzle_count": 1,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "FINISH",
|
|
|
|
|
+ "firmware_version": "01.11.02.00",
|
|
|
|
|
+ "wifi_signal": -62,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 1,
|
|
|
|
|
+ "ams_tray_count": 3,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 2,
|
|
|
|
|
+ "nozzle_rack_count": 1
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 8,
|
|
|
|
|
+ "model": "X1C",
|
|
|
|
|
+ "nozzle_count": 1,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "RUNNING",
|
|
|
|
|
+ "firmware_version": "01.11.02.00",
|
|
|
|
|
+ "wifi_signal": -64,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 0,
|
|
|
|
|
+ "ams_tray_count": 0,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 2,
|
|
|
|
|
+ "nozzle_rack_count": 1
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 9,
|
|
|
|
|
+ "model": "X1C",
|
|
|
|
|
+ "nozzle_count": 1,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "RUNNING",
|
|
|
|
|
+ "firmware_version": "01.11.02.00",
|
|
|
|
|
+ "wifi_signal": -63,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 1,
|
|
|
|
|
+ "ams_tray_count": 4,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 2,
|
|
|
|
|
+ "nozzle_rack_count": 1
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 10,
|
|
|
|
|
+ "model": "X1C",
|
|
|
|
|
+ "nozzle_count": 1,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "FINISH",
|
|
|
|
|
+ "firmware_version": "01.11.02.00",
|
|
|
|
|
+ "wifi_signal": -63,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 1,
|
|
|
|
|
+ "ams_tray_count": 4,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 2,
|
|
|
|
|
+ "nozzle_rack_count": 1
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "index": 11,
|
|
|
|
|
+ "model": "X1C",
|
|
|
|
|
+ "nozzle_count": 1,
|
|
|
|
|
+ "is_active": true,
|
|
|
|
|
+ "mqtt_connected": true,
|
|
|
|
|
+ "state": "FINISH",
|
|
|
|
|
+ "firmware_version": "01.11.02.00",
|
|
|
|
|
+ "wifi_signal": -63,
|
|
|
|
|
+ "reachable": true,
|
|
|
|
|
+ "ams_unit_count": 1,
|
|
|
|
|
+ "ams_tray_count": 4,
|
|
|
|
|
+ "has_vt_tray": true,
|
|
|
|
|
+ "external_camera_configured": false,
|
|
|
|
|
+ "plate_detection_enabled": false,
|
|
|
|
|
+ "hms_error_count": 1,
|
|
|
|
|
+ "nozzle_rack_count": 1
|
|
|
|
|
+ }
|
|
|
|
|
+ ],
|
|
|
|
|
+ "settings": {
|
|
|
|
|
+ "auth_enabled": "true",
|
|
|
|
|
+ "setup_completed": "true",
|
|
|
|
|
+ "auto_archive": "true",
|
|
|
|
|
+ "save_thumbnails": "true",
|
|
|
|
|
+ "capture_finish_photo": "true",
|
|
|
|
|
+ "default_filament_cost": "3000.0",
|
|
|
|
|
+ "currency": "CHF",
|
|
|
|
|
+ "energy_cost_per_kwh": "120.0",
|
|
|
|
|
+ "energy_tracking_mode": "total",
|
|
|
|
|
+ "check_updates": "true",
|
|
|
|
|
+ "check_printer_firmware": "true",
|
|
|
|
|
+ "notification_language": "en",
|
|
|
|
|
+ "ams_humidity_good": "20",
|
|
|
|
|
+ "ams_humidity_fair": "50",
|
|
|
|
|
+ "ams_temp_good": "28.0",
|
|
|
|
|
+ "ams_temp_fair": "35.0",
|
|
|
|
|
+ "ams_history_retention_days": "30",
|
|
|
|
|
+ "per_printer_mapping_expanded": "false",
|
|
|
|
|
+ "date_format": "us",
|
|
|
|
|
+ "time_format": "24h",
|
|
|
|
|
+ "default_printer_id": "2",
|
|
|
|
|
+ "ftp_retry_enabled": "true",
|
|
|
|
|
+ "ftp_retry_count": "3",
|
|
|
|
|
+ "ftp_retry_delay": "2",
|
|
|
|
|
+ "ftp_timeout": "30",
|
|
|
|
|
+ "mqtt_enabled": "false",
|
|
|
|
|
+ "mqtt_broker": "",
|
|
|
|
|
+ "mqtt_port": "1883",
|
|
|
|
|
+ "mqtt_username": "",
|
|
|
|
|
+ "mqtt_topic_prefix": "bambuddy",
|
|
|
|
|
+ "mqtt_use_tls": "false",
|
|
|
|
|
+ "ha_enabled": "false",
|
|
|
|
|
+ "library_archive_mode": "always",
|
|
|
|
|
+ "library_disk_warning_gb": "5.0",
|
|
|
|
|
+ "camera_view_mode": "embedded",
|
|
|
|
|
+ "preferred_slicer": "bambu_studio",
|
|
|
|
|
+ "prometheus_enabled": "false",
|
|
|
|
|
+ "dark_accent": "green",
|
|
|
|
|
+ "spoolman_enabled": "false",
|
|
|
|
|
+ "spoolman_sync_mode": "auto",
|
|
|
|
|
+ "spoolman_disable_weight_sync": "false",
|
|
|
|
|
+ "spoolman_report_partial_usage": "true",
|
|
|
|
|
+ "bed_cooled_threshold": "35.0",
|
|
|
|
|
+ "virtual_printer_enabled": "false",
|
|
|
|
|
+ "virtual_printer_mode": "review",
|
|
|
|
|
+ "virtual_printer_remote_interface_ip": "",
|
|
|
|
|
+ "debug_logging_enabled": "true",
|
|
|
|
|
+ "debug_logging_enabled_at": "2026-02-18T08:54:43.272849"
|
|
|
|
|
+ },
|
|
|
|
|
+ "docker": {
|
|
|
|
|
+ "container_memory_limit_bytes": null,
|
|
|
|
|
+ "container_memory_limit_formatted": null,
|
|
|
|
|
+ "network_mode_hint": "bridge"
|
|
|
|
|
+ },
|
|
|
|
|
+ "integrations": {
|
|
|
|
|
+ "notification_providers": [],
|
|
|
|
|
+ "spoolman": {
|
|
|
|
|
+ "enabled": false,
|
|
|
|
|
+ "reachable": false
|
|
|
|
|
+ },
|
|
|
|
|
+ "mqtt_relay": {
|
|
|
|
|
+ "enabled": false,
|
|
|
|
|
+ "connected": false,
|
|
|
|
|
+ "broker": "",
|
|
|
|
|
+ "port": 0,
|
|
|
|
|
+ "topic_prefix": "bambuddy"
|
|
|
|
|
+ },
|
|
|
|
|
+ "homeassistant": {
|
|
|
|
|
+ "enabled": false
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ "database_health": {
|
|
|
|
|
+ "journal_mode": "wal",
|
|
|
|
|
+ "quick_check": "ok",
|
|
|
|
|
+ "db_size_bytes": 2756608,
|
|
|
|
|
+ "wal_size_bytes": 4194192
|
|
|
|
|
+ },
|
|
|
|
|
+ "dependencies": {
|
|
|
|
|
+ "fastapi": "0.129.0",
|
|
|
|
|
+ "uvicorn": "0.40.0",
|
|
|
|
|
+ "pydantic": "2.12.5",
|
|
|
|
|
+ "sqlalchemy": "2.0.46",
|
|
|
|
|
+ "paho-mqtt": "2.1.0",
|
|
|
|
|
+ "psutil": "7.2.2",
|
|
|
|
|
+ "httpx": "0.28.1",
|
|
|
|
|
+ "aiofiles": "25.1.0",
|
|
|
|
|
+ "cryptography": "46.0.5",
|
|
|
|
|
+ "opencv-python-headless": "4.13.0.92",
|
|
|
|
|
+ "numpy": "2.4.2"
|
|
|
|
|
+ },
|
|
|
|
|
+ "log_file": {
|
|
|
|
|
+ "size_bytes": 2727107,
|
|
|
|
|
+ "size_formatted": "2.6 MB"
|
|
|
|
|
+ },
|
|
|
|
|
+ "network": {
|
|
|
|
|
+ "interface_count": 1,
|
|
|
|
|
+ "interfaces": [
|
|
|
|
|
+ {
|
|
|
|
|
+ "name": "enp2s0",
|
|
|
|
|
+ "subnet": "192.168.50.0/24"
|
|
|
|
|
+ }
|
|
|
|
|
+ ]
|
|
|
|
|
+ },
|
|
|
|
|
+ "websockets": {
|
|
|
|
|
+ "active_connections": 2
|
|
|
|
|
+ }
|
|
|
|
|
+}
|