I don’t have a P1P so I don’t know how its FTP is implemented. The X1C in latest firmware changed from FTP (default port 21, didn’t need to specify any TLS stuff) to FTPS via port 990, implicit TLS only. It’s possible that the P1P could still be using this implementation, but if you can’t connect via an FTP client (Filezilla for example, many other FTP programs don’t work with the X1C), then I’m not sure.
If it does work, there are various FTP palettes you could use and swap out the two python script ones I have. This would be similar to my older implementations before latest firmware of X1C. First one is just an FTP to list files, but you need it for root / and /cache directories for 3mf files. Second fetches by path, so you’d need to look at the logic of how the filenames and paths are transferred between nodes. Additionally, if you do this you’d need to put a sizeable delay node after the FTP fetch file as it immediately goes to the next node even if it isn’t done downloading. Recommend 25-30s to be safe.
Since this setup requires NodeRed maybe someone can tell me what I can do to get it to work.
I am running Home Assistant Core in an UnRaid Docker container and also using Nabu Casa.
I have Nodered installed in UnRaid.
I am attempting to connect the two.
When nodered asks for my HA IP address it is not the typical ip:8123, it will not take the Nabu Casa url.
I do not know what to use for the IP address.
I am good getting the token, but the IP is my hangup.
Thanks
Hi! This is the same setup I have (HA Core in unraid docker, with nodered docker also in the same docker-network)
If they are in the same custom docker network, you can just use the container name (Home-Assistant-Core), with the internal port of the container. Otherwise, use the internal IP of the container with the internal port.
If you want it to work via a URL, how are you putting it in? I have my HomeAssistant working via a URL and it is working (not a nabu-casa URL though). Maybe you need to edit the certificate settings and use the nabu casa certificate?
I just tried using my nabu casa URL and it is working fine. May need to check if your server is indeed able to be remotely accessed and/or your NodeRed has internet access?
Firstly, thank you @WolfwithSword for your quick response.
Maybe I do not fully understand what you are telling me or it does not work as you describe. More than likely I do not understand.
I have gone to the area to add a newserver.
In the graphic what am I supposed to put in each area.
Again thank you for the help.
2: The URL for your instance. If you want the remotely accessible url, you would do your nabu casa URL without any port as you said you have that setup. If that fails I would double check the access token.
If your nodered is in the same unraid server as home-assistant-core, then you have other options if it does not work. For example in an unraid setup, do you have a custom docker network (not br0 or bridge)? If so, and both nodered and HACore are in the same docker network, just use the container name and internal port (Home-Assistant-Core:8123). If this is not the case, you can also use the IP of the HACore container and port 8123 (usually 172.x.x.x:8123). I would recommend editing the container in this case to have a static internal IP on your unraid server if you don’t have a custom network.
3: This is just the access token for HACore, which you said you were able to get just fine.
Everytime I shutdown the printer and start again, I have to go Node red and deploy or activate the connection. Is there any method to activate connection automatically.
Another porblem es the IP taht change everytime, but this problem I will resolve with Static IP.
Yeah a static IP is recommended or a way to have it have a hostname over your lan but that’s a bit more complex.
As for redeploying, you shouldn’t need to with nodered? MQTT should be attempting to reconnect anytime it’s disconnected, it just may take upward of 2-5 minutes sometimes. Redeploying the flow would just trigger it to do the connect sequence again in MQTT - there’s no way to manually trigger just that part I believe.
redeploying ist´s not working, I don´t know why, because another flows are working fine, and redeploying without problem. In this case, it seems that connection to printer is in “connecting” status but doesn´t connect at all. Only connects gain ,if if I force the deployment
I’m totally new to Home Assistant (I’ve been a Homeseer user for years). Because I just bought the Bambu X1, all my Octoprint automation is useless. So I came here and wow, amazing work here!! I followed @WolfwithSword 's guide and i’m blown away. I have everything I need now; mainly the automation to turn off power after print complete and emergency notification (wakes me up) if there’s an error or print pause. As part of auto-shutdown, i have 10min window where i can cancel the auto-shutdown. I also prevented accidental turn off of the power switch.
the new firmware released this week introduced notifications, such as inspecting the first layer, as HMS errors. this caused unwanted notifications so I had to add logic to ignore those. My dashboard looks like this now.
Awesome! That’s interesting that now notifications are via HMS errors - think I’ll have to take a look and separate them from hms errors in the node flow as say, “Misc_Notifs” or something. I’ll probably look on the site to see if they listed them as HMS codes yet, if not then I’ll take the two you have there and then see if any others come up.
i think i have an uncovered condition where an error occurs more than once; i don’t think the 2nd error would trigger a notification since the HMS error doesn’t increment with occurrences but error count (can errors be cleared after acknowledgement?). So for now i list all errors with the links. btw, camera snapshot with each notification would be awesome too.
Yeah if the same error pops up a second time it shouldn’t increment, but after acknowledgement I think the HMS Errors does decrement? Or it does for some codes, but others remain until print ends I think.
I’ll be spending this weekend going through the codes to see which ones I can make into “misc or status notifs”. Camera snapshots would be great but there’s no (good) way to interact with the camera. I plan down the road to setup an option in my configurator to enter in a “camera stream URL” so you can enter one in (could be any setup, from external cam to slicer virtual camera url even) that only adds a camera if configured. Would be easy to change in nodered too after the fact. But that’s the only way I think I can support camera entities and stuff for now.
i don’t think i’ve seen any errors decrement, even after ignoring and clearing.
it would make sense to capture the errors in nodered and create your own error entities/counts.
we’d need something to trigger on; if counts go up and down and up again, can we trigger only on up?
if i get a spaghetti notificaiton, i log into the app to view the camera. i guess i can add another camera in the future and send that image as part of the notification.
I don’t have a P1P so any P1P related updates I can’t really review or change but my suspicion is they finally updated the MQTT auth to be in line with the X1C (hopefully) - in that case, if you just redo the configurator and import new (delete old groups in flow before importing) then it should be fine.
Recall before you had to manually change the MQTT nodes for p1p compatibility, i.e., port, tls and security tab. That’s all pre-configured in the configurator for X1C auth so if P1P updated to it like expected, it should just work without modification now if you re-import a new config.
I see your update – should work both in lan only and non lan mode unless the P1P turns off certain things during non lan mode, I have no way of knowing. If you can’t connect with studio or app, try updating those?
Awesome - this means my advanced flow with FTPS should work for P1P’s now unless they store files differently. A FTP list readout of the root directory would be great to see if anyone can provide it.
Edit: I see the readout in that link, looks like it should just work due to the 3mf files being saved! Would love to start seeing some advanced FTPS/Grafana/Postgres setups now with a P1P