Mqtt Print Time Remaining Topic?

Is there an mqtt Print Time Remaining topic?

PS:
Are there topics for the MK3 sensors (Filament, Layer, Power Etc..) also?

time remaining has been requested. Not sure if it's in the event data, I haven't dug into it (yet).

Not sure what you mean by this.

1 Like

Here's a screen shot.

PS:
Per the MK3, A trigger from the MK3 to OctoPrint then out via an MQTT topic. So if there is a power disruption for instance, a msg goes out up the chain.. MK3 >> OctoPrint >> MQTT..

I know what print time left is, yeah. Again, I'm not sure if it's in the event data.

Yeah, my MK3 is remote (at least, it's out of earshot), so I'd appreciate this too. I'm not sure what it sends over the serial for events like filament out, power out, etc. because it doesn't happen often enough for me to pay attention to.

I'm going to use this thread to track messages seen on serial. Here's a filament sensor failure (eg filament missing or unreadable), which turned into a heat powerdown by the time I knew about it.

Send: N60751 G1 X190.098 Y59.077 E0.02110*80
Recv: ok
Recv: fsensor_stop_and_save_print
Send: N60752 G1 X190.098 Y58.499 E0.01965*95
Recv: fsensor_oq_meassure_start
Recv: echo:Enqueing to the front: "G1 E-3 F200"
Recv: echo:Enqueing to the front: "G1 E3 F200"
Recv: fsensor_oq_meassure_stop, 4 samples
Recv:  st_sum=716 yd_sum=19 er_sum=3 er_max=3
Recv:  yd_min=57 yd_max=7 yd_avg=4 sh_avg=5
Recv: fsensor_update - M600
Recv: echo:Enqueing to the front: "M600"
Recv: echo:busy: processing
Recv: echo:busy: paused for user
Recv: echo:busy: paused for user

I actually opened a ticket with Prusa about the misspelled 'meassure'.

Thanks...

If it's being send over in the event topic I can't find it. I would have thought it would be present in the progress topic, but It's not.

I'll also post any serial messages I find referencing the above MK3 'features'.

@RJ_Make, the MQTT plugin's devel branch has an Include extended information option in the progress messages topic that will include a printer_data attribute to the message. That attribute will include detailed print time left information, etc.

{
	"_timestamp": 1539409140,
	"progress": 14,
	"printer_data": {
		"progress": {
			"completion": 14.002217450646745,
			"printTimeLeftOrigin": "genius",
			"printTime": 834,
			"printTimeLeft": 33538,
			"filepos": 5123126
		},
		"state": {
			"text": "Printing",
			"flags": {
				"cancelling": false,
				"paused": false,
				"operational": true,
				"pausing": false,
				"printing": true,
				"resuming": false,
				"sdReady": true,
				"error": false,
				"ready": false,
				"finishing": false,
				"closedOrError": false
			}
		},
		"currentZ": 6.8,
		"job": {
			"averagePrintTime": 39879.744107325874,
			"lastPrintTime": 39821.82322406769,
			"user": "jneilliii",
			"file": {
				"origin": "local",
				"name": "Baby_Groot_Planter_fixed_PLA_1.75.gcode",
				"date": 1534571507,
				"path": "Baby_Groot_Planter_fixed_PLA_1.75.gcode",
				"display": "Baby_Groot_Planter_fixed_PLA_1.75.gcode",
				"size": 36587962
			},
			"estimatedPrintTime": 39405.76954045317,
			"filament": {
				"tool0": {
					"volume": 87.22828079646774,
					"length": 36265.3039799935
				}
			}
		},
		"offsets": {}
	},
	"location": "local",
	"path": "Baby_Groot_Planter_fixed_PLA_1.75.gcode"
}

The one thing I'm noticing though is the actual progress attribute is not aligning with the percent complete shown on the web interface. Not sure if that is a bug with the progressplugin mixin's information, testing under the virtual printer, or a bug with OctoPrint itself.

Was this always there or did you make the changes?

It was there for some time but I tweaked it just recently. It initially was adding that attribute to every published message, but it only seemed to make sense to me to be on the print progress events.

Great, thanks for your work on it. When do you think it will make it into the wild?

As soon as I've had time to test and verify it's working as expected. Would love to get feedback from you as well if you're willing to test. You can install using the URL below in plugin manager.

https://github.com/OctoPrint/OctoPrint-MQTT/archive/devel.zip

I've install the beta, but I don't see the messages..

Nevermind, I see that I need to select the extended printer data setting.. :slight_smile:

1 Like

Just checking back in. I haven't noticed any adverse effects of this dev version of MQTT plugin @RJ_Make, have you? I don't really use the MQTT much so you might be able to provide better feedback than myself.

Have you heard of chart brut?

Is there any way of shortening the message in this topic? I am trying to read this mqtt topic with arduino, and I am interested only in time remaining and progress percentage. Now it seems to me that the message is too big for arduino to handle, so it is rejecting it.

sorry to reboot a old thread, but was there any progress on this? prehaps i just missed a setting, mine also shows the incorrect info on MQTT, its always behind what octoprint/print genius shows.

[EDIT]
ill just add if its a short print it will get to lets say 40% and will finish, on long prints it tends to be behind till about 50 - 60% then it kinda catches up with its self. its just strange behavior..

Not sure on this one, Grant, first I've heard of it, but also don't use MQTT all the time so not monitoring it like that either. Maybe you could post an issue in the repository and we can deep dive into the potential problem. My first step would be removing PTG as a test and see if the values are effected in any way and determine if it's plugin or core related.