Ender-3 V3 SE: config settings to roll our own firmware please

Edit: Yes, I did install the latest version of OctoPrint-E3v3seprintjobdetails (v0.1.8). My previous version was v0.1.5, I think.

Hmm, weird. I print directly from OrcaSlicer too. Anyway, here is a video I took printing directly from OrcaSlicer directly and the LCD screen does not change at all and here is the octoprint.log printing directly from it.
octoprint_printdirect.3mf (7.9 MB)

Here is also the log when I upload instead and started the print from OctoPrint UI.
octoprint_printfromoctoprint.3mf (7.7 MB)

Also note that I tried changing the O9000 commands from displaying either time, layer or M73 progress, no changes to the situation.

Thanks, Iroh3D.

Regards,
Kai

So what I can see based in your log is:

  • You are using a Time Based progress.
  • The metadata analysis failed I can see in the log warning messages. When using time based progress you need to have the PTG plugin enabled so it can provide that analysis. Without that the plugin cannot get crucial infoirmation.
  • For Layer progress is the same it only changes the % between current and total layers.
  • If using M73 the gcode need to provide all the information. But is not automatically you need to configure your slicer to do so.

Here are the relevant parts of your log:

2025-01-29 00:17:25,477 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>>>> E3v3seprintjobdetailsPlugin Event detected: PrintStarted
2025-01-29 00:17:25,477 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Plugin Version: 0.0.1.8
2025-01-29 00:17:25,477 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Sliders values:
2025-01-29 00:17:25,547 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Enable O9000 Commands: True
2025-01-29 00:17:25,547 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Progress based on: time_progress
2025-01-29 00:17:25,547 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>+++ PrintStarted with Loaded File waiting for metadata
2025-01-29 00:17:25,710 - octoprint.util.comm - INFO - Changing monitoring state from "Starting" to "Printing"
2025-01-29 00:17:25,851 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>>>> E3v3seprintjobdetailsPlugin Getting Print Details Info with counter value 0.
2025-01-29 00:17:26,153 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - File selected: /octoprint/octoprint/uploads/flowrate_0_PLA-Wood_56m21s.aw.gcode
2025-01-29 00:17:26,153 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Total layers found: 10
2025-01-29 00:17:26,153 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Checking if Print Time is set by M73: None
2025-01-29 00:17:26,153 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Print Time is not set by M73, getting from printers current job data
2025-01-29 00:17:26,153 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>>>> E3v3seprintjobdetailsPlugin Print time still unknown
2025-01-29 00:17:26,154 - octoprint.plugins.PrintJobHistory - INFO - PrintJob flowrate_0_PLA-Wood_56m21s.aw.gcode started!
'2025-01-29 00:17:26,162 - octoprint.plugins.SpoolManager - WARNING - calculating filament aborted because analysis metadata was missing
2025-01-29 00:18:50,144 - octoprint.plugins.SpoolManager - WARNING - calculating filament aborted because analysis metadata was missing'
....
octoprint.plugins.action_command_notification - INFO - Got a notification: Printing...
2025-01-29 00:19:18,974 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Ignoring M117 Command since this plugin has precedence to write to the LCD: M117 ETA is 01:14:16 AM
....
2025-01-29 00:20:30,151 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>>>> E3v3seprintjobdetailsPlugin Event detected: ZChange
'2025-01-29 00:20:30,151 - octoprint.plugins.E3V3SEPrintJobDetails - WARNING - >>>!!!! Printing without all the Data? our safe counter reached >3 Double check info'
2025-01-29 00:20:30,153 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>>>> E3v3seprintjobdetailsPlugin Checking if all attributes are set.
'2025-01-29 00:20:30,153 - octoprint.plugins.E3V3SEPrintJobDetails - WARNING - Attributes not set: ['print_time', 'print_time_left', 'current_layer', 'progress']
2025-01-29 00:20:30,153 - octoprint.plugins.E3V3SEPrintJobDetails - WARNING - Payload: {'new': 2.0, 'old': 0.28}'
2025-01-29 00:20:30,153 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>>>> E3v3seprintjobdetailsPlugin Getting Print Details Info with counter value 4.
2025-01-29 00:20:30,456 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - File selected: /octoprint/octoprint/uploads/flowrate_0_PLA-Wood_56m21s.aw.gcode
2025-01-29 00:20:30,456 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Total layers found: 10
2025-01-29 00:20:30,457 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Checking if Print Time is set by M73: None
2025-01-29 00:20:30,457 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - Print Time is not set by M73, getting from printers current job data
2025-01-29 00:20:30,457 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>>>> E3v3seprintjobdetailsPlugin Print time still unknown
2025-01-29 00:20:30,457 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>>>> E3v3seprintjobdetailsPlugin Update Print Details Info
....
2025-01-29 00:20:33,529 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>>>> E3v3seprintjobdetailsPlugin Event detected: CaptureStart
2025-01-29 00:20:33,532 - octoprint.plugins.E3V3SEPrintJobDetails - INFO - >>>>>> E3v3seprintjobdetailsPlugin Event detected: ZChange
....

