Jump to content

extension working in 3.2 not working in 3.3


Tmirante

Recommended Posts

Posted (edited) · extension working in 3.2 not working in 3.3

Good morning 

my extension perfectly working in 3.2 on Prusa I3 mendel printer and developed in Python as required with all files. perfectly working in 3.2 crashes at first command in 3.3 and 3.4

BedlevelPlugin.zip

Edited by Tmirante
  • Link to post
    Share on other sites

    Posted · extension working in 3.2 not working in 3.3

    Check the logs. They should tell you what went wrong.

     

    Cura changes from version to version. That means you can't always use the same code in plugins between versions. Such is life.

  • Link to post
    Share on other sites

    Posted · extension working in 3.2 not working in 3.3

    yes i have the answer but i don't understand reason . what is changed in the object ??????

     

    2018-07-11 18:14:48,582 - INFO - [MainThread] cura.Machines.MachineErrorChecker._setResult [181]: Error check finished, result = False, time = 2.9s
    2018-07-11 18:14:49,082 - DEBUG - [MainThread] CuraEngineBackend.CuraEngineBackend.slice [210]: Starting to slice...
    2018-07-11 18:14:49,082 - DEBUG - [MainThread] CuraEngineBackend.CuraEngineBackend.slice [227]: Going to slice build plate [0]!
    2018-07-11 18:14:49,082 - DEBUG - [MainThread] CuraEngineBackend.CuraEngineBackend.slice [235]: Build plate 0 has no objects to be sliced, skipping
    2018-07-11 18:14:52,540 - DEBUG - [Thread-7] USBPrinting.AutoDetectBaudJob.run [37]: Checking COM11 if baud rate 250000 works
    2018-07-11 18:14:54,062 - WARNING - [MainThread] UM.Qt.QtApplication.__onQmlWarning [277]: file:///C:/Program Files/Ultimaker Cura 3.3/resources/qml/SidebarHeader.qml:20: TypeError: Cannot read property 'length' of undefined
    2018-07-11 18:14:54,417 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [66]: An uncaught error has occurred!
    2018-07-11 18:14:54,419 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: Traceback (most recent call last):
    2018-07-11 18:14:54,420 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]:   File "X:\3.3\build\inst\lib\python3.5\site-packages\UM\Qt\Bindings\ExtensionModel.py", line 51, in subMenuTriggered
    2018-07-11 18:14:54,421 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]:   File "X:\3.3\build\inst\lib\python3.5\site-packages\UM\Extension.py", line 38, in activateMenuItem
    2018-07-11 18:14:54,422 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]:   File "C:\Program Files\Ultimaker Cura 3.3\plugins\BedlevelPlugin\BedLevelMachineAction.py", line 133, in startBedLeveling

    2018-07-11 18:14:54,423 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]:     printer_output_devices[0].moveHead(0, 0, 10)
    2018-07-11 18:14:54,425 - CRITICAL - [MainThread] cura.CrashHandler.__init__ [69]: AttributeError: 'USBPrinterOutputDevice' object has no attribute 'moveHead'
    2018-07-11 18:15:07,514 - DEBUG - [MainThread] UM.PluginRegistry._savePluginData [122]: Saving plugin data to file 'C:\Users\tommy\AppData\Roaming\cura\3.3\plugins.json'
    2018-07-11 18:15:07,514 - INFO - [MainThread] UM.PluginRegistry.loadPlugin [404]: Loaded plugin FileLogger

  • Link to post
    Share on other sites

    Posted · extension working in 3.2 not working in 3.3

    A lot changed between Cura 3.2 and Cura 3.3:

    https://github.com/Ultimaker/Cura/compare/3.2...3.3#diff-1ffa6abbfcca423f5309011d0cce73ee

    Specifically for your plugin, moveHead (and other jogging functionality) was moved from the outputdevice to a "controller".

     

    Best you can do is look again at the Ultimaker BedLevelMachineAction and see how it has changed.

    https://github.com/Ultimaker/Cura/blob/3.3/plugins/UltimakerMachineActions/BedLevelMachineAction.py

    So for example, instead of calling moveHead on printer_output_devices[0] you have to call it on printer_output_devices[0].activePrinter. There may be other changes required.

     

    Making plugins requires ongoing work to keep up with changes in Cura.

  • Link to post
    Share on other sites

    Posted · extension working in 3.2 not working in 3.3

    i did changings according to new methods of printers changing but when i do testing extension not appears in menu ,If i load old version i modified instead it appers , hard job!!!!  attached new  NOT visible on Menu version. only the calling to printers and commands  was changed . i continue analisys 

    BedlevelPlugin.zip

  • Link to post
    Share on other sites

    Posted (edited) · extension working in 3.2 not working in 3.3

    Updated version ( there was an error in last i sent) i did changings according to new methods of printers changing but when i do testing extension not appears in menu ,If i load old version i modified instead it appers , hard job!!!!  attached new  NOT visible on Menu version. only the calling to printers and commands  was changed .  i continue analisys . on log i find this error 

     

    2018-07-16 12:22:11,177 - ERROR - [MainThread] UM.Qt.Bindings.PluginsModel._update [63]: BedlevelPlugin is missing a plugin metadata entry

    ????????? if i load the old version with the same name it appear

     

    i think the error is here ibut i don't know why 

     

    def _getPrinterOutputDevices(self) -> List[PrinterOutputDevice]:
        return [printer_output_device for printer_output_device in Application.getInstance().getOutputDeviceManager().getOutputDevices() if isinstance(printer_output_device, PrinterOutputDevice)]
    

    this list is not seen internally to the class i think for the" ->" sign

     
     

     

    BedlevelPlugin (2).zip

    Edited by Tmirante
  • Link to post
    Share on other sites

    Posted · extension working in 3.2 not working in 3.3
    On 7/16/2018 at 12:16 PM, Tmirante said:

    Updated version ( there was an error in last i sent) i did changings according to new methods of printers changing but when i do testing extension not appears in menu ,If i load old version i modified instead it appers , hard job!!!!  attached new  NOT visible on Menu version. only the calling to printers and commands  was changed .  i continue analisys . on log i find this error 

     

    2018-07-16 12:22:11,177 - ERROR - [MainThread] UM.Qt.Bindings.PluginsModel._update [63]: BedlevelPlugin is missing a plugin metadata entry

    ????????? if i load the old version with the same name it appear

     

    i think the error is here ibut i don't know why 

     

    
    def _getPrinterOutputDevices(self) -> List[PrinterOutputDevice]:
        return [printer_output_device for printer_output_device in Application.getInstance().getOutputDeviceManager().getOutputDevices() if isinstance(printer_output_device, PrinterOutputDevice)]
    

    this list is not seen internally to the class i think for the" ->" sign

     
     

     

    BedlevelPlugin (2).zip

     

  • Link to post
    Share on other sites

    Posted · extension working in 3.2 not working in 3.3

    what is the meaning of  

    def _getPrinterOutputDevices(self) -> List[PrinterOutputDevice]: and why it seems listed out of the class also if tabs are right ?
  • Link to post
    Share on other sites

    Posted · extension working in 3.2 not working in 3.3

    what is the meaning of  

    Plugin is missing a plugin metadata entry
  • Link to post
    Share on other sites

    Posted (edited) · extension working in 3.2 not working in 3.3

    ok boys let me say that installation of cura actually is a BLOB. I installed my plugin on 3.4 and it seems to work . I have no answers, i removed 3.3 version. i see that there is a problemi in installation about missing plugin metadata entry and to solve is required reinstall erasing appdata. i don't know if it is real may be somebody knows  

    Edited by Tmirante
  • Link to post
    Share on other sites

    Posted · extension working in 3.2 not working in 3.3
    19 hours ago, Tmirante said:

    ok boys let me say that installation of cura actually is a BLOB. I installed my plugin on 3.4 and it seems to work . I have no answers, i removed 3.3 version. i see that there is a problemi in installation about missing plugin metadata entry and to solve is required reinstall erasing appdata. i don't know if it is real may be somebody knows  

    any hint appreciated

  • Link to post
    Share on other sites

    Posted · extension working in 3.2 not working in 3.3

    ok new test made as ahoeben said to do but at the row in the plugin when i add  -> List[PrinterOutputDevice]: the plugin stop to appear in menu as there is an error , if a get out -> List[PrinterOutputDevice]: it is right may you help me to understand what -> List[PrinterOutputDevice]: means and why there wasn't in previous versions?????

     

    def _getPrinterOutputDevices(self) -> List[PrinterOutputDevice]:
        return [printer_output_device for printer_output_device in Application.getInstance().getOutputDeviceManager().getOutputDevices() if isinstance(printer_output_device, PrinterOutputDevice)]
    
  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • 🎄✨ Thingiverse Tree Ornament Challenge! ✨🎄
        We've been running a Tree Ornament Challenge with a chance to win an UltiMaker S3 or colorFabb filament.
        Design a 3D printable tree ornament and join our festive challenge on Thingiverse. 🎁✨


        📆 Submission Deadline: December 22
        🏷️Tag your designs with Holidays2023

        Click here to join and check out the over 300 other amazing designs

        How to Enter
        Design an Ornament
        Create a 3D printable tree ornament that captures the magic of the winter season. Think snowflakes, sleighs, reindeer, cozy mittens, or anything that embodies the joy of the holidays. Upload to Thingiverse
        Share your masterpiece on Thingiverse and add the tag Holidays2023. Don't forget to include a captivating description and images that showcase your design from different angles. Submit by December 22
        All entries must be submitted by December 22nd to be eligible for consideration.
          Entering a new design
         
        Entering an existing design
         
         
        Winning designs should:
        Be original Creations
        Your designs should be original works, avoiding the use of others' intellectual property without permission. Include STL Files
        Each submission must include at least one STL file for 3D printing. Showcase a Completed Print
        Provide at least one photograph featuring a completed print of your design. Include Documentation
        Share the creative journey! Include documentation of your design process, giving us a peek behind the scenes. For example, show a screenshot of the model in your design program. Use the Tag Holidays2023.
        Use this tag to ensure your entry is counted in the Tree Ornament Challenge. Be submitted after October 1st, 2023
        Ensure your design was uploaded to Thingiverse after October 1st, 2023. Adhere to Submission Guidelines and Terms of Service
        Make sure your submission aligns with our guidelines and Thingiverse's Terms of Service.  
        Good luck 🎉
        • 1 reply
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
         
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
      • Ultimaker Cura 5.6 stable released
        Cura now supports Method series printers!
         
        A year after the merger of Ultimaker and MakerBotQQ, we have unlocked the ability for users of our Method series printers to slice files using UltiMaker Cura. As of this release, users can find profiles for our Method and Method XL printers, as well as material profiles for ABS-R, ABS-CF, and RapidRinse. Meaning it’s now possible to use either Cura or the existing cloud-slicing software CloudPrint when printing with these printers or materials
        • 14 replies
    ×
    ×
    • Create New...