rfid.js-check #2
@@ -0,0 +1,5 @@
|
|||||||
|
.pio
|
||||||
|
.vscode/.browse.c_cpp.db*
|
||||||
|
.vscode/c_cpp_properties.json
|
||||||
|
.vscode/launch.json
|
||||||
|
.vscode/ipch
|
||||||
Vendored
+10
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
// See http://go.microsoft.com/fwlink/?LinkId=827846
|
||||||
|
// for the documentation about the extensions.json format
|
||||||
|
"recommendations": [
|
||||||
|
"platformio.platformio-ide"
|
||||||
|
],
|
||||||
|
"unwantedRecommendations": [
|
||||||
|
"ms-vscode.cpptools-extension-pack"
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,70 @@
|
|||||||
|
{
|
||||||
|
"GFU99": "TPU",
|
||||||
|
"GFN99": "PA",
|
||||||
|
"GFN98": "PA-CF",
|
||||||
|
"GFL99": "PLA",
|
||||||
|
"GFL96": "PLA Silk",
|
||||||
|
"GFL98": "PLA-CF",
|
||||||
|
"GFL95": "PLA High Speed",
|
||||||
|
"GFG99": "PETG",
|
||||||
|
"GFG98": "PETG-CF",
|
||||||
|
"GFG97": "PCTG",
|
||||||
|
"GFB99": "ABS",
|
||||||
|
"GFC99": "PC",
|
||||||
|
"GFB98": "ASA",
|
||||||
|
"GFS99": "PVA",
|
||||||
|
"GFS98": "HIPS",
|
||||||
|
"GFT98": "PPS-CF",
|
||||||
|
"GFT97": "PPS",
|
||||||
|
"GFN97": "PPA-CF",
|
||||||
|
"GFN96": "PPA-GF",
|
||||||
|
"GFP99": "PE",
|
||||||
|
"GFP98": "PE-CF",
|
||||||
|
"GFP97": "PP",
|
||||||
|
"GFP96": "PP-CF",
|
||||||
|
"GFP95": "PP-GF",
|
||||||
|
"GFR99": "EVA",
|
||||||
|
"GFR98": "PHA",
|
||||||
|
"GFS97": "BVOH",
|
||||||
|
"GFA01": "Bambu PLA Matte",
|
||||||
|
"GFA00": "Bambu PLA Basic",
|
||||||
|
"GFA09": "Bambu PLA Tough",
|
||||||
|
"GFA07": "Bambu PLA Marble",
|
||||||
|
"GFA08": "Bambu PLA Sparkle",
|
||||||
|
"GFA02": "Bambu PLA Metal",
|
||||||
|
"GFA05": "Bambu PLA Silk",
|
||||||
|
"GFS00": "Bambu Support W",
|
||||||
|
"GFL03": "eSUN PLA+",
|
||||||
|
"GFL01": "PolyTerra PLA",
|
||||||
|
"GFL00": "PolyLite PLA",
|
||||||
|
"GFA50": "Bambu PLA-CF",
|
||||||
|
"GFS02": "Bambu Support For PLA",
|
||||||
|
"GFA11": "Bambu PLA Aero",
|
||||||
|
"GFL04": "Overture PLA",
|
||||||
|
"GFL05": "Overture Matte PLA",
|
||||||
|
"GFA12": "Bambu PLA Glow",
|
||||||
|
"GFA13": "Bambu PLA Dynamic",
|
||||||
|
"GFA15": "Bambu PLA Galaxy",
|
||||||
|
"GFS05": "Bambu Support For PLA/PETG",
|
||||||
|
"GFU01": "Bambu TPU 95A",
|
||||||
|
"GFU00": "Bambu TPU 95A HF",
|
||||||
|
"GFG00": "Bambu PETG Basic",
|
||||||
|
"GFT01": "Bambu PET-CF",
|
||||||
|
"GFG50": "Bambu PETG-CF",
|
||||||
|
"GFG60": "PolyLite PETG",
|
||||||
|
"GFG01": "Bambu PETG Translucent",
|
||||||
|
"GFB00": "Bambu ABS",
|
||||||
|
"GFB60": "PolyLite ABS",
|
||||||
|
"GFB50": "Bambu ABS-GF",
|
||||||
|
"GFC00": "Bambu PC",
|
||||||
|
"GFB01": "Bambu ASA",
|
||||||
|
"GFB61": "PolyLite ASA",
|
||||||
|
"GFB02": "Bambu ASA-Aero",
|
||||||
|
"GFS04": "Bambu PVA",
|
||||||
|
"GFS01": "Bambu Support G",
|
||||||
|
"GFN03": "Bambu PA-CF",
|
||||||
|
"GFN04": "Bambu PAHT-CF",
|
||||||
|
"GFS03": "Bambu Support For PA/PET",
|
||||||
|
"GFN05": "Bambu PA6-CF",
|
||||||
|
"GFN08": "Bambu PA6-GF"
|
||||||
|
}
|
||||||
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"TPU": "GFU99",
|
||||||
|
"PA": "GFN99",
|
||||||
|
"PA-CF": "GFN98",
|
||||||
|
"PLA": "GFL99",
|
||||||
|
"PLA Silk": "GFL96",
|
||||||
|
"PLA-CF": "GFL98",
|
||||||
|
"PLA High Speed": "GFL95",
|
||||||
|
"PETG": "GFG99",
|
||||||
|
"PETG-CF": "GFG98",
|
||||||
|
"PCTG": "GFG97",
|
||||||
|
"ABS": "GFB99",
|
||||||
|
"ABS+HS": "GFB99",
|
||||||
|
"PC": "GFC99",
|
||||||
|
"PC/ABS": "GFC99",
|
||||||
|
"ASA": "GFB98",
|
||||||
|
"PVA": "GFS99",
|
||||||
|
"HIPS": "GFS98",
|
||||||
|
"PPS-CF": "GFT98",
|
||||||
|
"PPS": "GFT97",
|
||||||
|
"PPA-CF": "GFN97",
|
||||||
|
"PPA-GF": "GFN96",
|
||||||
|
"PE": "GFP99",
|
||||||
|
"PE-CF": "GFP98",
|
||||||
|
"PP": "GFP97",
|
||||||
|
"PP-CF": "GFP96",
|
||||||
|
"PP-GF": "GFP95",
|
||||||
|
"EVA": "GFR99",
|
||||||
|
"PHA": "GFR98",
|
||||||
|
"BVOH": "GFS97"
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,171 @@
|
|||||||
|
<!-- head --><!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>FilaMan - Filament Management Tool</title>
|
||||||
|
<link rel="icon" type="image/png" href="/favicon.ico">
|
||||||
|
<link rel="stylesheet" href="style.css">
|
||||||
|
<script>
|
||||||
|
fetch('/api/version')
|
||||||
|
.then(response => response.json())
|
||||||
|
.then(data => {
|
||||||
|
const versionSpan = document.querySelector('.version');
|
||||||
|
if (versionSpan) {
|
||||||
|
versionSpan.textContent = 'v' + data.version;
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(error => console.error('Error fetching version:', error));
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="navbar">
|
||||||
|
<div style="display: flex; align-items: center; gap: 2rem;">
|
||||||
|
<img src="/logo.png" alt="FilaMan Logo" class="logo">
|
||||||
|
<div class="logo-text">
|
||||||
|
<h1>FilaMan<span class="version"></span></h1>
|
||||||
|
<h4>Filament Management Tool</h4>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<nav style="display: flex; gap: 1rem;">
|
||||||
|
<a href="/">Start</a>
|
||||||
|
<a href="/waage">Scale</a>
|
||||||
|
<a href="/spoolman">Spoolman/Bambu</a>
|
||||||
|
<a href="/about">About</a>
|
||||||
|
<a href="/upgrade">Upgrade</a>
|
||||||
|
</nav>
|
||||||
|
<div class="status-container">
|
||||||
|
<div class="status-item">
|
||||||
|
<span class="status-dot" id="bambuDot"></span>B
|
||||||
|
</div>
|
||||||
|
<div class="status-item">
|
||||||
|
<span class="status-dot" id="spoolmanDot"></span>S
|
||||||
|
</div>
|
||||||
|
<div class="ram-status" id="ramStatus"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- head -->
|
||||||
|
|
||||||
|
<script>
|
||||||
|
window.onload = function() {
|
||||||
|
if (spoolmanUrl && spoolmanUrl.trim() !== "") {
|
||||||
|
document.getElementById('spoolmanUrl').value = spoolmanUrl;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Initialize OctoPrint fields visibility
|
||||||
|
toggleOctoFields();
|
||||||
|
};
|
||||||
|
|
||||||
|
function checkSpoolmanInstance() {
|
||||||
|
const url = document.getElementById('spoolmanUrl').value;
|
||||||
|
const spoolmanOctoEnabled = document.getElementById('spoolmanOctoEnabled').checked;
|
||||||
|
const spoolmanOctoUrl = document.getElementById('spoolmanOctoUrl').value;
|
||||||
|
const spoolmanOctoToken = document.getElementById('spoolmanOctoToken').value;
|
||||||
|
|
||||||
|
fetch(`/api/checkSpoolman?url=${encodeURIComponent(url)}&octoEnabled=${spoolmanOctoEnabled}&octoUrl=${spoolmanOctoUrl}&octoToken=${spoolmanOctoToken}`)
|
||||||
|
.then(response => response.json())
|
||||||
|
.then(data => {
|
||||||
|
if (data.healthy) {
|
||||||
|
document.getElementById('statusMessage').innerText = 'Spoolman-Instance is availabe and healthy!';
|
||||||
|
} else {
|
||||||
|
document.getElementById('statusMessage').innerText = 'Spoolman-Instance not available.';
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
document.getElementById('statusMessage').innerText = 'Error while connecting to Spoolman-Instance: ' + error.message;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function saveBambuCredentials() {
|
||||||
|
const ip = document.getElementById('bambuIp').value;
|
||||||
|
const serial = document.getElementById('bambuSerial').value;
|
||||||
|
const code = document.getElementById('bambuCode').value;
|
||||||
|
const autoSend = document.getElementById('autoSend').checked;
|
||||||
|
const autoSendTime = document.getElementById('autoSendTime').value;
|
||||||
|
|
||||||
|
fetch(`/api/bambu?bambu_ip=${encodeURIComponent(ip)}&bambu_serialnr=${encodeURIComponent(serial)}&bambu_accesscode=${encodeURIComponent(code)}&autoSend=${autoSend}&autoSendTime=${autoSendTime}`)
|
||||||
|
.then(response => response.json())
|
||||||
|
.then(data => {
|
||||||
|
if (data.healthy) {
|
||||||
|
document.getElementById('bambuStatusMessage').innerText = 'Bambu Credentials saved!';
|
||||||
|
} else {
|
||||||
|
document.getElementById('bambuStatusMessage').innerText = 'Error while saving Bambu Credentials.';
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(error => {
|
||||||
|
document.getElementById('bambuStatusMessage').innerText = 'Error while saving: ' + error.message;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Controls visibility of OctoPrint configuration fields based on checkbox state
|
||||||
|
* Called on page load and when checkbox changes
|
||||||
|
*/
|
||||||
|
function toggleOctoFields() {
|
||||||
|
const octoEnabled = document.getElementById('spoolmanOctoEnabled').checked;
|
||||||
|
document.getElementById('octoFields').style.display = octoEnabled ? 'block' : 'none';
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var spoolmanUrl = "{{spoolmanUrl}}";
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<div class="content">
|
||||||
|
<h1>Spoolman API URL / Bambu Credentials</h1>
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
<h5 class="card-title">Set URL/IP to your Spoolman-Instanz</h5>
|
||||||
|
<input type="text" id="spoolmanUrl" placeholder="http://ip-or-url-of-your-spoolman-instanz:port">
|
||||||
|
<h5 class="card-title">If you want to enable sending Spool to Spoolman Octoprint Plugin:</h5>
|
||||||
|
<p>
|
||||||
|
<input type="checkbox" id="spoolmanOctoEnabled" {{spoolmanOctoEnabled}} onchange="toggleOctoFields()"> Send to Octo-Plugin
|
||||||
|
</p>
|
||||||
|
<div id="octoFields" style="display: none;">
|
||||||
|
<p>
|
||||||
|
<input type="text" id="spoolmanOctoUrl" placeholder="http://ip-or-url-of-your-octoprint-instanz:port" value="{{spoolmanOctoUrl}}">
|
||||||
|
<input type="text" id="spoolmanOctoToken" placeholder="Your Octoprint Token" value="{{spoolmanOctoToken}}">
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<button onclick="checkSpoolmanInstance()">Save Spoolman URL</button>
|
||||||
|
<p id="statusMessage"></p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card">
|
||||||
|
<div class="card-body">
|
||||||
|
<h5 class="card-title">Bambu Lab Printer Credentials</h5>
|
||||||
|
<div class="bambu-settings">
|
||||||
|
<div class="input-group">
|
||||||
|
<label for="bambuIp">Bambu Drucker IP-Adresse:</label>
|
||||||
|
<input type="text" id="bambuIp" placeholder="192.168.1.xxx" value="{{bambuIp}}">
|
||||||
|
</div>
|
||||||
|
<div class="input-group">
|
||||||
|
<label for="bambuSerial">Drucker Seriennummer:</label>
|
||||||
|
<input type="text" id="bambuSerial" placeholder="BBLXXXXXXXX" value="{{bambuSerial}}">
|
||||||
|
</div>
|
||||||
|
<div class="input-group">
|
||||||
|
<label for="bambuCode">Access Code:</label>
|
||||||
|
<input type="text" id="bambuCode" placeholder="Access Code vom Drucker" value="{{bambuCode}}">
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
<p>If activated, FilaMan will automatically update the next filled tray with the last scanned and weighed spool.</p>
|
||||||
|
<div class="input-group" style="display: flex; margin-bottom: 0;">
|
||||||
|
<label for="autoSend" style="width: 250px; margin-right: 5px;">Auto Send to Bambu:</label>
|
||||||
|
<label for="autoSendTime" style="width: 250px; margin-right: 5px;">Wait for Spool in Sec:</label>
|
||||||
|
</div>
|
||||||
|
<div class="input-group" style="display: flex;">
|
||||||
|
<input type="checkbox" id="autoSend" {{autoSendToBambu}} style="width: 190px; margin-right: 10px;">
|
||||||
|
<input type="number" min="60" id="autoSendTime" placeholder="Time to wait" value="{{autoSendTime}}" style="width: 100px;">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<button style="margin: 0;" onclick="saveBambuCredentials()">Save Bambu Credentials</button>
|
||||||
|
<p id="bambuStatusMessage"></p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+68
-13
@@ -549,20 +549,47 @@ void reconnect() {
|
|||||||
uint8_t retries = 0;
|
uint8_t retries = 0;
|
||||||
while (!client.connected()) {
|
while (!client.connected()) {
|
||||||
Serial.println("Attempting MQTT re/connection...");
|
Serial.println("Attempting MQTT re/connection...");
|
||||||
|
Serial.print("State before connect: ");
|
||||||
|
Serial.println(client.state());
|
||||||
bambu_connected = false;
|
bambu_connected = false;
|
||||||
oledShowTopRow();
|
oledShowTopRow();
|
||||||
|
|
||||||
// Attempt to connect
|
// Generate a random client ID suffix
|
||||||
if (client.connect(bambu_serialnr, bambu_username, bambu_accesscode)) {
|
String clientId = String(bambu_serialnr) + "_" + String(random(0xffff), HEX);
|
||||||
|
Serial.print("Reconnecting with client ID: ");
|
||||||
|
Serial.println(clientId);
|
||||||
|
|
||||||
|
// Attempt to connect with clean session and will message
|
||||||
|
if (client.connect(clientId.c_str(), bambu_username, bambu_accesscode, nullptr, 0, true, nullptr)) {
|
||||||
Serial.println("MQTT re/connected");
|
Serial.println("MQTT re/connected");
|
||||||
|
|
||||||
client.subscribe(report_topic.c_str());
|
// Subscribe with QoS 1
|
||||||
|
if (client.subscribe(report_topic.c_str(), 1)) {
|
||||||
|
Serial.println("Successfully subscribed to topic with QoS 1: " + report_topic);
|
||||||
|
} else {
|
||||||
|
Serial.println("Failed to subscribe to topic: " + report_topic);
|
||||||
|
}
|
||||||
bambu_connected = true;
|
bambu_connected = true;
|
||||||
oledShowTopRow();
|
oledShowTopRow();
|
||||||
} else {
|
} else {
|
||||||
|
int state = client.state();
|
||||||
Serial.print("failed, rc=");
|
Serial.print("failed, rc=");
|
||||||
Serial.print(client.state());
|
Serial.print(state);
|
||||||
Serial.println(" try again in 5 seconds");
|
Serial.print(" (");
|
||||||
|
// Print detailed error message
|
||||||
|
switch(state) {
|
||||||
|
case -4: Serial.print("MQTT_CONNECTION_TIMEOUT"); break;
|
||||||
|
case -3: Serial.print("MQTT_CONNECTION_LOST"); break;
|
||||||
|
case -2: Serial.print("MQTT_CONNECT_FAILED"); break;
|
||||||
|
case -1: Serial.print("MQTT_DISCONNECTED"); break;
|
||||||
|
case 1: Serial.print("MQTT_CONNECT_BAD_PROTOCOL"); break;
|
||||||
|
case 2: Serial.print("MQTT_CONNECT_BAD_CLIENT_ID"); break;
|
||||||
|
case 3: Serial.print("MQTT_CONNECT_UNAVAILABLE"); break;
|
||||||
|
case 4: Serial.print("MQTT_CONNECT_BAD_CREDENTIALS"); break;
|
||||||
|
case 5: Serial.print("MQTT_CONNECT_UNAUTHORIZED"); break;
|
||||||
|
default: Serial.print("UNKNOWN"); break;
|
||||||
|
}
|
||||||
|
Serial.println(") try again in 5 seconds");
|
||||||
bambu_connected = false;
|
bambu_connected = false;
|
||||||
oledShowTopRow();
|
oledShowTopRow();
|
||||||
|
|
||||||
@@ -570,11 +597,9 @@ void reconnect() {
|
|||||||
vTaskDelay(5000 / portTICK_PERIOD_MS);
|
vTaskDelay(5000 / portTICK_PERIOD_MS);
|
||||||
if (retries > 5) {
|
if (retries > 5) {
|
||||||
Serial.println("Disable Bambu MQTT Task after 5 retries");
|
Serial.println("Disable Bambu MQTT Task after 5 retries");
|
||||||
//vTaskSuspend(BambuMqttTask);
|
|
||||||
vTaskDelete(BambuMqttTask);
|
vTaskDelete(BambuMqttTask);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
retries++;
|
retries++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -582,17 +607,32 @@ void reconnect() {
|
|||||||
|
|
||||||
void mqtt_loop(void * parameter) {
|
void mqtt_loop(void * parameter) {
|
||||||
Serial.println("Bambu MQTT Task gestartet");
|
Serial.println("Bambu MQTT Task gestartet");
|
||||||
|
unsigned long lastCheck = 0;
|
||||||
|
|
||||||
for(;;) {
|
for(;;) {
|
||||||
if (pauseBambuMqttTask) {
|
if (pauseBambuMqttTask) {
|
||||||
vTaskDelay(10000);
|
vTaskDelay(10000);
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unsigned long now = millis();
|
||||||
|
|
||||||
if (!client.connected()) {
|
if (!client.connected()) {
|
||||||
|
Serial.println("Connection lost, attempting reconnect...");
|
||||||
reconnect();
|
reconnect();
|
||||||
yield();
|
yield();
|
||||||
esp_task_wdt_reset();
|
esp_task_wdt_reset();
|
||||||
vTaskDelay(100);
|
vTaskDelay(100);
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Periodically check connection status
|
||||||
|
if (now - lastCheck > 30000) { // Check every 30 seconds
|
||||||
|
Serial.print("MQTT Status Check - Connected: ");
|
||||||
|
Serial.println(client.connected() ? "Yes" : "No");
|
||||||
|
lastCheck = now;
|
||||||
|
}
|
||||||
|
|
||||||
client.loop();
|
client.loop();
|
||||||
yield();
|
yield();
|
||||||
esp_task_wdt_reset();
|
esp_task_wdt_reset();
|
||||||
@@ -617,15 +657,30 @@ bool setupMqtt() {
|
|||||||
sslClient.setInsecure();
|
sslClient.setInsecure();
|
||||||
client.setServer(bambu_ip, 8883);
|
client.setServer(bambu_ip, 8883);
|
||||||
|
|
||||||
|
// Generate a random client ID suffix
|
||||||
|
String clientId = String(bambu_serialnr) + "_" + String(random(0xffff), HEX);
|
||||||
|
|
||||||
|
// MQTT Connection Options
|
||||||
|
// client.setKeepAlive(60);
|
||||||
|
// client.setSocketTimeout(60); // Increase socket timeout
|
||||||
|
|
||||||
|
Serial.print("Connecting with client ID: ");
|
||||||
|
Serial.println(clientId);
|
||||||
|
|
||||||
// Verbinden mit dem MQTT-Server
|
// Verbinden mit dem MQTT-Server
|
||||||
bool connected = true;
|
bool connected = true;
|
||||||
if (client.connect(bambu_serialnr, bambu_username, bambu_accesscode))
|
if (client.connect(clientId.c_str(), bambu_username, bambu_accesscode, nullptr, 0, true, nullptr))
|
||||||
{
|
{
|
||||||
client.setCallback(mqtt_callback);
|
client.setCallback(mqtt_callback);
|
||||||
client.setBufferSize(5120);
|
client.setBufferSize(16384); // Increased to 16KB to handle larger JSON
|
||||||
// Optional: Topic abonnieren
|
|
||||||
client.subscribe(report_topic.c_str());
|
// Subscribe with QoS 1
|
||||||
//client.subscribe(request_topic.c_str());
|
if (client.subscribe(report_topic.c_str(), 1)) {
|
||||||
|
Serial.println("Successfully subscribed to topic with QoS 1: " + report_topic);
|
||||||
|
} else {
|
||||||
|
Serial.println("Failed to subscribe to topic: " + report_topic);
|
||||||
|
}
|
||||||
|
|
||||||
Serial.println("MQTT-Client initialisiert");
|
Serial.println("MQTT-Client initialisiert");
|
||||||
|
|
||||||
oledShowMessage("Bambu Connected");
|
oledShowMessage("Bambu Connected");
|
||||||
@@ -635,7 +690,7 @@ bool setupMqtt() {
|
|||||||
xTaskCreatePinnedToCore(
|
xTaskCreatePinnedToCore(
|
||||||
mqtt_loop, /* Function to implement the task */
|
mqtt_loop, /* Function to implement the task */
|
||||||
"BambuMqtt", /* Name of the task */
|
"BambuMqtt", /* Name of the task */
|
||||||
8192, /* Stack size in words */
|
16384, /* Stack size in words */
|
||||||
NULL, /* Task input parameter */
|
NULL, /* Task input parameter */
|
||||||
mqttTaskPrio, /* Priority of the task */
|
mqttTaskPrio, /* Priority of the task */
|
||||||
&BambuMqttTask, /* Task handle. */
|
&BambuMqttTask, /* Task handle. */
|
||||||
|
|||||||
Reference in New Issue
Block a user