It’s been a while since I have posted, but someone on Reddit asked me about my Android widget that shows information from my 3D printers. This will be a quick write up to point you in the right direction, so I won’t have step by step instructions. Keep in mind that this only works when your phone can actually connect to Moonraker. So if you are away from home, it won’t work unless you have a VPN.
I’m using Tasker to get data from Moonraker and Klipper and I’m using KWGT to use that data to display a widget. Tasker updates the data every 5 minutes. Optionally, I also have AutoNotification to monitor my notifications and force tasker to udpate whenever I get a message from my 3d printers. That way, my percentages won’t always be up to date on the widget, but it will always correctly show you if the printer is running or not.
I am using the paid versions of these apps, but I’m not sure if you need that or not. Also, I think that it might be possible to do this using only the KWGT widget, but I’m not 100% sure. I know they added a feature for parsing JSON shortly after I got this setup, but I never had a chance to check that out.
I uploaded the task to Taskernet so the easiest way to import it is to click that link on your phone. This one connects to all 4 of my printers. As you can see, there are 36 steps. But really, it’s just 9 steps for each of my 4 printers. You can delete the rest if you don’t need them. The main things you will need to change are the IP addresses, and the variable names (in the first set, the variables start with ‘elf’, which is what I named that first printer.
Next, in the profiles tab, create a profile that runs that task ever X minutes. I have no idea what the impact is to your battery if you do updates very often. I do it every 5 minutes, and my phone lasts the day plus some.
Also, if you wanted to use AutoNotification to automatically update when your printer sends you a notification. Note, I have no idea what I did to set this up. I think something is wrong with Tasker showing this profile. But I’m pretty sure it’s working, but I don’t really see how. Sorry about that. I just set this up so long ago that I don’t remember. If you figure it out, please post in the comments.
In KWGT, you should be able to just import this file I exported from mine. Then load up that widget in KWGT, and edit this variable names that were sent by Tasker.