Also noticed DisplayLayerPlugin enable, you can disable O900 and use M117 to use that one or else disable that plugin. But PTG and Dashboard plugins are esential to make it work correctly.

My PTG plugin, as well as Dashboard, are enabled and left default from which last I used Cura which worked. The moment I moved to OrcaSlicer, somehow things are not working as well as Cura. Not just the printer’s LCD progress, but stuff related to metadata such as costestimation, filament used for spoolmanager, etc.

I have disabled the DisplayLayerProgress and opted to use O9000 and there is still no display on LCD when slicing with OrcaSlicer. But printing from Cura, immediately works. Here are the logs for when I have disabled the DLP plugin. Here’s the log. Note the timestamp around 12:40-12:43 is when I initiated the print using OrcaSlicer and 12:45 using Cura.
octoprint.3mf (282.6 KB)

Thanks for your time.

I tried creating a second instance of Octoprint on Portainer at which I only installed Dashboard, PTG plugins and your plugin, and the bundled GCodeViewer. I also made sure to add the O9000 OCON OCOFF at the GCode scripts.

I tried slicing and printing again from Orca (2.2.0) directly, still no update to the LCD screen. I tried bith Time Progress and Layer Progress. I can safely say no other plugins are causing this issue, I guess. Here’s the log for that one.

octoprint.3mf (421.9 KB)

Could it be my OrcaSlicer is having an issue or bug? I can try uninstalling it and reinstall it back.

Edit: I uninstalled OrcaSlicer, scrubbed all the related files and folders for the program. Reinstalled and configure with the base setup for my printer and still does not work.

In the meantime @eduard-sukharev has pushed the PR#22 which enables the Input Shaping Menu under the Control Settings.

Version v1.0.9.7_7 is available now.

Not sure what is causing the issues with the metadata analysis, in your log I can see same errors as the other one: there is no estimation or result for Print Time which affects Print Time left too.

But you can use M73 based progress instead, just enable it in OrcaSlicer so the progress will be based on the GCODE not in the analysis.

1 Like

Hi! what kind of bug are you getting?

Hi @Iroh3d

This is a big ask but not a issue if you dont do it.

I know you said a 7 x 7 grid is overkill, however, bed levelling is not needed to be done very often and a 7 x 7 brings in more accuracy with levelling.

Can I ask or suggest, when you compile firmware that you also compile versions for the 7 x 7

As said, its not a big issue, and I do hugely appreciate what you have done and continue to do.

Well, I am not sure too.

I don’t know if it’s a bug with OctoPrint itself or a bug on OrcaSlicer. I will post that issue on OrcaSlicer github later. Because I have alreaady posted the issue about metadata on CostEstimation and Slicer Estimator plugins because those plugins also could not read out the metadata embedded inside OrcaSlicer. NilsRo the Slicer Estimator maintainer closed my issue because he said it was related to an ongoing issue with OctoPrint itself.

