Git Product home page Git Product logo

octoprint-gpx's Introduction

OctoPrint-GPX

An OctoPrint plugin for MakerBot (prior to 5th gen) and clones.

It uses GPX to translate gcode to x3g underneath OctoPrint in the communications layer.

GPX is a Gcode Postprocessing to X3g tool written by WHPThomas. Gcode is a language for describing toolpaths in 3d printers which is derived from the gcode used in CNC machines. X3g is an extension to the s3g protocol which was named for the Sanguino v3 which was in use at the time as the bot's controller.

Caveats

I've only tested this on one config: Raspberry Pi set up via the OctoPi image FlashForge Creator Pro running Sailfish 7.7

Installing

  1. Start with OctoPi: Get your Raspberry Pi up and running by following the instructions on OctoPi

  2. Get the GPX plugin. You get plugins by using the Plugin Manager in OctoPrint.

    • Open a browser to octoprint (http://ipaddress/) and login
    • Choose "Settings" from the top bar
    • Click "Plugin Manager" on the left side
    • Click the "Get More..." button
    • Find GPX in the list and click "Install"
    • Restart octoprint (if you're using OctoPi: System.Restart from the menu bar)
    • Refresh your browser
  3. Set and save the GPX settings.

    • OctoPrint->Settings->GPX
    • Pick your machine type: Replicator 1 Dual (if you have a clone, it's most likely a Rep 1 clone even if it was sold as a Rep 2 clone)
    • Set the gcode flavor to "RepRap" and your slicer too. The only reason to use MakerBot flavor is if you are using a MakerBot slicer.
  4. Try connecting

    Choose a port and baudrate. I don't have AUTO working yet. 115200 works on my bot.

  5. Upload gcode from your slicer to OctoPrint.

    OctoPrint only understands ".gcode" and then GPX translates it to x3g. Don't upload x3g to OctoPrint. That won't work.

    On the other hand, only use ".x3g" with the printer's SD card. It doesn't understand gcode and GPX running in OctoPrint can't help the firmware with it directly on the SD card.

Known issues

  • Upload to SD doesn't work. It can't work directly because SailFish removed that feature to save bytes. Probably a good call since who wants to wait for 115200 baud when you can just plug the SD card into your PC. Google Groups Post I'm working on FlashAir support
  • Can't delete SD files for a similar reason
  • For prints that have small segments that don't require full stops to move to the next one (ie cylinder with a smooth surface), you'll be happier printing off of the printer's SD card. Printing over serial peaks out at about 60 segments per second.
  • Upload to OctoPrint and then print works with .gcode, not with .x3g. The GPX layer converts the gcode to x3g when you print from OctoPrint. I need to figure out a way to make the UI more graceful about this. To review: If the destination is OctoPrint and let it drive: .gcode. If the destination is the SD card and let the bot drive the print: .x3g.

Plan

I was thinking for my next project, possibly, to start an OctoPrint plug-in that will talk to the FlashAir SD card directly bypassing the motherboard on the the bot.

The GCode viewer can't follow along the build on the SD card because it doesn't have a good way to understand where the bot is in printing an x3g file. I'm thinking about this one. Perhaps we can use the number of commands processed to line something up. I have the printer reporting current position back to OctoPrint every second or so now, so theoretically it could follow along-ish on z-change, but it'd be guessing about the pacing in between. It'd require a new hook or something in OctoPrint.

octoprint-gpx's People

Contributors

foosel avatar markwal avatar ohrn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

octoprint-gpx's Issues

OctoPrint is not aware of jobs finishing when printing from SD Card

What were you doing?

Printing a long job from SD card, initiated through the OctoPrint interface.

What did you expect to happen?

I expected OctoPrint to realize the job was done. I checked on it about 2-3 hours after the job was complete and OctoPrint still didn't know it was done.

What happened instead?

Nothing happened. OctoPrint just acted like the job was still going. I manually typed in the M73 P100 command in the Terminal tab and sent it. Nothing changed. Later, I checked the end gcode and sure enough it already had that entry at the very top so I've been running it all along.

What's kind of annoying with OctoPrint not realizing that a job ends is the timelapse continues running until you manually intervene.

Branch & Commit or Version of OctoPrint and GPX Plugin

Version: 1.2.10 (master branch)
GPX 2.4.2

Octoprint doesn't complete jobs when printing from SD

Similar to Issue #16, when printing from SD Octoprint doesn't complete a print. These prints are always initiated through the OctoPrint interface. Sending M73 P100 doesn't seem to help. Terminal shows the following when the print has finished:
Recv: Done printing file X:117.85 Y:102.01 Z:150.00 E:0.00

Version: 1.2.13 (master branch)
GPX 2.5.2

Sometimes the OctoPrint-GPX loses its settings on OctoPrint upgrade

From OctoPrint/OctoPrint/issues/1659, @jackpine63 says:

Based on what you have above, problem solved. I didn't even think to check GPX settings. Apparently, the upgrade from 1.2.18 to 1.3.0 reset the GPX settings to default (?) I went in to my 1.2.18 backup and found:

$ ls -l
total 16
-rw-r--r-- 1 pi pi 171 Nov 11 17:37 gpx.ini
-rw-r--r-- 1 pi pi 171 May 27 2016 gpx.ini.bkp

Both files are identical. However, in the upgraded image, I found the two files were different. gpx.ini.bkp matches the two files in the 1.2.18 backup:

[machine]
actual_filament_diameter=1.75
[printer]
build_progress=0
ditto_printing=0
gcode_flavor=makerbot
machine_type=fcp
nominal_filament_diameter=1.75
recalculate_5d=0

However, the active gpx.ini in the 1.3.0 system is different:

[machine]
actual_filament_diameter=1.75
[printer]
build_progress=1
ditto_printing=0
gcode_flavor=reprap
machine_type=r1d
nominal_filament_diameter=1.75
recalculate_5d=0

Note the different values for gcode_flavor and machine_type. I guess I could have updated in Octoprint, but I just copied gpx.ini.bkp to gpx.ini and rebooted. Things are back to working correctly now.

I didn't go back and try to repeat the upgrade to verify I can duplicate the problem (out of spare SD cards), but appears after the upgrade one has to go into GPX settings and reset everything, or restore the file on the file system as I did.

Thanks

Thing-o-matic Clone timeout

HI EVERYONE!
I have a (i think) Thing-o-matic clone, the printer is called come3d. I've always use this printer with replicator g. But recent changes in mac OS has made the arduino clone almost impossible to use.
So i decide to instal OctoPi to my raspberry pi 3.

The only problem i have is that when i try to connect after a couple of second i receive a time Out error.. Im currently using Octoprint 1.2.10 and GPX Plug in 2.5.5

The Machine type i use when using ReplicatorG:
- Thingomatic w / HBP and Stepstruder MK7

The error in octoprintConsole:

Unexpected error while connecting to serial port: /dev/ttyUSB0 Timeout: 'Timeout' @ comm.py:_openSerial:1459 (hook GPX)

  • The error appears around 5 second after pressing the "CONNECT" button
    Im using a baud rate of: 115200

pdf user manual of the come3d printer: http://www.tinyosshop.com/datasheet/Come3D%20Printer%20Guide.pdf

¿Any ideas? ¿Should i install any extra divers for my pi to recognize the arduino?

Thanks on advance!

Misaligned origin issue when converting gcode to x3g

Any prints I upload to octoprint end up printing to the left of where I see them in the Gcode Visualizer.
I plated the 20mm calibration cube in slic3r and exported gcode, as well as using GPX locally to create an x3g file.

I uploaded the gcode using the octoprint web interface, loaded it and printed. The print was left of center on my bed by about 30mm.

I then saved the .x3g file converted in Slic3r onto the sd card and printed. The box was dead center on my bed.

I've been trying to compare settings in my local copy of gpx with the one included with the plugin, as well as tracing the GCode commands sent to the printer but have been scratching my head.

I'm using a FlashForge creator pro with Sailfish v7.7.
I do not have any tool offsets, my bed dimensions are as they should be, and are the same as I have them in slic3r on my mac. I don't see an origin input as I do when configuring my printer in slic3r, is it possible this is calculated incorrectly?

GPX and Cura Slicing

Freshly installed RPi installation & GPX plugin. What is the proper way to provide a Cura.ini for this device? I assumed the plugin would interact with Cura, hence the reason for the plugin requesting various details relating to the printer. I am unsure how to proceed with my FFCP. Any guidance?

Can't Install Plugin

Hello, I'm relatively need to OctoPrint and I've attempted to install the GPX plugin to my newly formatted Octopi image. These were the steps I tried.

source ~/oprint/bin/activate
cd ~/OctoPrint
git pull & git checkout devel
python setup.py clean
python setup.py install
sudo service octoprint restart
cd ~
git clone https://github.com/markwal/OctoPrint-GPX
cd OctoPrint-GPX
git submodule update --init
python setup.py develop
mkdir ~/.octoprint/gpxProfiles
cp ~/OctoPrint-GPX/GPX/gpx.ini ~/.octoprint/gpxProfiles

But when I go onto http://octopi.local, select settings, I cannot find the GPX option. Can someone help?

Can't install from Octoprint

Hello,
I'm thinking to buy a Raspberry PI 3 to manage and see the extruder dring the print of my Flashforge Creator Pro.
Before buying it, I want to try it on a HP tablet ElitePad with Win10 32B.
All seems to work (I'm in vacation without the 3D printer), I can simulate a print and record a movie.
I can also install some plugins.

But I need GPX for my Flashforge.
I have an issue during the installation of the plugin.

Here the log file (reduced)

2017-08-26 12:34:19,331 C:\OctoPrint\venv\Scripts\python.exe -m pip install https://markwal.github.io/octoprint-download/OctoPrint-GPX.tar.gz
2017-08-26 12:34:23,357 > Collecting https://markwal.github.io/octoprint-download/OctoPrint-GPX.tar.gz
2017-08-26 12:34:24,723 > Downloading https://markwal.github.io/octoprint-download/OctoPrint-GPX.tar.gz (125kB)
2017-08-26 12:34:33,934 > Requirement already satisfied: OctoPrint in c:\octoprint\venv\lib\site-packages\octoprint-1.3.4-py2.7.egg (from OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,934 > Requirement already satisfied: flask<0.11,>=0.9 in c:\octoprint\venv\lib\site-packages\flask-0.10.1-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,934 > Requirement already satisfied: Jinja2<2.9,>=2.8 in c:\octoprint\venv\lib\site-packages\jinja2-2.8.1-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,936 > Requirement already satisfied: werkzeug<0.9,>=0.8.3 in c:\octoprint\venv\lib\site-packages\werkzeug-0.8.3-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,937 > Requirement already satisfied: tornado==4.0.2 in c:\octoprint\venv\lib\site-packages\tornado-4.0.2-py2.7-win32.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,937 > Requirement already satisfied: sockjs-tornado<1.1,>=1.0.2 in c:\octoprint\venv\lib\site-packages\sockjs_tornado-1.0.3-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,938 > Requirement already satisfied: PyYAML<3.11,>=3.10 in c:\octoprint\venv\lib\site-packages\pyyaml-3.10-py2.7-win32.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,940 > Requirement already satisfied: Flask-Login<0.3,>=0.2.2 in c:\octoprint\venv\lib\site-packages\flask_login-0.2.11-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,940 > Requirement already satisfied: Flask-Principal<0.4,>=0.3.5 in c:\octoprint\venv\lib\site-packages\flask_principal-0.3.5-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,941 > Requirement already satisfied: Flask-Babel<0.10,>=0.9 in c:\octoprint\venv\lib\site-packages\flask_babel-0.9-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,943 > Requirement already satisfied: Flask-Assets<0.11,>=0.10 in c:\octoprint\venv\lib\site-packages\flask_assets-0.10-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,944 > Requirement already satisfied: markdown<2.7,>=2.6.4 in c:\octoprint\venv\lib\site-packages\markdown-2.6.9-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,944 > Requirement already satisfied: pyserial<2.8,>=2.7 in c:\octoprint\venv\lib\site-packages\pyserial-2.7-py2.7-win32.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,946 > Requirement already satisfied: netaddr<0.8,>=0.7.17 in c:\octoprint\venv\lib\site-packages\netaddr-0.7.19-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,947 > Requirement already satisfied: watchdog<0.9,>=0.8.3 in c:\octoprint\venv\lib\site-packages\watchdog-0.8.3-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,947 > Requirement already satisfied: sarge<0.2,>=0.1.4 in c:\octoprint\venv\lib\site-packages\sarge-0.1.4-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,948 > Requirement already satisfied: netifaces<0.11,>=0.10 in c:\octoprint\venv\lib\site-packages\netifaces-0.10.6-py2.7-win32.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,950 > Requirement already satisfied: pylru<1.1,>=1.0.9 in c:\octoprint\venv\lib\site-packages\pylru-1.0.9-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,950 > Requirement already satisfied: rsa<3.3,>=3.2 in c:\octoprint\venv\lib\site-packages\rsa-3.2.3-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,951 > Requirement already satisfied: pkginfo<1.3,>=1.2.1 in c:\octoprint\venv\lib\site-packages\pkginfo-1.2.1-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,953 > Requirement already satisfied: requests<2.8,>=2.7 in c:\octoprint\venv\lib\site-packages\requests-2.7.0-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,953 > Requirement already satisfied: semantic_version<2.5,>=2.4.2 in c:\octoprint\venv\lib\site-packages\semantic_version-2.4.2-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,954 > Requirement already satisfied: psutil<3.3,>=3.2.1 in c:\octoprint\venv\lib\site-packages\psutil-3.2.2-py2.7-win32.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,956 > Requirement already satisfied: Click<6.3,>=6.2 in c:\octoprint\venv\lib\site-packages\click-6.2-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,957 > Requirement already satisfied: awesome-slugify<1.7,>=1.6.5 in c:\octoprint\venv\lib\site-packages\awesome_slugify-1.6.5-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,957 > Requirement already satisfied: feedparser<5.3,>=5.2.1 in c:\octoprint\venv\lib\site-packages\feedparser-5.2.1-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,959 > Requirement already satisfied: chainmap<1.1,>=1.0.2 in c:\octoprint\venv\lib\site-packages\chainmap-1.0.2-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,960 > Requirement already satisfied: future<0.16,>=0.15 in c:\octoprint\venv\lib\site-packages\future-0.15.2-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,960 > Requirement already satisfied: scandir<1.4,>=1.3 in c:\octoprint\venv\lib\site-packages\scandir-1.3-py2.7-win32.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,961 > Requirement already satisfied: websocket-client<0.41,>=0.40 in c:\octoprint\venv\lib\site-packages\websocket_client-0.40.0-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,963 > Requirement already satisfied: python-dateutil<2.7,>=2.6 in c:\octoprint\venv\lib\site-packages\python_dateutil-2.6.1-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,963 > Requirement already satisfied: itsdangerous>=0.21 in c:\octoprint\venv\lib\site-packages\itsdangerous-0.24-py2.7.egg (from flask<0.11,>=0.9->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,964 > Requirement already satisfied: MarkupSafe in c:\octoprint\venv\lib\site-packages\markupsafe-1.0-py2.7-win32.egg (from Jinja2<2.9,>=2.8->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,966 > Requirement already satisfied: certifi in c:\octoprint\venv\lib\site-packages\certifi-2017.7.27.1-py2.7.egg (from tornado==4.0.2->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,967 > Requirement already satisfied: backports.ssl_match_hostname in c:\octoprint\venv\lib\site-packages\backports.ssl_match_hostname-3.5.0.1-py2.7.egg (from tornado==4.0.2->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,967 > Requirement already satisfied: blinker in c:\octoprint\venv\lib\site-packages\blinker-1.4-py2.7.egg (from Flask-Principal<0.4,>=0.3.5->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,969 > Requirement already satisfied: Babel>=1.0 in c:\octoprint\venv\lib\site-packages\babel-2.5.0-py2.7.egg (from Flask-Babel<0.10,>=0.9->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,970 > Requirement already satisfied: speaklater>=1.2 in c:\octoprint\venv\lib\site-packages\speaklater-1.3-py2.7.egg (from Flask-Babel<0.10,>=0.9->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,970 > Requirement already satisfied: webassets>=0.10 in c:\octoprint\venv\lib\site-packages\webassets-0.12.1-py2.7.egg (from Flask-Assets<0.11,>=0.10->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,971 > Requirement already satisfied: argh>=0.24.1 in c:\octoprint\venv\lib\site-packages\argh-0.26.2-py2.7.egg (from watchdog<0.9,>=0.8.3->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,973 > Requirement already satisfied: pathtools>=0.1.1 in c:\octoprint\venv\lib\site-packages\pathtools-0.1.2-py2.7.egg (from watchdog<0.9,>=0.8.3->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,973 > Requirement already satisfied: pyasn1>=0.1.3 in c:\octoprint\venv\lib\site-packages\pyasn1-0.3.2-py2.7.egg (from rsa<3.3,>=3.2->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,974 > Requirement already satisfied: regex in c:\octoprint\venv\lib\site-packages\regex-2017.7.28-py2.7-win32.egg (from awesome-slugify<1.7,>=1.6.5->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,976 > Requirement already satisfied: Unidecode<0.05,>=0.04.14 in c:\octoprint\venv\lib\site-packages\unidecode-0.4.21-py2.7.egg (from awesome-slugify<1.7,>=1.6.5->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,976 > Requirement already satisfied: six in c:\octoprint\venv\lib\site-packages\six-1.10.0-py2.7.egg (from websocket-client<0.41,>=0.40->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,977 > Requirement already satisfied: pytz>=0a in c:\octoprint\venv\lib\site-packages\pytz-2017.2-py2.7.egg (from Babel>=1.0->Flask-Babel<0.10,>=0.9->OctoPrint->OctoPrint-GPX==2.6.0)
2017-08-26 12:34:33,979 > Building wheels for collected packages: OctoPrint-GPX
2017-08-26 12:34:33,980 > Running setup.py bdist_wheel for OctoPrint-GPX: started
2017-08-26 12:34:40,025 > Running setup.py bdist_wheel for OctoPrint-GPX: finished with status 'error'
2017-08-26 12:34:40,026 > Complete output from command C:\OctoPrint\venv\Scripts\python.exe -u -c "import setuptools, tokenize;file='c:\users\laurent\appdata\local\temp\pip-x8jfpu-build\setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" bdist_wheel -d c:\users\laurent\appdata\local\temp\tmp6lmetlpip-wheel- --python-tag cp27:
2017-08-26 12:34:40,026 > running bdist_wheel
2017-08-26 12:34:40,026 > running build
2017-08-26 12:34:40,028 > got version from file c:\users\laurent\appdata\local\temp\pip-x8jfpu-build\octoprint_GPX/version.py {'version': '2.6.0', 'full': 'd8e0428a920d833e882dbb1b07479a6814df5617'}
2017-08-26 12:34:40,029 > running build_py
2017-08-26 12:34:40,029 > creating build
2017-08-26 12:34:40,030 > creating build\lib.win32-2.7
2017-08-26 12:34:40,032 > creating build\lib.win32-2.7\octoprint_GPX
2017-08-26 12:34:40,032 > copying octoprint_GPX\gpxprinter.py -> build\lib.win32-2.7\octoprint_GPX
2017-08-26 12:34:40,032 > copying octoprint_GPX\iniparser.py -> build\lib.win32-2.7\octoprint_GPX
2017-08-26 12:34:40,033 > copying octoprint_GPX_version.py -> build\lib.win32-2.7\octoprint_GPX
2017-08-26 12:34:40,035 > copying octoprint_GPX_init.py -> build\lib.win32-2.7\octoprint_GPX
2017-08-26 12:34:40,035 > running egg_info
2017-08-26 12:34:40,036 > creating OctoPrint_GPX.egg-info
2017-08-26 12:34:40,036 > writing requirements to OctoPrint_GPX.egg-info\requires.txt
2017-08-26 12:34:40,038 > writing OctoPrint_GPX.egg-info\PKG-INFO
2017-08-26 12:34:40,039 > writing top-level names to OctoPrint_GPX.egg-info\top_level.txt
2017-08-26 12:34:40,039 > writing dependency_links to OctoPrint_GPX.egg-info\dependency_links.txt
2017-08-26 12:34:40,039 > writing entry points to OctoPrint_GPX.egg-info\entry_points.txt
2017-08-26 12:34:40,040 > writing manifest file 'OctoPrint_GPX.egg-info\SOURCES.txt'
2017-08-26 12:34:40,042 > reading manifest file 'OctoPrint_GPX.egg-info\SOURCES.txt'
2017-08-26 12:34:40,042 > writing manifest file 'OctoPrint_GPX.egg-info\SOURCES.txt'
2017-08-26 12:34:40,042 > creating build\lib.win32-2.7\octoprint_GPX\static
2017-08-26 12:34:40,042 > creating build\lib.win32-2.7\octoprint_GPX\static\css
2017-08-26 12:34:40,043 > copying octoprint_GPX\static\css\gpx.css -> build\lib.win32-2.7\octoprint_GPX\static\css
2017-08-26 12:34:40,045 > creating build\lib.win32-2.7\octoprint_GPX\static\js
2017-08-26 12:34:40,045 > copying octoprint_GPX\static\js\gpx.js -> build\lib.win32-2.7\octoprint_GPX\static\js
2017-08-26 12:34:40,046 > creating build\lib.win32-2.7\octoprint_GPX\static\less
2017-08-26 12:34:40,046 > copying octoprint_GPX\static\less\gpx.less -> build\lib.win32-2.7\octoprint_GPX\static\less
2017-08-26 12:34:40,046 > copying octoprint_GPX\static\less\Makefile -> build\lib.win32-2.7\octoprint_GPX\static\less
2017-08-26 12:34:40,048 > creating build\lib.win32-2.7\octoprint_GPX\templates
2017-08-26 12:34:40,049 > copying octoprint_GPX\templates\GPX_settings.jinja2 -> build\lib.win32-2.7\octoprint_GPX\templates
2017-08-26 12:34:40,049 > running build_ext
2017-08-26 12:34:40,049 > building 'gpx' extension
2017-08-26 12:34:40,051 > creating build\temp.win32-2.7
2017-08-26 12:34:40,052 > creating build\temp.win32-2.7\Release
2017-08-26 12:34:40,052 > creating build\temp.win32-2.7\Release\GPX
2017-08-26 12:34:40,053 > creating build\temp.win32-2.7\Release\GPX\src
2017-08-26 12:34:40,055 > creating build\temp.win32-2.7\Release\GPX\src\pymodule
2017-08-26 12:34:40,055 > creating build\temp.win32-2.7\Release\GPX\src\shared
2017-08-26 12:34:40,055 > creating build\temp.win32-2.7\Release\GPX\src\gpx
2017-08-26 12:34:40,056 > C:\Users\laurent\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -IC:\Python27\include -IC:\OctoPrint\venv\PC /TcGPX/src/pymodule/gpxmodule.c /Fobuild\temp.win32-2.7\Release\GPX/src/pymodule/gpxmodule.obj -DGPX_VERSION=""OctoPrint"" -DSERIAL_SUPPORT -fvisibility=hidden -IGPX/build/src/shared -IGPX/src/shared -IGPX/src/gpx
2017-08-26 12:34:40,058 > cl : Command line warning D9002 : ignoring unknown option '-fvisibility=hidden'
2017-08-26 12:34:40,059 > gpxmodule.c
2017-08-26 12:34:40,059 > GPX/build/src/shared\config.h(53) : warning C4005: 'HAVE_STRERROR' : macro redefinition
2017-08-26 12:34:40,061 > c:\python27\include\pyconfig.h(64) : see previous definition of 'HAVE_STRERROR'
2017-08-26 12:34:40,062 > GPX/src/pymodule/gpxmodule.c(158) : error C2143: syntax error : missing ';' before 'type'
2017-08-26 12:34:40,062 > GPX/src/pymodule/gpxmodule.c(159) : error C2065: 'rval' : undeclared identifier
2017-08-26 12:34:40,063 > GPX/src/pymodule/gpxmodule.c(167) : error C2065: 'rval' : undeclared identifier
2017-08-26 12:34:40,063 > GPX/src/pymodule/gpxmodule.c(170) : error C2143: syntax error : missing '{' before '*'
2017-08-26 12:34:40,065 > GPX/src/pymodule/gpxmodule.c(183) : warning C4133: 'return' : incompatible types - from 'int *' to 'PyObject *'
2017-08-26 12:34:40,065 > GPX/src/pymodule/gpxmodule.c(190) : error C2143: syntax error : missing ';' before 'type'
2017-08-26 12:34:40,066 > GPX/src/pymodule/gpxmodule.c(191) : error C2065: 'rval' : undeclared identifier

...

2017-08-26 12:34:40,161 > GPX/src/pymodule/gpxmodule.c(586) : error C2065: 'rval' : undeclared identifier
2017-08-26 12:34:40,163 > GPX/src/pymodule/gpxmodule.c(587) : error C2065: 'rval' : undeclared identifier
2017-08-26 12:34:40,164 > GPX/src/pymodule/gpxmodule.c(596) : warning C4133: 'return' : incompatible types - from 'int *' to 'PyObject '
2017-08-26 12:34:40,164 > GPX/src/pymodule/gpxmodule.c(609) : error C2143: syntax error : missing ';' before 'type'
2017-08-26 12:34:40,165 > GPX/src/pymodule/gpxmodule.c(609) : fatal error C1003: error count exceeds 100; stopping compilation
2017-08-26 12:34:40,167 > error: command 'C:\Users\laurent\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\cl.exe' failed with exit status 2
2017-08-26 12:34:40,167 >
2017-08-26 12:34:40,168 > ----------------------------------------
2017-08-26 12:34:40,168 > Running setup.py clean for OctoPrint-GPX
2017-08-26 12:34:40,671 ! Failed building wheel for OctoPrint-GPX
2017-08-26 12:34:45,174 > Failed to build OctoPrint-GPX
2017-08-26 12:34:45,174 > Installing collected packages: OctoPrint-GPX
2017-08-26 12:34:45,176 > Running setup.py install for OctoPrint-GPX: started
2017-08-26 12:34:48,555 > Running setup.py install for OctoPrint-GPX: finished with status 'error'
2017-08-26 12:34:48,556 > Complete output from command C:\OctoPrint\venv\Scripts\python.exe -u -c "import setuptools, tokenize;file='c:\users\laurent\appdata\local\temp\pip-x8jfpu-build\setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record c:\users\laurent\appdata\local\temp\pip-ii7wix-record\install-record.txt --single-version-externally-managed --compile --install-headers C:\OctoPrint\venv\include\site\python2.7\OctoPrint-GPX:
2017-08-26 12:34:48,556 > running install
2017-08-26 12:34:48,558 > running build
2017-08-26 12:34:48,558 > got version from file c:\users\laurent\appdata\local\temp\pip-x8jfpu-build\octoprint_GPX/version.py {'version': '2.6.0', 'full': 'd8e0428a920d833e882dbb1b07479a6814df5617'}
2017-08-26 12:34:48,559 > running build_py
2017-08-26 12:34:48,559 > creating build
2017-08-26 12:34:48,559 > creating build\lib.win32-2.7
2017-08-26 12:34:48,559 > creating build\lib.win32-2.7\octoprint_GPX
2017-08-26 12:34:48,559 > copying octoprint_GPX\gpxprinter.py -> build\lib.win32-2.7\octoprint_GPX
2017-08-26 12:34:48,561 > copying octoprint_GPX\iniparser.py -> build\lib.win32-2.7\octoprint_GPX
2017-08-26 12:34:48,561 > copying octoprint_GPX_version.py -> build\lib.win32-2.7\octoprint_GPX
2017-08-26 12:34:48,562 > copying octoprint_GPX_init.py -> build\lib.win32-2.7\octoprint_GPX
2017-08-26 12:34:48,562 > running egg_info
2017-08-26 12:34:48,562 > writing requirements to OctoPrint_GPX.egg-info\requires.txt
2017-08-26 12:34:48,562 > writing OctoPrint_GPX.egg-info\PKG-INFO
2017-08-26 12:34:48,562 > writing top-level names to OctoPrint_GPX.egg-info\top_level.txt
2017-08-26 12:34:48,563 > writing dependency_links to OctoPrint_GPX.egg-info\dependency_links.txt
2017-08-26 12:34:48,563 > writing entry points to OctoPrint_GPX.egg-info\entry_points.txt
2017-08-26 12:34:48,565 > reading manifest file 'OctoPrint_GPX.egg-info\SOURCES.txt'
2017-08-26 12:34:48,565 > writing manifest file 'OctoPrint_GPX.egg-info\SOURCES.txt'
2017-08-26 12:34:48,565 > creating build\lib.win32-2.7\octoprint_GPX\static
2017-08-26 12:34:48,565 > creating build\lib.win32-2.7\octoprint_GPX\static\css
2017-08-26 12:34:48,565 > copying octoprint_GPX\static\css\gpx.css -> build\lib.win32-2.7\octoprint_GPX\static\css
2017-08-26 12:34:48,566 > creating build\lib.win32-2.7\octoprint_GPX\static\js
2017-08-26 12:34:48,566 > copying octoprint_GPX\static\js\gpx.js -> build\lib.win32-2.7\octoprint_GPX\static\js
2017-08-26 12:34:48,568 > creating build\lib.win32-2.7\octoprint_GPX\static\less
2017-08-26 12:34:48,568 > copying octoprint_GPX\static\less\gpx.less -> build\lib.win32-2.7\octoprint_GPX\static\less
2017-08-26 12:34:48,569 > copying octoprint_GPX\static\less\Makefile -> build\lib.win32-2.7\octoprint_GPX\static\less
2017-08-26 12:34:48,569 > creating build\lib.win32-2.7\octoprint_GPX\templates
2017-08-26 12:34:48,569 > copying octoprint_GPX\templates\GPX_settings.jinja2 -> build\lib.win32-2.7\octoprint_GPX\templates
2017-08-26 12:34:48,569 > running build_ext
2017-08-26 12:34:48,571 > building 'gpx' extension
2017-08-26 12:34:48,571 > creating build\temp.win32-2.7
2017-08-26 12:34:48,572 > creating build\temp.win32-2.7\Release
2017-08-26 12:34:48,572 > creating build\temp.win32-2.7\Release\GPX
2017-08-26 12:34:48,572 > creating build\temp.win32-2.7\Release\GPX\src
2017-08-26 12:34:48,572 > creating build\temp.win32-2.7\Release\GPX\src\pymodule
2017-08-26 12:34:48,573 > creating build\temp.win32-2.7\Release\GPX\src\shared
2017-08-26 12:34:48,573 > creating build\temp.win32-2.7\Release\GPX\src\gpx
2017-08-26 12:34:48,575 > C:\Users\laurent\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -IC:\Python27\include -IC:\OctoPrint\venv\PC /TcGPX/src/pymodule/gpxmodule.c /Fobuild\temp.win32-2.7\Release\GPX/src/pymodule/gpxmodule.obj -DGPX_VERSION=""OctoPrint"" -DSERIAL_SUPPORT -fvisibility=hidden -IGPX/build/src/shared -IGPX/src/shared -IGPX/src/gpx
2017-08-26 12:34:48,575 > cl : Command line warning D9002 : ignoring unknown option '-fvisibility=hidden'
2017-08-26 12:34:48,575 > gpxmodule.c
2017-08-26 12:34:48,575 > GPX/build/src/shared\config.h(53) : warning C4005: 'HAVE_STRERROR' : macro redefinition
2017-08-26 12:34:48,575 > c:\python27\include\pyconfig.h(64) : see previous definition of 'HAVE_STRERROR'
2017-08-26 12:34:48,576 > GPX/src/pymodule/gpxmodule.c(158) : error C2143: syntax error : missing ';' before 'type'
2017-08-26 12:34:48,576 > GPX/src/pymodule/gpxmodule.c(159) : error C2065: 'rval' : undeclared identifier
2017-08-26 12:34:48,578 > GPX/src/pymodule/gpxmodule.c(167) : error C2065: 'rval' : undeclared identifier
2017-08-26 12:34:48,578 > GPX/src/pymodule/gpxmodule.c(170) : error C2143: syntax error : missing '{' before ''
2017-08-26 12:34:48,578 > GPX/src/pymodule/gpxmodule.c(183) : warning C4133: 'return' : incompatible types - from 'int *' to 'PyObject *'
2017-08-26 12:34:48,578 > GPX/src/pymodule/gpxmodule.c(190) : error C2143: syntax error : missing ';' before 'type'
2017-08-26 12:34:48,578 > GPX/src/pymodule/gpxmodule.c(191) : error C2065: 'rval' : undeclared identifier
2017-08-26 12:34:48,579 > GPX/src/py
...

2017-08-26 12:34:48,630 > GPX/src/pymodule/gpxmodule.c(587) : error C2065: 'rval' : undeclared identifier
2017-08-26 12:34:48,630 > GPX/src/pymodule/gpxmodule.c(596) : warning C4133: 'return' : incompatible types - from 'int *' to 'PyObject *'
2017-08-26 12:34:48,630 > GPX/src/pymodule/gpxmodule.c(609) : error C2143: syntax error : missing ';' before 'type'
2017-08-26 12:34:48,631 > GPX/src/pymodule/gpxmodule.c(609) : fatal error C1003: error count exceeds 100; stopping compilation
2017-08-26 12:34:48,631 > error: command 'C:\Users\laurent\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\cl.exe' failed with exit status 2
2017-08-26 12:34:48,631 >
2017-08-26 12:34:48,631 > ----------------------------------------
2017-08-26 12:34:49,134 ! Command "C:\OctoPrint\venv\Scripts\python.exe -u -c "import setuptools, tokenize;file='c:\users\laurent\appdata\local\temp\pip-x8jfpu-build\setup.py';f=getattr(tokenize, 'open', open)(file);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, file, 'exec'))" install --record c:\users\laurent\appdata\local\temp\pip-ii7wix-record\install-record.txt --single-version-externally-managed --compile --install-headers C:\OctoPrint\venv\include\site\python2.7\OctoPrint-GPX" failed with error code 1 in c:\users\laurent\appdata\local\temp\pip-x8jfpu-build\

Octoprint z-changes

We are seeing a problem with our replicator 2 where the z-change event is not firing. Sometimes it does but only after the 4th z-change. Does anyone else experience this issue?

Machine Type Creation Request

I wanted to thank you for creating this plugin to make life using OctoPrint that much easier.
I noticed that you have the FlashForge Creator Pro model already added to GPX as a supported machine type, and would like to request if you could add the FlashForge Dreamer as well.

The primary differences between these models that would need to be added to a separate machine type is:
I acquired the specifications from the FlashForge Dreamer user guide.
Document
Website Specs

Print Volume:
230 mm (X)
150 mm (Y)
140 mm (Z)

Maximum Speed for the Axes:
2000 mm/min (X)
2000 mm/min (Y)
800 mm/min (Z)
300 mm/min (E)

Nozzle Diameter:
0.4 mm

2 Extruders
Nozzle Offset
T1=
34 mm (X)
0 mm (Y)

Upload/Print stall & heated bed not heating bugs?

I noticed two bugs that I've come across.

  1. When I load the .gcode file to Octoprint and press Upload/Print, the system will stall. But if I load the .gcode file, press Upload, select Hot End temperature, then finally press the Print button it will print just fine.
  2. Using Makerbot to export the .gcode file, I noticed that if I select heated bed, the printer will not heat the bed.

[error] Cannot connect to printer, permission denied

Hi I have installed OctoPrint and OctoPrint-GPX in an old laptop running Ubuntu, but I'm not able to connect to my printer (a makerbot clone). Octoprint throws me this error: [Errno 13] Permission denied: '/dev/ttyACM0'

what can I do to solve the issue? thanks in advance.

Here is the complete info OctoPrint threw out:

2017-03-02 19:17:06,924 - octoprint.plugins.GPX - INFO - Connecting through x3g.
2017-03-02 19:17:06,925 - octoprint.plugins.GPX - INFO - GPXPrinter created, port: /dev/ttyACM0, baudrate: 115200
Error opening port: Permission denied
2017-03-02 19:17:06,927 - octoprint.plugins.GPX - INFO - gpx.connect raised exception = [Errno 13] Permission denied: '/dev/ttyACM0'
2017-03-02 19:17:06,928 - octoprint.plugins.GPX - INFO - Failed to connect to x3g e = [Errno 13] Permission denied: '/dev/ttyACM0'.
2017-03-02 19:17:06,937 - octoprint.util.comm - ERROR - Unexpected error while connecting to serial port: /dev/ttyACM0 OSError: '[Errno 13] Permission denied: '/dev/ttyACM0'' @ comm.py:_openSerial:1694 (hook GPX)
Traceback (most recent call last):
File "/home/ubuntu/OctoPrint/venv/lib/python2.7/site-packages/OctoPrint-1.3.1-py2.7.egg/octoprint/util/comm.py", line 1694, in _openSerial
serial_obj = factory(self, self._port, self._baudrate, settings().getFloat(["serial", "timeout", "connection"]))
File "/home/ubuntu/OctoPrint/venv/local/lib/python2.7/site-packages/octoprint_GPX/init.py", line 117, in serial_factory
self.printer = GpxPrinter(self, port, baudrate, timeout)
File "/home/ubuntu/OctoPrint/venv/local/lib/python2.7/site-packages/octoprint_GPX/gpxprinter.py", line 42, in init
self._settings.get_boolean(["verbose"])))
OSError: [Errno 13] Permission denied: '/dev/ttyACM0'
2017-03-02 19:17:08,624 - octoprint.plugins.GPX - INFO - Connecting through x3g.
2017-03-02 19:17:08,625 - octoprint.plugins.GPX - INFO - GPXPrinter created, port: /dev/ttyACM0, baudrate: 115200
Error opening port: Permission denied
2017-03-02 19:17:08,627 - octoprint.plugins.GPX - INFO - gpx.connect raised exception = [Errno 13] Permission denied: '/dev/ttyACM0'
2017-03-02 19:17:08,633 - octoprint.plugins.GPX - INFO - Failed to connect to x3g e = [Errno 13] Permission denied: '/dev/ttyACM0'.
2017-03-02 19:17:08,639 - octoprint.util.comm - ERROR - Unexpected error while connecting to serial port: /dev/ttyACM0 OSError: '[Errno 13] Permission denied: '/dev/ttyACM0'' @ comm.py:_openSerial:1694 (hook GPX)
Traceback (most recent call last):
File "/home/ubuntu/OctoPrint/venv/lib/python2.7/site-packages/OctoPrint-1.3.1-py2.7.egg/octoprint/util/comm.py", line 1694, in _openSerial
serial_obj = factory(self, self._port, self._baudrate, settings().getFloat(["serial", "timeout", "connection"]))
File "/home/ubuntu/OctoPrint/venv/local/lib/python2.7/site-packages/octoprint_GPX/init.py", line 117, in serial_factory
self.printer = GpxPrinter(self, port, baudrate, timeout)
File "/home/ubuntu/OctoPrint/venv/local/lib/python2.7/site-packages/octoprint_GPX/gpxprinter.py", line 42, in init
self._settings.get_boolean(["verbose"])))
OSError: [Errno 13] Permission denied: '/dev/ttyACM0'

Cant install plugin

When i have install plugin, octoprint get error. "Could not find a version that satisfies the requirement OctoPrint (from OctoPrint-GPX==2.5.5) (from versions: )
No matching distribution found for OctoPrint (from OctoPrint-GPX==2.5.5)"

Unable to connect via USB

This seems to be a re-occuring problem with my FlashForge Creator X (configured as Replicator 1 Dual extruder). Even after rebooting my Pi & Printer, trying to connect to USB gives me at least a 50% chance of connection failure. The error in the terminal is:

Changing monitoring state from 'Offline' to 'Error: Connection error, see Terminal tab'
Unexpected error while connecting to serial port: AUTO IOError: 'AUTO port and baudrate not currently supported by GPX' @ comm.py:_openSerial:1754 (hook GPX)
Changing monitoring state from 'Offline' to 'Error: Connection error, see Terminal tab'

In setup/Serial Connection, I have set the baud to 115200 and serial port /dev/ttyACM0, but for some reason in the Connection dialog on the main page the serial port is changed to "AUTO". Baud rate stays at 115200.

No idea why, but the problem seems to have gotten noticeably worse since I added a relay to control the power of the printer. I don't think it has anything to do with the issue, but I'm including it for completeness.

Once I successfully connect, it seems stable and I'm able to print off SD without any problems.

Getting UnicodeDecodeError every time I try to start a print

Hi,

First, thanks for the job you've done.

I have a makerbot replicator 2X with sailfish firmware.
I've generated a x3g file from makerware which I've uploaded to octoprint.
Every time I try to print the x3g uploaded I have this kind of error in the web interface:

Error: UnicodeDecodeError: ''ascii' codec can't decode byte 0x9d in position 0: ordinal not in range(128)' @ comm.py:startPrint:528

And this in the log file :
==> /home/pi/.octoprint/logs/octoprint.log <==
2015-05-15 13:23:05,635 - octoprint.util.comm - ERROR - Error while trying to start printing
Traceback (most recent call last):
File "/home/pi/oprint/local/lib/python2.7/site-packages/OctoPrint-1.2.0_dev_854_gfa57f16-py2.7.egg/octoprint/util/comm.py", line 528, in startPrint
self.sendCommand(line)
File "/home/pi/oprint/local/lib/python2.7/site-packages/OctoPrint-1.2.0_dev_854_gfa57f16-py2.7.egg/octoprint/util/comm.py", line 422, in sendCommand
cmd = cmd.encode('ascii', 'replace')
UnicodeDecodeError: 'ascii' codec can't decode byte 0x9d in position 0: ordinal not in range(128)

And this for each x3g uploaded.

Strange thing is that putting the same x3g file on the SD card, and then launch the print from the octoprint interface works.

Do you have any clue about the problem ?

Octoprint fails to print on center of bed

Have a Monoprice Flashforge Creator with default firmware. Using Chrome. OP is Version 1.3.0 (master branch).

I have attempted to print from OP with the gpx plugin but the offset ?? is putting the center to the back right corner of the bed. My plugin settings are set to use Replicator 1 - dual extruder and the GCode flavor is Reprap.

If I use Makerbot software to print the items, i have tried many different stls', is centered but attempts to use Cura and Slic3er upload gcode is always offset unless I radically shift the image in Cura Desktop.

Next I thought that if I exported a profile to OP that it might print but the same thing happens. In CuraEngine 15.04 there is a check to use Origin 0,0 and selecting that appears to center but the bed travels to the bottom of the build area - thus wasting material.

Can someone help getting this working with Octoprint?

My starting gcode ....
; -- START GCODE --
M136 ; start build
M73 P0
G90 ; absolute coordinates
;
; set temperatures and assert Vref
M140 S{print_bed_temperature}
M104 S{print_temperature} T0
G130 X118 Y118 A118 B118 ; set stepper motor Vref to defaults
; let the Z stepper vref stay at eeprom level (probably 40)
;
; home and recall eeprom home position
T0 ; home on the right nozzle
G28 X Y Z ; home all axes at homing speed
G92 X0 Y0 Z0 A0 B0 ; set all coords to 0 for now
G1 Z5 F500 ; move Z 5mm away so we can carefully hit the limit switch
G161 Z F100 ; home Z slowly
M132 X Y Z ; recall stored home offsets for XYZ axes
;
; wait for heat up
G1 X110 Y-72 Z30 F3300 ; move to waiting position
M116 ; wait for temps
;
; purge and wipe
G92 E0 ; set current extruder position as 0 so that E15 below makes sense
G1 X110 Y-70 Z0.2 F2400.0 ; move to just on the bed
G1 X110 Y70 E15 F1200.000 ; extrude a line of filament along the right edge of the bed
G92 E0 ; set E to 0 again because the slicer's next extrusion is relative to this 0
;
; Sliced at: {day} {date} {time}
; Basic settings: Layer height: {layer_height} Walls: {wall_thickness} Fill: {fill_density}
; Print time: {print_time}
; Filament used: {filament_amount}m {filament_weight}g
; Filament cost: {filament_cost}
; -- end of START GCODE --

No ideas on next step...

2nd Print Ini Failing

This is a strange problem so hopefully I can articulated it well.

On a first print after a machine and OctoPrint reboot the print head and bed preposition; and on heat up the print head is driven forward as normal.

On a second print the process is the same, however this time the print head moves forward very slowly and the extruder is turned on. This of course eats the filament causing a no fee issue when the print starts.

When this cycle happens, it appears a reboot is the only "fix"

Let me know what logs you need.

error connecting to a replicator dual

i have a Duinotech l4090 with is a copy of the replicator dual and get an error when i try to connect to my printer.

What do i need to do to get it working

Changing monitoring state from 'Offline' to 'Opening serial port'
Connected to: , starting monitor
Changing monitoring state from 'Opening serial port' to 'Connecting'
Recv: start
Send: N0 M11035
Recv: Sailfish v7.6
Send: N0 M11035
Recv: echo: gcode to x3g translation by GPX
Recv: SD card ok
Changing monitoring state from 'Connecting' to 'Operational'
Recv: T0:27 /0 T1:26 /0 B:24 /0
Recv: T0:27 /0 T1:26 /0 B:24 /0
Recv: ok
Send: N1 M20*16
Unexpected error while writing to serial port: AttributeError: ''NoneType' object has no attribute 'rfind'' @ comm.py:_doSendWithoutChecksum:1752
Changing monitoring state from 'Operational' to 'Error: AttributeError: ''NoneType' object has no attribute 'rfind'' @ comm.py:_doSendWithoutChecksum:1752'
Connection closed, closing down monitor

Octoprint 1.2.10 + GPX Plugin || [Errno 5] Input/output error' @ comm.py:_do_send_without_checksum:1918

As discussed on the Octoprint Issues, I have moved this here to the GPX Plugin.

Printer: CTC Dual with Sailfish 7.7
Octoprint: 1.2.10 "Release"
GPX Plugin: 2.4.1

Here are some example GCode files created from Simplify3D:

https://www.dropbox.com/s/9cdumnsgcjcmcu1/3687.gcode?dl=1 ... 28.8mb
https://www.dropbox.com/s/ce8jlpallsgkadl/HeadsetBracket.gcode?dl=1 ... 1.3mb
https://www.dropbox.com/s/2itvesf3in4wm7q/OddBits.gcode?dl=1 ... 36.7mb

As previously mentioned, I do not believe this to be an issue with a specific command (or if it is, it must be one that's repeated many times but fails randomly) since the same print can stop during the outline, at 1%, or 95% and anywhere in between.

If you want or need anymore details just let me know.

Config.yaml: https://www.dropbox.com/s/ftj5tj9jv51ei1a/config.yaml?dl=1
GPX.ini: https://www.dropbox.com/s/5u085sbmoked5mh/gpx.ini?dl=1

Although I don't believe it to be any setting issue since having downgraded to Octoprint 1.2.9, I am printing perfectly again (I have completed some small, 20 min prints and also a 19 hour print prefectly)

-=-=-=-=-={ Copied from Octoprint Issue: OctoPrint/OctoPrint#1286 }=-=-=-=-=-

What were you doing?

Simply Printing... the error occurs at random points during the print. I can repeat the same print, it can fail at 1%, 4%, 10%, 90% etc etc - there seems to be no exact point.

What did you expect to happen?

To finish printing.

What happened instead?

It failed. The print fails with the following information in the console

Unexpected error while writing to serial port: IOError: '[Errno 5] Input/output error' @ comm.py:_do_send_without_checksum:1918
Changing monitoring state from 'Printing' to 'Error: IOError: '[Errno 5] Input/output error' @ comm.py:_do_send_without_checksum:1918'
Closing down send loop
Connection closed, closing down monitor

http://pastebin.com/uzWYr2qx

With version 1.2.9 I NEVER had this issue, since updating to 1.2.10 yesterday it has happened on every single print, failing at what seems like random times.

NOTE:

I use Octoprint on 2 Pi's with 2 printers. A Wanhao Duplicator i3 and a CTC Dual running Sailfish 7.7.
BOTH are running the latest 1.2.10.

The Wanhao Duplicator i3 does NOT have this problem. It prints fine without issue.
As bizarre as this is, it does, for now, seem to be related to the CTC Running Sailfish.

Branch & Commit or Version of OctoPrint

1.2.10

Printer model & used firmware incl. version

CTC Dual, Sailfish 7.7

Browser and Version of Browser, Operating System running Browser

Opera

Link to octoprint.log

For some reason, my Octoprint.log is 206 bytes with no information

Unexpected error while writing to serial port: IOError: '[Errno 5] Input/output error' @ comm.py:_do_send_without_checksum:1918
Changing monitoring state from 'Printing' to 'Error: IOError: '[Errno 5] Input/output error' @ comm.py:_do_send_without_checksum:1918'
Closing down send loop
Connection closed, closing down monitor

Link to contents of terminal tab or serial.log

http://pastebin.com/uzWYr2qx

Unexpected error while writing to serial port: IOError: '[Errno 5] Input/output error' @ comm.py:_do_send_without_checksum:1918
Changing monitoring state from 'Printing' to 'Error: IOError: '[Errno 5] Input/output error' @ comm.py:_do_send_without_checksum:1918'
Closing down send loop
Connection closed, closing down monitor

Link to contents of Javascript console in the browser

n/a

Screenshot(s) showing the problem:

n/a

I have read the FAQ.

Can only control printer while octoprint print job is running

I have a powerspec 3d pro (flashforge creator pro clone) with sailfish on it.

When I connect with GPX, the printer starts a 'print'. I am then able to preheat the printer just fine. To start my print on the printer, I need to cancel the octoprint 'print'. However, once I do this, octoprint can no longer control my printer (even after my manually started print is finished). Octoprint displays the temperature correctly though, so it is still getting data from it.
I have to disconnect and reconnect to be able to control it again.

Is this a bug, or working as designed? If it's the latter, would it be possible to add a convenient reconnect button, or is that not something a plugin could do?

Cant update from 0.3.16

I have a popup saying an update is available. Current version is 0.3.16. When I try to let it update, it always fails.

2015-12-29 19:19:12,447 - octoprint.plugins.softwareupdate - ERROR - Update of gpx can not be performed
Traceback (most recent call last):
  File "/home/pi/oprint/lib/python2.7/site-packages/OctoPrint-1.2.8-py2.7.egg/octoprint/plugins/softwareupdate/__init__.py", line 626, in _perform_update
    update_result = updater.perform_update(target, check, target_version)
  File "/home/pi/oprint/lib/python2.7/site-packages/OctoPrint-1.2.8-py2.7.egg/octoprint/plugins/softwareupdate/updaters/pip.py", line 60, in perform_update
    raise exceptions.UpdateError("Error while executing pip install", (stdout, stderr))
UpdateError

Sometimes OctoPrint waits forever for heatup after a cancel and start a new job.

See OctoPrint/OctoPrint#1433

Quote from @sfsdfd:

Okay - I have results. It's a slightly different scenario than I described above, but similar behavior.

Check this out:

http://pastebin.com/QQLGAWck

I loaded a print and then canceled it because I wanted to print it a little differently. I uploaded the new print, and then clicked Print - and... OctoPrint just sat there. It changed the status from "Operational" to "Printing," and did nothing else.

I restarted OctoPrint and then loaded and printed the same model, and got this instead:

http://pastebin.com/pc2Tbh1R

...which is running as expected.

In general, OctoPrint seems to have some non-deterministic behavior when you cancel a print, either via OctoPrint or via the printer:

Sometimes it works OK.
Sometimes (frequently), it does this zombie-state thing the next time you ask OctoPrint to print anything.
Sometimes, when OctoPrint starts the next print, it actually reports that the print is progressing. The status changes to Printing, and layers fly by very quickly. But when you look at the actual printer... nothing is happening; it's sitting there in an idle state. Seriously, this has happened maybe five times. Very weird. I'll definitely send terminal tab contents the next time I catch it in the act.
Once - yesterday - I canceled the print via the printer LCD, and my bed and nozzle returned to their idle positions... yet, the nozzle kept twitching and extruding in mid-air. Apparently, OctoPrint hadn't gotten the message, and was still streaming instructions to it after the print was canceled.

Second extruder offset

I've been running a Flashforge Creator Pro with this and I'm having trouble with the second extruder offset. I set the printer properties for the Flashforge dimensions including a 34mm offset for the left extruder. I usually only print on the left extruder and what's been happening is that every print with only the left extruder is 34mm to the left on the buildplate. I've even tried a -34mm offset to no avail. So far I haven't printed anything that this has been an issue with fortunately. Thoughts on how to fix this? Thank you!

Configuring plugin on reverse-proxy subdir installation

I'm using octoprint hidden by nginx with not '/' base dir.

After configuration everything works fine, but I can't configure GPX, because it ignores basedir, e.g. tries to look for '/plugin/GPX/ini' in root dir, not in '/octoprint/plugin/GPX/ini' and gets 404.

Machine definition edit window pops up with empty values. Connection to printer fails with '.octoprint/data/GPX/gpx.ini not found' error.

After configuring the plugin using direct connection to octoprint installation printing works fine.

GPX Plugin versions 2.5.4 and 2.5.5

Not showing all temps on flashforge style printer

Hi, I'm cross posting from octoprint repo OctoPrint/OctoPrint#1485

What were you doing?

Printing with my left print head, the right print head unheated. (though it happens always) Looking at the temperature graph.

What did you expect to happen?

Show the temperatures for all 3 thermistors (right head, left head, heat bed).

What happened instead?

Only the right extruder head, listed as 't0', was shown. I'd like to note that on simplify3d T0 is the number for the heated bed, but I'm not sure how/if they convert over when compiled. The bed was heated but no temp was shown.

Branch & Commit or Version of OctoPrint

OctoPrint: 1.2.15

Printer model & used firmware incl. version

Monoprice Architect (Flashforge Creator), upgraded with dual extruders and heated bed. I think it runs an atmega2560.

profile: number of extruders=2, heated bed=true

Browser and Version of Browser, Operating System running Browser

Chrome Version 52.0.2743.116 m (64-bit)

Link to octoprint.log

unsure how to get a log. Please let me know if you'd like to see.

Link to contents of terminal tab or serial.log

I mean.. it's printing. so probably only movement gcode in here
http://pastebin.com/gvcVGsQJ

Link to contents of Javascript console in the browser

n/a, console looks fine.

Screenshot(s) showing the problem:

https://i.imgur.com/nDKNsvm.png

Printing issue and cancel print issue

Hey so I have a Qidi Tech and my friend has a Flashforge. We both use this plugin so we can connect to our printers via Octoprint and upload gcode to print. The first problem is when printing through OctoPrint the printer starts to deviate from the start script and extrude tons of filament and do huge retracts. Its not the same everytime. Happens on both of our printers. And if we print from the SD card this never happens. Also, when we cancel a print through OctoPrint, the communication with the printer is lost. I get no error, but I cannot control my bed or start another print or anything unless I recycle power on either the Octo or printer. Any help would be appreciated. Thanks.

Thing-O-Matic disconnects.

Have a thing-o-matic, pre-sailfish (SD no longer works so had to go back), I get this result:
Changing monitoring state from 'Offline' to 'Opening serial port'
Connected to: <GPX.gpxprinter.GpxPrinter instance at 0x6fb5b648>, starting monitor
Changing monitoring state from 'Opening serial port' to 'Connecting'
Recv: start
Send: N0 M110 N0*125
Unexpected error while writing to serial port: IOError: 'Command not supported or recognized' @ comm.py:_do_send_without_checksum:2035
Recv: echo: gcode to x3g translation by GPX
Recv: SD init fail
Changing monitoring state from 'Connecting' to 'Offline: IOError: 'Command not supported or recognized' @ comm.py:_do_send_without_checksum:2035'
Connection closed, closing down monitor
Closing down send loop.

Print progress bar completes in matter of minutes for 5 hour print while printer doesn't even move.

Using the GPX plugin (duh) and set it to Replicator 1 since the Qidi dual 2018 is very close to it. Printer is running sailfish 7.8. Using Slic3r to slice (reprap gcode output). After the heaters get to temp, the screen on the printer will flash from the heating page to the printing page, and every time it flashes back from one another, the progress bar goes up by 10-15% on the printer LCD and octoprint. The actual printer does nothing besides sit there and maintain temps.

Docs for setting up GPX?

Beside the readme, are there instructions somewhere that describes how to configure the GPX specific settings? If I select Reprap instead of Makerbot in the gcode options, what does that change? What about the other settings? Are they documented somewhere? Wiki is empty and besides the readme and tooltips there's not much info out there.

unable to upgrade from 3.13 to 3.15

When i tried to upgraded to the newly released 3.15 i am unable to
it thing it's 3.13
so it keeps telling me I have 3.13 but that there is an upgrade to 3.15
so net = unable to upgrade to newly released
I tried to remove and reinstall and i got 3.13 again.
Also 1 other minor issue
whenever i cancel a print from the printer, it disconnects me in octoprint and i have to re-connect.
is this normal? any way to not have to do that every time?
otherwise working great!!

cura profile?

Cura on the PC doesn't support makerbot et al, so how do I create a cura profile for my flashforge creator?

gpx.ini not created on install or settings edit

When I installed the GPX plugin, gpx.ini was not automatically created. This resulted in an error when trying to connect to my printer. Changing the preferences via the WebUI also did not create a gpx.ini file. I ended up copying the default one from the GPX repo, which fixed the issue.

Machine definition editor changes don't take effect

My 20mm test cubes come out at X20.05mm by Y19.9mm so I think I need to adjust the Y Axis steps per mm. Do I do this in my firmware, slicer (Simplify3d which produces gcode) or the the machine settings for this plugin?

I did try to increase my Y steps per mm by 2mm in the GPX plugin as a test but the cube came out the same size.

unable to install - see following errors

Could not find any downloads that satisfy the requirement OctoPrint (from OctoPrint-GPX==0.3.13)
pi@octopi:~$ pip install https://markwal.github.io/OctoPrint/OctoPrint-GPX.tar.gz
Downloading/unpacking https://markwal.github.io/OctoPrint/OctoPrint-GPX.tar.gz
Downloading OctoPrint-GPX.tar.gz (588Kb): 588Kb downloaded
Running setup.py egg_info for package from https://markwal.github.io/OctoPrint/OctoPrint-GPX.tar.gz

Downloading/unpacking OctoPrint (from OctoPrint-GPX==0.3.13)
Could not find any downloads that satisfy the requirement OctoPrint (from OctoPrint-GPX==0.3.13)
No distributions at all found for OctoPrint (from OctoPrint-GPX==0.3.13)
Storing complete log in /home/pi/.pip/pip.log
pi@octopi:~$ cat /home/pi/.pip/pip.log
Downloading/unpacking https://markwal.github.io/OctoPrint/OctoPrint-GPX.tar.gz

Downloading from URL https://markwal.github.io/OctoPrint/OctoPrint-GPX.tar.gz
Running setup.py egg_info for package from https://markwal.github.io/OctoPrint/OctoPrint-GPX.tar.gz

running egg_info
creating pip-egg-info/OctoPrint_GPX.egg-info
writing requirements to pip-egg-info/OctoPrint_GPX.egg-info/requires.txt
writing pip-egg-info/OctoPrint_GPX.egg-info/PKG-INFO
writing top-level names to pip-egg-info/OctoPrint_GPX.egg-info/top_level.txt
writing dependency_links to pip-egg-info/OctoPrint_GPX.egg-info/dependency_links.txt
writing entry points to pip-egg-info/OctoPrint_GPX.egg-info/entry_points.txt
writing manifest file 'pip-egg-info/OctoPrint_GPX.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found


reading manifest file 'pip-egg-info/OctoPrint_GPX.egg-info/SOURCES.txt'
writing manifest file 'pip-egg-info/OctoPrint_GPX.egg-info/SOURCES.txt'

Downloading/unpacking OctoPrint (from OctoPrint-GPX==0.3.13)

Getting page http://pypi.python.org/simple/OctoPrint
Could not fetch URL http://pypi.python.org/simple/OctoPrint: HTTP Error 404: Not Found
Will skip URL http://pypi.python.org/simple/OctoPrint when looking for download links for OctoPrint (from OctoPrint-GPX==0.3.13)
Getting page http://pypi.python.org/simple/
URLs to search for versions for OctoPrint (from OctoPrint-GPX==0.3.13):

No distributions at all found for OctoPrint (from OctoPrint-GPX==0.3.13)

Exception information:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 104, in main
status = self.run(options, args)
File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 245, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File "/usr/lib/python2.7/dist-packages/pip/req.py", line 978, in prepare_files
url = finder.find_requirement(req_to_install, upgrade=self.upgrade)
File "/usr/lib/python2.7/dist-packages/pip/index.py", line 157, in find_requirement
raise DistributionNotFound('No distributions at all found for %s' % req)

Can't update to Version 0.3.8

Hi,
today i did a fresh install on a new octopi installation. After this i had a installed version 0.3.7. This version works, but i get an update information for a new version 0.3.8. If i klick update, it seems the new Version will be installed and Octopi writes me i have to restart Octoprint to use the new version. But after the restart, i always have a version 0.3.7 and get the update message again.
Is there a other way to update this version?

Regards
Joerg

Print after successful print causes extreme slow movement

Printer: Makerbot Rep 2X
Firm: Sailfish v7.7
Slicer: Simplify 3D 3.1.1
Printing gcode from Raspberry pi local via Octoprint 1.3.1, GPX 2.5.5

I can print successfully with Octoprint and the GPX plugin.

Normally, a print will move the carriage to the back right corner, bring the bed up quickly, back down a bit and then slowly touch bring it up to touch the nozzle. Then it quickly moves the carriage to the front left corner, drops the bed a bit and starts to heat up.

After a good print via Octoprint's local storage & the GPX plugin, the next print I try to start will move the carriage to the back right and bring the platform up like normal, but then the carriage move to the front left will be really slow. Disconnecting at this point will not stop the print. Rebooting octoprint and reconnecting spits out a log like this

Recv:  T0:21 /0 T1:22 /0 B:43 /110
Recv:  T0:21 /0 T1:22 /0 B:44 /110
Changing monitoring state from 'Connecting' to 'Offline'
Connection closed, closing down monitor
Changing monitoring state from 'Offline' to 'Opening serial port'
Connected to: <GPX.gpxprinter.GpxPrinter instance at 0x71fe8620>, starting monitor
Changing monitoring state from 'Opening serial port' to 'Connecting'
Recv: start
Send: N0 M110 N0*125
Recv:  Sailfish v7.7
Send: N0 M110 N0*125
Recv: echo: gcode to x3g translation by GPX
Recv: SD init fail
Recv:  T0:21 /0 T1:22 /0 B:45 /110
Recv:  T0:21 /0 T1:22 /0 B:46 /110

The printer is just heating up like nothing happened but Octoprint doesn't know anything about it with the status stuck on "Connecting"

The only thing that will actually stop this zombie printing is by rebooting the PI. Once I do that, I can start hte print again, no problem and get this log

Changing monitoring state from 'Offline' to 'Opening serial port'
Connected to: <GPX.gpxprinter.GpxPrinter instance at 0x71fe8620>, starting monitor
Changing monitoring state from 'Opening serial port' to 'Connecting'
Recv: start
Send: N0 M110 N0*125
Recv:  Sailfish v7.7
Recv: echo: gcode to x3g translation by GPX
Recv: SD init fail
Recv:  T0:22 /0 T1:23 /0 B:106 /110
Send: N0 M110 N0*125
Recv:  T0:22 /0 T1:23 /0 B:106 /110
...
Recv: ok
Changing monitoring state from 'Connecting' to 'Operational'
Send: N0 M110 N0*125
Recv: ok
Send: N1 M115*39
Recv: ok
Recv: // echo: (line 1) Syntax warning: unsupported mcode command 'M115'
Send: N2 M21*18
Recv: ok
Recv: SD init fail
Send: N3 M105*36
Recv: ok T0:23 /0 T1:23 /0 B:108 /110
Send: N4 M105*35
Recv: ok T0:23 /0 T1:23 /0 B:108 /110
Send: N5 M105*34
Recv: ok T0:23 /0 T1:23 /0 B:108 /110
Send: N6 M105*33
Recv: ok T0:23 /0 T1:23 /0 B:109 /110
Send: N7 M105*32
Recv: ok T0:23 /0 T1:23 /0 B:109 /110
Send: N8 M105*47
Recv: ok T0:23 /0 T1:23 /0 B:109 /110
Send: N9 M105*46
Recv: ok T0:23 /0 T1:23 /0 B:109 /110
Send: N10 M105*22
Recv: ok T0:23 /0 T1:23 /0 B:109 /110
Send: N11 M105*23
Recv: ok T0:23 /0 T1:23 /0 B:110 /110
Send: N12 M105*20
Recv: ok T0:23 /0 T1:23 /0 B:110 /110
Send: N13 M105*21
Recv: ok T0:23 /0 T1:23 /0 B:110 /110
Send: N14 M105*18
Recv: ok T0:23 /0 T1:23 /0 B:110 /110
Changing monitoring state from 'Operational' to 'Printing'
Send: N0 M110 N0*125
Recv: ok
Send: N1 G90*17
Recv: ok
Send: N2 M83*26
Recv: ok
Send: N3 M73 P0*84
Recv: ok
Send: N4 G162 X Y F3000*76
Recv:  T0:23 /0 T1:23 /0 B:110 /110
Recv:  T0:23 /0 T1:23 /0 B:110 /110

Let me know if this makes sense, or if you need additional logs. Thanks!

Progress % to the bot is hit and miss

Steps:

  1. Start a non-SD card print from OctoPrint

Expected result:
Progress percentage to show on the LCD

Actual result:
Sometimes % is shown, sometimes it shows 0% the whole time

can't start plugin (No PKG-INFO found for package: octoprint_GPX)

I've followed your ReadMe file, but everytime I start Octoprint while GPX is installed I get this error. Haven't found yet how to fix this.

2015-05-30 09:19:09,944 - octoprint.server - INFO - Starting OctoPrint 1.2.0-dev-864-gceb0e29 (devel branch)
2015-05-30 09:19:09,953 - octoprint.plugin.core - INFO - Loading plugins from /home/pi/.octoprint/plugins, /usr/local/lib/python2.7/dist-packages/OctoPrint-1.2.0_dev_864_gceb0e29-py2.7.egg/octoprint/plugins and installed plugin packages...
2015-05-30 09:19:10,371 - py.warnings - WARNING - /usr/local/lib/python2.7/dist-packages/OctoPrint-1.2.0_dev_864_gceb0e29-py2.7.egg/octoprint/plugin/core.py:1096: UserWarning: No PKG-INFO found for package: octoprint_GPX
warnings.warn('No PKG-INFO found for package: %s' % self.package_name)

2015-05-30 09:19:10,387 - octoprint.plugin.core - ERROR - Error loading plugin GPX
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/OctoPrint-1.2.0_dev_864_gceb0e29-py2.7.egg/octoprint/plugin/core.py", line 582, in _import_plugin
instance = imp.load_module(key, f, filename, description)
File "/home/pi/oprint/local/lib/python2.7/site-packages/OctoPrint_GPX-v0.2_a1_6.g9731888-py2.7-linux-armv6l.egg/octoprint_GPX/init.py", line 10, in
from flask.exceptions import BadRequest
ImportError: No module named exceptions

Octoprint-GPX not remembering setting, thus not printing correctly

I recently updated to the newest octoprint (0.14) and newest GPX plugin (2.6.0) The plugin now does not remember it's settings(machine type needs to be r1p, g-code flavor markerbot), meaning it would not print correctly. It heats up the wrong printhead, and when printing starts it won't extrude. printer is a FlashForge Creator X. I also tried to change the settings manually in de GPX.ini file, this wouldn't work either. Only thing which works is removing the GPX.ini all together. this fixes the problem for one single print.
Installing a older version of the GPX plugin doesn't work either.

I have read a couple more of these issues here, but couldn't find a proper answer in them.

Can't install

I can't find GPX on the plugin manager so I copied and pasted the link and got this error:

"Building wheels for collected packages: OctoPrint-GPX
Running setup.py bdist_wheel for OctoPrint-GPX: started
Failed building wheel for OctoPrint-GPX"

I'm running on windows right now. Can it be the reason?

Extruder cold restracts with Simplify 3D G-code

I have a Monoprice Architect that uses the GPX format.

When I start a print it will retract the entire time it runs this command:

G1 X-120 Y-70 Z30 F4800

This code doesn't seem to have an extruder component, and it is before the hotend is heated.

Here is the entire start-build g-code, prior to the problem. Is there some combination of bad g-code that would cause this to cold retracts and often strip the filament, when I start a print? Is it possibly a problem with setting offsets?

M73 P0 ; Enable build progress
G130 X127 Y127 Z40 A127 B127 ; Default stepper Vrefs
G162 X Y F3000 ; Home XY maximum
G161 Z F1200 ; Home Z minimum
G92 Z-5 ; Set Z to -5
G1 Z0 ; Move Z to 0
G161 Z F100 ; Home Z slowly
M132 X Y Z A B ; Recall home offsets
M135 T0 ; Load right extruder offsets
G1 X-120 Y-70 Z30 F4800 ; Move to wait position off table

Request: Upload machine definitions

Looking at the GPX (w/o OctoPrint ) Readme, you can use -c to use a new machine definition.
I have found just a file like that for my printer, a Makerbot clone from CTC, and can’t tell the plugin to use it, but have to modify an existing file, which is error-prone.

Gcode temps disregarded

Loading gcode that has been sliced in Makerbot Desktop. Temperatures set for both tools and bed in slicer are disregarded. Slicer set for ABS (225C T0 and 115C Bed) upon starting print T0 begins preheat for 115C and Bed for 0.

Refer to the issue logged @ Octoprint Github.

OctoPrint#1655
OctoPrint/OctoPrint#1655

Bed control always off

Hi,

I have a CTC bizer 3D printer with dual heads.
I am running OctoPi on aRaspberry Pi 3 B.
My current problem is, that the heated bed temperature always switches back to "off", what ever I do.
The print starts, however due to the cold bed, the PLA does not stick to the surface, and the head picks the first layer up, to a blob.
The printer otherwise works when attached to my PC.
I installed the GPX plugin, I installed Cura (V15.04.6) onto my PC.
I have set up the configuration file for Cura (using PLA, nozzle temp 220C, bed temp 70C).
I exported the file, as written, and imported it to Octopi.
I also tried to print GCode file, instead of an .stl, but the bed temperature still stays off.
(I checked the Gcode in a text editor, but it looks like the bed temp is not set there)
Usually, I try first with a Google search, but I did not really find any relevant information so far.
Thank you very much!

Possible to install on plain raspberian with Octoprint?

Hello,

awesome work! I really hope I can drive my CTC Dual with your Code.
I've a raspbian with Octoprint installed. I followed the steps suggested on the Octoprint-website.

Then I've tried to install your branch. After the first try I get this log:
Changing monitoring state from 'Offline' to 'Opening serial port'
Connecting to: /dev/ttyACM0
Connected to: Serial<id=0x235b8d0, open=True>(port='/dev/ttyACM0', baudrate=115200, bytesize=8, parity='N', stopbits=1, timeout=10.0, xonxoff=False, rtscts=False, dsrdtr=False), starting monitor
Changing monitoring state from 'Opening serial port' to 'Connecting'
Recv: ????�??
Send: M105
Recv: ?�???�??
Changing monitoring state from 'Connecting' to 'Closed'

I've done the following after succesful installing the Octoprint:

cd ~
sudo service octoprint stop
mv OctoPrint OctoPrintSave
git clone -b devel https://github.com/markwal/OctoPrint
cd OctoPrint
 sudo python setup.py install

git clone https://github.com/markwal/OctoPrint-GPX
git submodule update --init
 sudo python setup.py install

Well of course, there is a mistake somewhere. There is no folder called oprint as you've mentioned. Any idea whats wrong?
Thank you:)

Lowering build plate

Hi,

Any ideas how to lower the build plate X & Y axis commands work fine but can't get Z axis to work only to goto home.

Sending via terminal:

Send: G91
Recv: ok
Send: G1 Z-10.0000 F200
Recv: ok

Failed Install

I'm not a guru so here is the install log for My RPi Model B using OctoPrint: 1.2.10

OctoPrint
Settings

System 

pi 

Connection
Serial Port
AUTO/dev/ttyACM0
Baudrate
AUTO2500002304001152005760038400192009600
Printer Profile
Default

Save connection settings

Auto-connect on server startup
Connect
State
Machine State: Error: Failed to autodetect serial port, please set it manually.
File:  
Timelapse: -
Approx. Total Print Time: -
Print Time: -
Print Time Left: -
Printed: -

Print
Pause
Cancel
Files

Free: 5.5GB / Total: 7.0GB
Upload

Upload to SD

Hint: You can also drag and drop files on this page to upload them.
Temperature

Control

GCode Viewer

Terminal

Timelapse


0
50
100
150
200
250
300

Actual T: -

Target T: -

Actual Bed: -

Target Bed: -

Actual
Target
Offset
Hotend
off
°C Set
°C Set
Bed
off
°C Set
°C Set
• Version: 1.2.10 (master branch)
• Homepage Sourcecode Documentation Bugs and Requests

Unhandled communication error
The was an unhandled error while talking to the printer. Due to that OctoPrint disconnected. Error: Failed to autodetect serial port, please set it manually.
×
OctoPrint Settings
PRINTER
Serial Connection

Printer Profiles

Temperatures

Terminal Filters

GCODE Scripts

FEATURES
Features

Webcam

Access Control

API

OCTOPRINT
Server

Folders

Appearance

Logs

Plugin Manager

Software Update

PLUGINS
CuraEngine (<= 15.04)


Installed Plugins
Name
Actions
CuraEngine (<= 15.04)
Adds support for slicing via CuraEngine versions up to and including version 15.04 from within OctoPrint
Homepage AGPLv3 Gina Häußge  
 | 
Discovery
Makes the OctoPrint instance discoverable via Bonjour/Avahi/Zeroconf and uPnP
Homepage AGPLv3 Gina Häußge  
 | 
Plugin Manager
Allows installing and managing OctoPrint plugins
Homepage AGPLv3 Gina Häußge  
 | 
Software Update
Allows receiving update notifications and performing updates of OctoPrint and plugins
Homepage AGPLv3 Gina Häußge  
 | 
Virtual Printer
Provides a virtual printer via a virtual serial port for development and testing purposes
AGPLv3 Gina Häußge, based on work by Daid Braam  
 | 
• • • «
 1
 »

Get More...
Using pip at "/home/pi/oprint/bin/pip" (Version 8.1.1)
Cancel Save

Everything is up-to-date
×
Install new Plugins...
... from the Plugin Repository

Sadly the repository is currently not available
Is your OctoPrint installation connected to the internet?
... from URL

Install
... from an uploaded archive
Browse...

Install
This does not look like a valid plugin archive. Valid plugin archives should be either zip files or tarballs and have the extension ".zip", ".tar.gz", ".tgz" or ".tar"
Advanced options
Close

×
Installing plugin...
Installing plugin from uploaded archive...
/home/pi/oprint/bin/pip install /tmp/tmpJaFjM6.zip
Processing /tmp/tmpJaFjM6.zip
Requirement already satisfied (use --upgrade to upgrade): OctoPrint in /home/pi/oprint/lib/python2.7/site-packages/OctoPrint-1.2.10-py2.7.egg (from OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): flask<0.11,>=0.9 in /home/pi/oprint/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): werkzeug==0.8.3 in /home/pi/oprint/lib/python2.7/site-packages/Werkzeug-0.8.3-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): tornado==4.0.1 in /home/pi/oprint/lib/python2.7/site-packages/tornado-4.0.1-py2.7-linux-armv7l.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): sockjs-tornado==1.0.1 in /home/pi/oprint/lib/python2.7/site-packages/sockjs_tornado-1.0.1-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): PyYAML==3.10 in /home/pi/oprint/lib/python2.7/site-packages/PyYAML-3.10-py2.7-linux-armv7l.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): Flask-Login==0.2.2 in /home/pi/oprint/lib/python2.7/site-packages/Flask_Login-0.2.2-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): Flask-Principal==0.3.5 in /home/pi/oprint/lib/python2.7/site-packages/Flask_Principal-0.3.5-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): Flask-Babel==0.9 in /home/pi/oprint/lib/python2.7/site-packages/Flask_Babel-0.9-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): Flask-Assets==0.10 in /home/pi/oprint/lib/python2.7/site-packages/Flask_Assets-0.10-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): pyserial==2.7 in /home/pi/oprint/lib/python2.7/site-packages/pyserial-2.7-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): netaddr==0.7.17 in /home/pi/oprint/lib/python2.7/site-packages/netaddr-0.7.17-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): watchdog==0.8.3 in /home/pi/oprint/lib/python2.7/site-packages/watchdog-0.8.3-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): sarge==0.1.4 in /home/pi/oprint/lib/python2.7/site-packages/sarge-0.1.4-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): netifaces==0.10 in /home/pi/oprint/lib/python2.7/site-packages/netifaces-0.10.0-py2.7-linux-armv7l.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): pylru==1.0.9 in /home/pi/oprint/lib/python2.7/site-packages/pylru-1.0.9-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): rsa==3.2 in /home/pi/oprint/lib/python2.7/site-packages/rsa-3.2-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): pkginfo==1.2.1 in /home/pi/oprint/lib/python2.7/site-packages/pkginfo-1.2.1-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): requests==2.7.0 in /home/pi/oprint/lib/python2.7/site-packages/requests-2.7.0-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): semantic-version==2.4.2 in /home/pi/oprint/lib/python2.7/site-packages/semantic_version-2.4.2-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): psutil==3.2.1 in /home/pi/oprint/lib/python2.7/site-packages/psutil-3.2.1-py2.7-linux-armv7l.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): awesome-slugify<1.7,>=1.6.5 in /home/pi/oprint/lib/python2.7/site-packages/awesome_slugify-1.6.5-py2.7.egg (from OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): Jinja2>=2.4 in /home/pi/oprint/lib/python2.7/site-packages/Jinja2-2.8-py2.7.egg (from flask<0.11,>=0.9->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): itsdangerous>=0.21 in /home/pi/oprint/lib/python2.7/site-packages/itsdangerous-0.24-py2.7.egg (from flask<0.11,>=0.9->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): certifi in /home/pi/oprint/lib/python2.7/site-packages/certifi-2016.02.28-py2.7.egg (from tornado==4.0.1->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): backports.ssl-match-hostname in /home/pi/oprint/lib/python2.7/site-packages/backports.ssl_match_hostname-3.5.0.1-py2.7.egg (from tornado==4.0.1->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): blinker in /home/pi/oprint/lib/python2.7/site-packages/blinker-1.4-py2.7.egg (from Flask-Principal==0.3.5->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): Babel>=1.0 in /home/pi/oprint/lib/python2.7/site-packages/Babel-2.3.3-py2.7.egg (from Flask-Babel==0.9->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): speaklater>=1.2 in /home/pi/oprint/lib/python2.7/site-packages/speaklater-1.3-py2.7.egg (from Flask-Babel==0.9->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): webassets>=0.10 in /home/pi/oprint/lib/python2.7/site-packages/webassets-0.11.1-py2.7.egg (from Flask-Assets==0.10->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): argh>=0.24.1 in /home/pi/oprint/lib/python2.7/site-packages/argh-0.26.1-py2.7.egg (from watchdog==0.8.3->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): pathtools>=0.1.1 in /home/pi/oprint/lib/python2.7/site-packages/pathtools-0.1.2-py2.7.egg (from watchdog==0.8.3->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): pyasn1>=0.1.3 in /home/pi/oprint/lib/python2.7/site-packages (from rsa==3.2->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): regex in /home/pi/oprint/lib/python2.7/site-packages/regex-2016.04.15-py2.7-linux-armv7l.egg (from awesome-slugify<1.7,>=1.6.5->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): Unidecode<0.05,>=0.04.14 in /home/pi/oprint/lib/python2.7/site-packages/Unidecode-0.04.19-py2.7.egg (from awesome-slugify<1.7,>=1.6.5->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): MarkupSafe in /home/pi/oprint/lib/python2.7/site-packages/MarkupSafe-0.23-py2.7-linux-armv7l.egg (from Jinja2>=2.4->flask<0.11,>=0.9->OctoPrint->OctoPrint-GPX==2.5.2)
Requirement already satisfied (use --upgrade to upgrade): pytz>=0a in /home/pi/oprint/lib/python2.7/site-packages/pytz-2016.3-py2.7.egg (from Babel>=1.0->Flask-Babel==0.9->OctoPrint->OctoPrint-GPX==2.5.2)
Installing collected packages: OctoPrint-GPX
Running setup.py install for OctoPrint-GPX: started
Command "/home/pi/oprint/bin/python2 -u -c "import setuptools, tokenize;file='/tmp/pip-cHYVSX-build/setup.py';exec(compile(getattr(tokenize, 'open', open)(file).read().replace('\r\n', '\n'), file, 'exec'))" install --record /tmp/pip-k1EEDg-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/oprint/include/site/python2.7/OctoPrint-GPX" failed with error code 1 in /tmp/pip-cHYVSX-build/
Running setup.py install for OctoPrint-GPX: finished with status 'error'
Complete output from command /home/pi/oprint/bin/python2 -u -c "import setuptools, tokenize;file='/tmp/pip-cHYVSX-build/setup.py';exec(compile(getattr(tokenize, 'open', open)(file).read().replace('\r\n', '\n'), file, 'exec'))" install --record /tmp/pip-k1EEDg-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/pi/oprint/include/site/python2.7/OctoPrint-GPX:
running install
running build
got version from expanded keyword {'version': '2.5.2', 'full': '5f537dfb75472780103714f1e9bc6abe4e3bfb5d'}
running build_py
creating build
creating build/lib.linux-armv6l-2.7
creating build/lib.linux-armv6l-2.7/octoprint_GPX
copying octoprint_GPX/init.py -> build/lib.linux-armv6l-2.7/octoprint_GPX
copying octoprint_GPX/_version.py -> build/lib.linux-armv6l-2.7/octoprint_GPX
copying octoprint_GPX/iniparser.py -> build/lib.linux-armv6l-2.7/octoprint_GPX
copying octoprint_GPX/gpxprinter.py -> build/lib.linux-armv6l-2.7/octoprint_GPX
running egg_info
creating OctoPrint_GPX.egg-info
writing requirements to OctoPrint_GPX.egg-info/requires.txt
writing OctoPrint_GPX.egg-info/PKG-INFO
writing top-level names to OctoPrint_GPX.egg-info/top_level.txt
writing dependency_links to OctoPrint_GPX.egg-info/dependency_links.txt
writing entry points to OctoPrint_GPX.egg-info/entry_points.txt
writing manifest file 'OctoPrint_GPX.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found

reading manifest file 'OctoPrint_GPX.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '.h' under directory 'GPX'
warning: no previously-included files matching '
' found under directory 'GPX/build'
warning: no files found matching 'GPX/build/src/shared/config.h'
writing manifest file 'OctoPrint_GPX.egg-info/SOURCES.txt'
creating build/lib.linux-armv6l-2.7/octoprint_GPX/static
creating build/lib.linux-armv6l-2.7/octoprint_GPX/static/css
copying octoprint_GPX/static/css/gpx.css -> build/lib.linux-armv6l-2.7/octoprint_GPX/static/css
creating build/lib.linux-armv6l-2.7/octoprint_GPX/static/js
copying octoprint_GPX/static/js/gpx.js -> build/lib.linux-armv6l-2.7/octoprint_GPX/static/js
creating build/lib.linux-armv6l-2.7/octoprint_GPX/static/less
copying octoprint_GPX/static/less/gpx.less -> build/lib.linux-armv6l-2.7/octoprint_GPX/static/less
creating build/lib.linux-armv6l-2.7/octoprint_GPX/templates
copying octoprint_GPX/templates/GPX_settings.jinja2 -> build/lib.linux-armv6l-2.7/octoprint_GPX/templates
copying octoprint_GPX/static/less/Makefile -> build/lib.linux-armv6l-2.7/octoprint_GPX/static/less
running build_ext
building 'gpx' extension
creating build/temp.linux-armv6l-2.7
creating build/temp.linux-armv6l-2.7/GPX
creating build/temp.linux-armv6l-2.7/GPX/src
creating build/temp.linux-armv6l-2.7/GPX/src/pymodule
creating build/temp.linux-armv6l-2.7/GPX/src/shared
creating build/temp.linux-armv6l-2.7/GPX/src/gpx
arm-linux-gnueabihf-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -I/usr/include/python2.7 -c GPX/src/pymodule/gpxmodule.c -o build/temp.linux-armv6l-2.7/GPX/src/pymodule/gpxmodule.o -DGPX_VERSION=""OctoPrint"" -DSERIAL_SUPPORT -fvisibility=hidden -IGPX/build/src/shared -IGPX/src/shared -IGPX/src/gpx
arm-linux-gnueabihf-gcc: error: GPX/src/pymodule/gpxmodule.c: No such file or directory
arm-linux-gnueabihf-gcc: fatal error: no input files
compilation terminated.
error: command 'arm-linux-gnueabihf-gcc' failed with exit status 4


Done!
Close

Something went wrong
Installing the plugin from URL "unknown" failed: Could not parse output from pip

Bed Temperature freezes on local screen

Hello,

When I start a print, both the extruder and the bed temps will be around 24C. As Marlin increases both temps the extruder temp and bed temps change on my LCD controller. However, only the extruder temps is changing on the temp tab of the browser window. Even though the bed is heating up the bed temp remains at the starting temp (~24C) in Octoprint, this causes the print to stall as Octoprint doesn't think it's at temp and continues the "heating" process. Sometimes I can disconnect and reconnect and the problem goes away, but here lately it is not working anymore...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.