I am currently printing something and it will finish tomorrow, I want to test a few things to really get to the bottom of this. Here is a list of tests I did with 6 configurations from each tests (M117 (time, layer and M73) and O9000 (time, layer and M73) and the results:

  • Sliced and print directly from Cura (Success :white_check_mark:)
  • Sliced and upload from Cura but print from OctoPrint (Success :white_check_mark:)
  • Sliced on Cura, then upload and print manually from OctoPrint UI (Success :white_check_mark:)
  • Sliced and print directly from Orca (Failed :x:)
  • Sliced and upload from Orca but print from Octoprint (Failed :x:)
  • Sliced on Orca, then upload and print manually from OctoPrint UI (Failed :x:)
  • Sliced on a different GCode generator (like calibration tests on Ellis3DP or teachingtechyt, then upload and print manually from OctoPrint UI (Success :white_check_mark:)

Here are the things I want to test out later after the print:

  • Open someone else’s OrcaSlicer gcode (or 3mf/step) file and then print from Orca directly
  • Upload someone else’s OrcaSlicer gcode file and then print from OctoPrint UI

Could you share with me a sample of sliced file from OrcaSlicer that you used that can ensure you get to show on the LCD?

Thanks!

Regards,
Kai

Hi, @Bruce_Van_Essen.

Actually it’s quite simple to adjust Iroh3D’s firmware yourself as the latest release made the changes quite simple thanks to the implementation of simple grid. I did it with my printer:

All you need to do is change the GRID_MAX_POINTS_X on line 1587 on visual code to what value you want (I used 7x7 also. Wanted to change to 10 to test it out but maybe later) and then build/compile and flash:

You are right, as Iroh mentioned, 5x5 is already more than accurate than the stock 4x4, but I used the 7x7 way before I found Iroh’s fork of Marlin, so I preferred 7x7 because somehow I have not gotten any failed prints, ever.

Let me know if you want the edited version of firmware, I could share with you. I have a GitHub account but I don’t know how to share it there as an edited (or fork or whatever it is called) of Iroh3D’s firmware.

Have a great day.

Regards,
Kai

When running Octoprint from a Docker container, PTG plugin will not work. :frowning: It’s a known issue

Hi @darkclover92

I have tried in the past to compile my own firmware. I made a disaster of it unfortunately. Im a PC tech and for some reason I just cant get my head around this compiling stuff.

I am getting a bit long in the tooth to try and figure it out and always appreciate the help from the good folks out there.

Wait, so all these times, when I initiated the print directly from Cura to OctoPrint and the print file/work was shown on the LCD was not due to Iroh3D’s firmware and plugin working with PTG and Dashboard?

Hi @Bruce_Van_Essen

I made a fork from Iroh3D’s firmware for anyone interested with the 7x7 bed mesh levelling. Check it out at my repo. Please let me know if there are any errors or anything because this is my first time sharing a forked firmware compiled by myself and I am also new to github as well.

Please note that my version is for baudrate 128000, not the default 115200.

Cheers.

Regards,
Kai

Edit: I revert the cold extrusion temp back to default as it caused problems when printing with filament lower than 240c. The other configs remain and tested.

1 Like

Hi @darkclover92

I did install your firmware but there appears to be a bug. Everything went fine until i went to print and the extruder fails to go.

Like the idea toi stop the beeps cause they are really annoying. Had that on the E3V2 but there was an option in the menu to turn the beeps on or off.

I run Ocoprint in Docker and after attempting to find out why PTG was not working, I went looking for a solution only to find out it is a known issue with it. This is why I use the M73 option with @Iroh3d plugin to update the LCD display.

If you got PTG working in a Docker container, then please let me know what you did. I don’t know Docker well enough to get it working properly

Hi, @Bruce_Van_Essen.

I already released the amended version of the v1.9.0.7_7v2. It was a mistake on my part for assuming the prevent cold extrusion only affects the nozzle heat up from cold to extrude or filament change. It affected the printing temps as well. I did not notice because I was printing ABS+ at 250c-260c most of the time. I only noticed it when I printed PLA last night.

So, I changed it back to the default which was 180c. You can reflash it back without losing the M500 settings. Just keep a copy of your current M503, save it to eeprom, reflash and M501 back to restore. Also, the beeper did not work. Apparently, there were other parameters within the lcd part to configure. I will take a look later.

Sorry for the inconvenience.

Regards,
Kai

Hi, @Iroh3D.

I tried using the M73. At first, I thought there was still an issue of print progress not sending to the LCD screen. During mid-print, I went and check on the progress and I noticed something when there was a layer change from layer 372 to 373, there was an update but somehow it does not display properly:

Any idea why? Because printing Cura-sliced-gcode files work nonetheless. But printing OrcaSlicer-sliced-gcode files, the only thing that works, the LCD will only show update when ‘Printing was cancelled’ or ‘Printing Complete’. But the start print and progress, nothing was shown but judging from my photo, it seems like it was sending some sort of update.

Could you also send me a sample of gcode file sliced from your OrcaSlicer so I can test it on my machine?

Thanks.

Regards,
Kai

The only way to know why is not sending the values is to take a look at your Octoprint log. Based on the previous logs there is a problem with your time estimations.

As @TechieZebra commented seems there is a bug with PTG on docker systems so that’s why we added the M73 option which we have tested successfully.

To make it work first you need to enable the option in the slicer, and to disable PTG and DisplayLayer plugins.

Seems like your installation is different to ours can’t tell why but in theory if you follow above steps M73 should works normal.

About the file here is the one I use to make the tests is a small cube and you can remove the filament and send it to print. Always test without filament to avoid wasting it:
M73Cube_PLA_5m2s.gcode.3mf (92.5 KB)

Всем привет. Извините, что перебиваю. Увидел эту прошивку с включенным input shaiping и какойто новой сеткой 5х5 (7х7)
И разные версии 1.0.9.7_7 и 1.0.9.7_7v3 или v2. Но не понял, она для всех принтеров e3v3se или только для тех, которые работают на octoprint?? Я пользуюсь orcaslicer

1 Like