Reversed X Axis

Need help troubleshooting hardware issues... talk here

Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Wed-19-Sep

So I have had my printrbot plus since 1404 and I have had one thing bothering me for a long time. The x axis is reversed. When i was setting it all up I was running into issues and reflashed the firmware. I have never used this printer the correct way. My fix has always been to just have the stepper cable flipped at the printer board and reverse everything in my Slic3r to get things to print right.
I would like to finally straighten this out and make some other mods. Obviously when I flip the motor harness the x axis homes opposite and can't stay that way. I have always used this firmware I found on git hub called Bedlevel - v2. It has worked great for me other than the flipped axis. I don't mind having to mod the .hex file to get it to work but does anyone know where I can download the correct firmware for the printer. I have a revD board and can only find revF builds. I also wouldn't be very opposed to upgrading my board in the process if there was really anything to gain by doing so.
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Reversed X Axis

Sponsor

Sponsor
 

Re: Reversed X Axis

Postby RetireeJay » 2017-Sep-Wed-20-Sep

Well, let's start by looking at the official orientation, viewtopic.php?f=16&t=3484#p29509, just to be sure we're seeing the same thing.

When you turn on the printer (and the head is at an arbitrary position), it assumes its current location is 0, 0, 0. Obviously that's not true, so then you home the axes with G28 or with the homing icons on your interface program (Repetier, Cura, Pronterface, etc. all have icons for homing the axes). Once X, Y, and Z have been homed, it should look like the picture referenced above. Note that the way it homes each axis is to drive toward more negative values. This is the only time the printer ever moves to a location with negative values on the axis. But once it finds the zeroing switch, it resets the "current position" to zero. After that, it only wants to move in positive directions.

If your printer was originally moving away from the X zeroing switch when you told it to go home (G28 X0) then reversing the motor leads was exactly the right thing to do. It seems that sometimes quality control on the motors is a bit slack and sometimes they run in reverse of the expected direction; reversing the plug fixes the problem.

As a test, after homing issue a command to move to a positive X, for example G1 X50. The printhead should move 50mm to the right, away from the switch. It's possible but unlikely that your X calibration has a negative value. That would make the printhead move in the "wrong" direction for "ordinary" moves, but it would still move in the "right" direction for homing.

But then it's not clear why you need to do anything strange in Slic3r. What happens if you don't reverse things in Slic3r?

There are versions of Marlin on Github that you can compile with settings for your Rev D board and Plus bed dimensions, etc. All the configuration is done in Configuration.h and Configuration_Adv.h. It's a bit of a learning curve, but there are threads in the forum to help you out if you want to try (I like PlatformIO myself, rather than the Arduino IDE and compiler).

An upgrade to the Rev F board gets you some safety features like a much better connection for the heated bed and a bit more protection for the fan driver. Depending on your preference, you may find the default use of a bed-sensing probe either a blessing or a terrible annoyance (I'm in the latter camp); if you wish to use a switch, you will have to understand the schematic and modify the default connections and software settings. But don't go beyond and get Rev G. It bears no resemblance to Revs A - F and is still very poorly supported in my opinion. People who like to waste gazillions of microprocessor clock cycles love it, but in practical terms it doesn't really do anything better (I speak from partial ignorance, maybe it does do something better for someone - but it doesn't support all the features we have come to know and love).
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3
User avatar
RetireeJay
My next printer is...
 
Posts: 4915
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 493

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Wed-23-Sep

Thanks for the reply, Jay
Basically my issue is that I had no idea how to use my printer at all when I bought it back in 2014 and printrbot has terrible customer service. I spend two evenings assembling the thing only to find out I didn't even know how to make a print once it was put together.
After some playing I decided to divorce it from the RaspPi and run it directly from my laptop using a usb and Repetier Host. I had connection issues and figured a reflash of the module would rectify the situation. I found the random flash on github and it was titles bedlevel-v2. It was believed at the time to be compatible with my printer, although I think it is a simple, or simple firmware variant. I assume I was correct as now I could recognize my printer, connect, and move the head around. I never had it working "out of the box" as they would say; as I assembled the thing from parts and modified it from it's exact intended use with my actions. I made sure to enter all the pertinent info like bed layout, speeds and whatnot.
When I attempted my first z calibration I realized the x was moving away from the stop and jumping and grinding. I turned it off, reversed the motor and never looked back. However when I print certain things, i.e. letters, I need to first mirror the object in the x axis before slicing to ensure it prints as desired.
I would like to avoid this step and now get my 4+ year old printer working as desired.
I have made numerous modifications to this thing, and to a degree I don't know that I will ever stop. However I spend more time screwing with the darn thing than printing and enjoying it. I have access to other printers and feel pretty burned about the money that I spent on the printrbot and the place I am at with it today.
As of recent I have decided to upgrade to a Pi3b+ and re-go the the octoprint route. I love the direction things are going at the moment and I'm trying to get everything tight with her (maybe even make an enclosure). I had layer slip issues when connected to the laptop, but could never chalk that up to the printer itself, that is why I recently decided to go back to the Pi. Slowly but surely I am going through the thing to make it better and better. Ideally I just want a quick, elegant, and easy to use printer. (I'm not sure that day will ever come though) I have lost a lot of faith in these printers. Although I hear the simple is pretty quick, elegant, simple and "cheap".
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby RetireeJay » 2017-Sep-Thu-09-Sep

Well, as you can see from my signature block, I have had a Plus operational since early January 2013. I never have used a Pi or Octoprint; my printer and my main computer are parked next to each other and I've never had any problem with the setup. I can have open windows for CAD, Slic3r, Repetier, email, web browsing, Word documents, Excel documents, and whatnot all at the same time and never have the Printrbot skip a beat.

I started out with the original Rev D board and the factory firmware, and stayed with that for some years. Eventually I learned to compile code in Arduino and then PlatformIO. A couple of years ago the Rev D board died, and I replaced it with Rev F4; I was happy to get the improved safety but did not notice any change in the actual printing performance. I've also upgraded the hardware, like with an E3D v5 printhead, cable chain for the wires going to the printhead, etc.

I'm currently running Marlin 1.1 (version as of May 6, 2017) downloaded from Github and then compiled with the correct settings for the Rev F4 board and my Plus dimensions etc.

My biggest struggles are when I try to print with a difficult material like NinjaFlex. For most usage with well-behaved materials like T-Glase, I've got things pretty well tuned in so that I can just load the Gcode file and hit print.

If your printer homes to X=0, Y=0 at the position indicated in the picture I referenced, and if you can give a command like G1 X50 and the printhead moves to the right by 50mm, then I don't understand why your models would be coming out reversed. What does the preview in Slic3r show? What does the preview in Repetier show? If both of those look correct, but the print comes out mirrored, I have to wonder if you have your X axis zeroing switch installed on the wrong end of the axis.
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3
User avatar
RetireeJay
My next printer is...
 
Posts: 4915
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 493

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Thu-20-Sep

Thanks for the replies. It is weird and I know that the answer is simple.
The printer homes and zeros fine. Standing in front of it, it homes to the back left position. If I G1 X50 the print head moves right. If I G1 Y50 the bed moves backwards.
I'm not using repetier host anymore, just Slic3r. In Slic3r the bed is set to X225 Y250 (I have a fan on the right so I lost some X), the origin is 0,0. It says to use the origin to tell the software how far away you are from the bed LEFT FRONT when 0,0. So looks to me that my bed origin is really the LEFT REAR. If I move the origin to 0,250, this should illustrate to the software that LEFT REAR is the origin. However it doesn't flip the arrows that show the axis. It thinks right is positive and back is positive. it then shows the print off the bed and gives me a warning in octoprint.
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Thu-20-Sep

Looks like the answer may be in here. Not sure what is going on though, I haven't read it all.
viewtopic.php?f=15&t=6932
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby RetireeJay » 2017-Sep-Thu-21-Sep

Yes, indeed, Printrbot did make a change from homing Y at zero to homing Y at Max, but I think that applies only to the Simple. For a Plus, if the microswitch is in the standard position, Y=Home should be Y=0. If your printer homes to Y = Max, then you have to tell Slic3r about that (and presumably Octoprint or whatever you're using to send G-code to the printer).
This picture should make it perfectly clear what the normal X and Y axes are for a standard Plus.
I wouldn't get too hung up on trying to understand directions for the Simple when you actually have a Plus.
Plus In Zero Position annotated.jpg
  • 0

You do not have the required permissions to view the files attached to this post.
Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3
User avatar
RetireeJay
My next printer is...
 
Posts: 4915
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 493

Re: Reversed X Axis

Postby RetireeJay » 2017-Sep-Thu-21-Sep

Note that there's now a difference between "Home" and "Origin". "Home" on the Y axis can be either 0 or Max, depending on where the microswitch is - and the firmware in the printer MUST know which direction to go to find the switch! But "Origin" is always at zero.

So after "homing" in X and Y, if the printer is not at the location I pictured, but has the bed all the way toward you, look at your interface program and see where it says Y is. If it says Y is 250, well and good. You could issue a command G1 Y0 and it should then go to the "origin" position shown in the picture. Otherwise, things are going to get complicated.
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3
User avatar
RetireeJay
My next printer is...
 
Posts: 4915
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 493

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Fri-18-Sep

My Plus 1404 homes with the bed all the way towards me. The limit switch is definitely installed in the correct position. I assume I have the wrong firmware in there. I can't tell slicer or octoprint to reverse when printing. I can tell octoprint to reverse the controls, but it's only for the console and control over the printer while idle, it doesn't actually switch the min max. If I home the printer, then move the y ten over in the octoprint console, the terminal viewer shows Send: G1 Y10 F6000. So it is homing it at zero.
That is one issue I was kind of perceiving from the beginning. I can't find appropriate revD firmware and to correct this issue an upgrade to a revF printer might be the easiest fix per se. I guess I could modify the current firmware and reflash.
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Fri-21-Sep

I think I need to reverse the homing direction and re-reverse the wiring on the printerboard. Although I am tired and all this digging and trying to figure this out is very taxing after a long day of work. I could be wrong as that may make the axis run backwords. There is a simple firmware that says it can be run on any printrbot if the bed values and other attributes are changed, however, it does require a revF board. I also don't remember how or what program to compile code with and load it to the board, or read what's on the board. The platformio thing seems confusing to me, I'm not sure how any of that works or which to download or whatever. I would like to get this in order and then I don't have plans to touch the firmware anymore if I can help it. It is interestng and I love learning, but I have like 40 other hobbies. I want printing and designing to be more of a hobby than constant troubleshooting. Although I can never leave well enough alone.
Also I have bed leveling so that can add another degree of headache to this homing problem. I also realized I never touched any of the attributes for my thermister I don't think well.
Thank you very much for your help thus far by the way! You are the man.

Here is a screenshot of the config file for bedlevel v2
https://drive.google.com/file/d/0B0MG4_u34kOAQmtXVlNyX1ZfRzg/view?usp=sharing

Here are a couple of my printer
https://drive.google.com/file/d/0B0MG4_u34kOATUVTTEowX1BnYVU/view?usp=sharing
https://drive.google.com/file/d/0B0MG4_u34kOAR0ZNQV9oZ19nbzA/view?usp=sharing
https://drive.google.com/file/d/0B0MG4_u34kOAbjR4MFJ1eGtsbVU/view?usp=sharing
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby RetireeJay » 2017-Sep-Fri-21-Sep

OK, one more time around the loop here:

When you home in Y, the bed moves all the way toward you. But you say it does hit a homing switch when it reaches the end. So when it reaches "home" the position SHOULD be +250. In fact, it shouldn't be a problem! You just happen to have a printer that homes to Y = Max. As long as the firmware knows that's Max, everything is fine.

Now after homing, if you tell it to go to zero (G1 Y0) the bed should move all the way away from you, so it looks like the 0, 0, 0 picture I posted before. And if you then tell it to go to 50 (G1 Y50) the bed should move 50 mm toward you. If all these things are true, then you don't really have a problem.

If, on the other hand, the printer thinks that having the bed all the way toward you is Y = 0, and it moves the bed away from you if you go to +50 (G1 Y50) then you do indeed have a mismatch between the hardware and the firmware.

If you are more comfortable with physical things than software, you could figure out a way to relocate the Y home switch to the other side, so it triggers when the bed is all the way away from you, and also reverse the plug on the motor. This would fix your mirror imaging without changing your firmware.
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3
User avatar
RetireeJay
My next printer is...
 
Posts: 4915
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 493

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Fri-21-Sep

It does indeed home to zero and when G1 Y0 is entered nothing happens. When G1 Y50 is entered it moves away from me 50.
I would definitely prefer to fix it with software. It isn't optimal but I know I am capable of going down that road. I was just hoping this was more common and an easier fix.
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby RetireeJay » 2017-Sep-Sat-07-Sep

If you're up to compiling your own firmware and flashing it, then one place to start is with the "Unified V3" https://github.com/Printrbot/Marlin/releases/tag/unified-v3
This is an older version which does NOT have auto-leveling, but I don't think you need it.

You will need to make several changes in Configuration.h

You need to specify the correct MOTHERBOARD at around line 64; for Printrboards Revs A - D use 81. (Marlin can be configured for dozens of different boards, not just Printrboard). BTW, if you upgrade to a Rev F board then you will need to use a more recent release of Marlin because Rev D and Rev F are not firmware-compatible. Rev F is 84.

Then, around line 322 there's an entry for Y_HOME_DIR which probably starts out at -1 and you will change to 1.
And around line 346 there's an entry for MANUAL_Y_HOME_POS which you'll change from 0 to 250

This is not an exhaustive list of changes to make, just a starter for you. There are more recent versions of Marlin which will also work just fine, but you will probably have to do more work getting them configured correctly.

I highly recommend using Notepad++ to do the editing, PlatformIO to do the compiling, and FLIP to do the flashing.
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3
User avatar
RetireeJay
My next printer is...
 
Posts: 4915
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 493

Re: Reversed X Axis

Postby RetireeJay » 2017-Sep-Sat-07-Sep

Oops; I just went back and looked at your post where you said you DO have auto-leveling. So Unified isn't going to work for you.
Perhaps the best to try is Marlin 1.1, which is also available on Github.

In Marlin 1.1 they use board names instead of board numbers. For my Rev F, here's what it looks like:
Code: Select all
// The following define selects which electronics board you have.
// Please choose the name from boards.h that matches your setup
#ifndef MOTHERBOARD
  #define MOTHERBOARD BOARD_PRINTRBOARD_REVF
#endif


To make PlatformIO work with Marlin 1.1, simply download the attached "PlatformIOAddons.zip" file from this post, unzip it, and put it in the same directory as Marlin.
Marlin1_1DirectoryStructure.JPG


The HUGE advantage of PlatformIO is that you can easily Search across all the files in the whole system to find every instance of a variable. The Arduino IDE doesn't do that.
  • 0

You do not have the required permissions to view the files attached to this post.
Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3
User avatar
RetireeJay
My next printer is...
 
Posts: 4915
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 493

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Sat-15-Sep

Thanks Jay,
I have been looking at this stuff for the past several hours and re familiarizing myself with the structure of everything. I'm glad I am going about it this way cause there is ultimately other things in the config file that I am going to want to change. I am indeed going to go with Marlin 1.1. I have been on hiatus with this printer as I have others I can use (that I don't own), however I have been wanting to get this one up to speed again. I'll share more of that with you later after I get this reflashed and the axis in order. I still have more figuring out to do, and the config file seems pretty straightforward for the most part. I'm not there yet but the next step of compiling in PlatformIO has me a little confused before I embark. this is weird to a degree because I know I have done some of this before, and even found traces of that in my computer to corroborate the claim. I am compiling the config file, but I need to upload the hex and all the libraries, correct? Does it compile all the files into a single .hex file and then load that.
I think in the past when I loaded the firmware I never changed any of the parameters, for thermistor or any of that, and then just changed my bed size and extruder steps though M500 and M501.
I am about to step out but I am definitely going to work on this more tonight and hopefully get it sorted, tonight if not tomorrow.
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby RetireeJay » 2017-Sep-Sat-17-Sep

wrenchinjunk wrote:I am compiling the config file, but I need to upload the hex and all the libraries, correct? Does it compile all the files into a single .hex file and then load that.

Yes, when you compile Marlin it pulls in the Configuration file and dozens and dozens of other files to produce a single hex file. There's a batch file inside the PlatformIO folder that I posted. It has my own directory structure in it, so you'll need to change the path. PlatformIO knows to look for the "root" file "Marlin" and then it uses the board type as an argument (although you need to have the board type set up correctly in Configuration.h also).
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3
User avatar
RetireeJay
My next printer is...
 
Posts: 4915
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 493

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Mon-23-Sep

Okay, I have to admit it took me a long time to even get to this point. I am struggling but learning little by little. I thought I would be able to figure this out faster but it is what it is. I modified your batch file and changed the board to a Printrboard as I'm on revD. I am getting these errors and it is kicking it back.

I don't know what I'm doing but this seems like a much easier way of doing this
https://www.youtube.com/watch?v=hUeMQfPTdac&t=98s

> Executing task: platformio.exe run <

[09/12/17 00:46:02] Processing mega2560 (build_flags: -D USE_AUTOMATIC_VERSIONING -I $BUILDSRC_DIR; board_f_cpu: 16000000L; platform: atmel
avr; board: megaatmega2560; framework: arduino; extra_script: ./generate_version_header_for_marlin)
------------------------------------------------------------------------------------------------------------------------------------------
Warning! `extra_script` option is deprecated and will be removed in the next release! Please use `extra_scripts` instead.
Verbose mode can be enabled via `-v, --verbose` option
Converting Marlin.ino
Collected 24 compatible libraries
Looking for dependencies...
Library Dependency Graph
|-- <SPI> v1.0
|-- <LiquidCrystal> v1.0.5
|-- <Wire> v1.0
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
AttributeError: 'NoneType' object has no attribute 'group':
File "C:\Users\Andy\.platformio\penv\lib\site-packages\platformio\builder\main.py", line 162:
env.SConscript(item, exports="env")
File "C:\Users\Andy\.platformio\packages\tool-scons\script\..\engine\SCons\Script\SConscript.py", line 541:
return _SConscript(self.fs, *files, **subst_kw)
File "C:\Users\Andy\.platformio\packages\tool-scons\script\..\engine\SCons\Script\SConscript.py", line 250:
exec _file_ in call_stack[-1].globals
File "C:\Users\Andy\Documents\PrintrBotPlusFirmware\Marlin-1.1.0-RC5\PlatformIOAddons\generate_version_header_for_marlin", line 30:
SHORT_VERSION = s.group(1)+' '+BRANCH
======================================================= [ERROR] Took 2.14 seconds =======================================================

[09/12/17 00:46:04] Processing mega1280 (build_flags: -D USE_AUTOMATIC_VERSIONING -I $BUILDSRC_DIR; board_f_cpu: 16000000L; platform: atmel
avr; board: megaatmega1280; framework: arduino; extra_script: ./generate_version_header_for_marlin)
------------------------------------------------------------------------------------------------------------------------------------------
Warning! `extra_script` option is deprecated and will be removed in the next release! Please use `extra_scripts` instead.
Verbose mode can be enabled via `-v, --verbose` option
Converting Marlin.ino
Collected 24 compatible libraries
Looking for dependencies...
Library Dependency Graph
|-- <SPI> v1.0
|-- <LiquidCrystal> v1.0.5
|-- <Wire> v1.0
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
AttributeError: 'NoneType' object has no attribute 'group':
File "C:\Users\Andy\.platformio\penv\lib\site-packages\platformio\builder\main.py", line 162:
env.SConscript(item, exports="env")
File "C:\Users\Andy\.platformio\packages\tool-scons\script\..\engine\SCons\Script\SConscript.py", line 541:
return _SConscript(self.fs, *files, **subst_kw)
File "C:\Users\Andy\.platformio\packages\tool-scons\script\..\engine\SCons\Script\SConscript.py", line 250:
exec _file_ in call_stack[-1].globals
File "C:\Users\Andy\Documents\PrintrBotPlusFirmware\Marlin-1.1.0-RC5\PlatformIOAddons\generate_version_header_for_marlin", line 30:
SHORT_VERSION = s.group(1)+' '+BRANCH
======================================================= [ERROR] Took 1.97 seconds =======================================================

[09/12/17 00:46:06] Processing printrboard (extra_script: ./generate_version_header_for_marlin; platform: teensy; build_flags: -D USE_AUTOM
ATIC_VERSIONING -I $BUILDSRC_DIR -D MOTHERBOARD=BOARD_PRINTRBOARD; board: teensy20pp; framework: arduino)
------------------------------------------------------------------------------------------------------------------------------------------
Warning! `extra_script` option is deprecated and will be removed in the next release! Please use `extra_scripts` instead.
Verbose mode can be enabled via `-v, --verbose` option
Converting Marlin.ino
Collected 90 compatible libraries
Looking for dependencies...
Library Dependency Graph
|-- <SPI> v1.0
|-- <Wire> v1.0
|-- <LiquidCrystal> v1.0.5
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
AttributeError: 'NoneType' object has no attribute 'group':
File "C:\Users\Andy\.platformio\penv\lib\site-packages\platformio\builder\main.py", line 162:
env.SConscript(item, exports="env")
File "C:\Users\Andy\.platformio\packages\tool-scons\script\..\engine\SCons\Script\SConscript.py", line 541:
return _SConscript(self.fs, *files, **subst_kw)
File "C:\Users\Andy\.platformio\packages\tool-scons\script\..\engine\SCons\Script\SConscript.py", line 250:
exec _file_ in call_stack[-1].globals
File "C:\Users\Andy\Documents\PrintrBotPlusFirmware\Marlin-1.1.0-RC5\PlatformIOAddons\generate_version_header_for_marlin", line 30:
SHORT_VERSION = s.group(1)+' '+BRANCH
======================================================= [ERROR] Took 2.94 seconds =======================================================

[09/12/17 00:46:09] Processing brainwavepro (extra_script: ./generate_version_header_for_marlin; platform: teensy; build_flags: -D USE_AUTO
MATIC_VERSIONING -I $BUILDSRC_DIR -D MOTHERBOARD=BOARD_BRAINWAVE_PRO -D AT90USBxx_TEENSYPP_ASSIGNMENTS; board: teensy20pp; framework: ardui
no)
------------------------------------------------------------------------------------------------------------------------------------------
Warning! `extra_script` option is deprecated and will be removed in the next release! Please use `extra_scripts` instead.
Verbose mode can be enabled via `-v, --verbose` option
Converting Marlin.ino
Collected 90 compatible libraries
Looking for dependencies...
Library Dependency Graph
|-- <SPI> v1.0
|-- <LiquidCrystal> v1.0.5
|-- <Wire> v1.0
fatal: Not a git repository (or any of the parent directories): .git
fatal: Not a git repository (or any of the parent directories): .git
AttributeError: 'NoneType' object has no attribute 'group':
File "C:\Users\Andy\.platformio\penv\lib\site-packages\platformio\builder\main.py", line 162:
env.SConscript(item, exports="env")
File "C:\Users\Andy\.platformio\packages\tool-scons\script\..\engine\SCons\Script\SConscript.py", line 541:
return _SConscript(self.fs, *files, **subst_kw)
File "C:\Users\Andy\.platformio\packages\tool-scons\script\..\engine\SCons\Script\SConscript.py", line 250:
exec _file_ in call_stack[-1].globals
File "C:\Users\Andy\Documents\PrintrBotPlusFirmware\Marlin-1.1.0-RC5\PlatformIOAddons\generate_version_header_for_marlin", line 30:
SHORT_VERSION = s.group(1)+' '+BRANCH
======================================================= [ERROR] Took 2.80 seconds =======================================================

=============================================================== [SUMMARY] ===============================================================
Environment mega2560 [ERROR]
Environment mega1280 [ERROR]
Environment printrboard [ERROR]
Environment brainwavepro [ERROR]
======================================================= [ERROR] Took 9.85 seconds =======================================================
The terminal process terminated with exit code: 1

Terminal will be reused by tasks, press any key to close it.
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Mon-23-Sep

Also I used the PlatformioAddons folder that was already installed in the folder with the version of Marlin that I downloaded. I just modified the batch and then dropped it in there.
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby RetireeJay » 2017-Sep-Tue-06-Sep

The video you reference is for people running Linux on a Mac.
I've been assuming you are running Windows. If you're on a Mac, then entirely different methods are used. There's a tutorial by PxT that you can access through the Printrbottalk Wiki.

It's normal to see lots of "Warnings" during compile, but "fatal" errors obviously are going to prevent generation of a valid hex file.
I am not familiar with the fatal error about "not a git repository".

When I downloaded my Marlin source code, I did NOT use the "git" method, I downloaded the files in ZIP format and then extracted all the files. You can select either method from Github, but using git is way, way above my pay grade (i.e. I don't understand it at all).

Do you have an LCD display? I notice that the fatal errors come just after some references to the LCD, and if you are not using one you could disable the LCD in your Configuration file and that might help.
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3
User avatar
RetireeJay
My next printer is...
 
Posts: 4915
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 493

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Tue-09-Sep

Hmmm, there is a part in the video where he talks about an installer for window, mac or linux all with gui interfacing and flash capability.

I am using a windows 10 pc though so non of that matters right now anyway.
I honestly don't know when I downloaded this firmware, it was already in my download folder from the last time I was messing around with the idea of getting this thing back in order. I did download the .zip though, it has all the files ready to go that will compile in the .hex as your said.

I am not currently running an LCD but I plan too, even though I am also going to run a screen from the Octoprint Pi as well. Then I will be able to see the control and printrboard side at a glance. I will play with it more soon. I sent my message at the end of the night last night and only had a little over an hour to play. I am getting a better grip on things though.
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Wed-22-Sep

This is what I am getting now. I started over and downloaded a zip of the latest marlin and am going from there.

> Executing task: platformio.exe run <

[09/13/17 23:13:18] Processing printrboard (platform: teensy; lib_deps: U8glib@1.19.1; build_flags: -I $BUILDSRC_DIR -D MOTHERBOARD=BOARD_P
RINTRBOARD; board: teensy20pp; framework: arduino)
------------------------------------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
Converting Marlin.ino

warning: Ignoring missing SConscript 'teensy\builder\teensy\builder\frameworks\arduino.py'
File "C:\Users\Andy\.platformio\penv\lib\site-packages\platformio\builder\tools\platformio.py", line 261, in BuildFrameworks
Collected 1 compatible libraries
Looking for dependencies...
Library Dependency Graph
|-- <U8glib> v1.19.1
Compiling .pioenvs\printrboard\src\G26_Mesh_Validation_Tool.o
Compiling .pioenvs\printrboard\src\I2CPositionEncoder.o
Compiling .pioenvs\printrboard\src\M100_Free_Mem_Chk.o
Compiling .pioenvs\printrboard\src\Marlin.ino.o
In file included from Marlin\G26_Mesh_Validation_Tool.cpp:27:0:
Marlin\MarlinConfig.h:37:21: fatal error: Arduino.h: No such file or directory
#include "Arduino.h"
^
compilation terminated.
In file included from Marlin\I2CPositionEncoder.cpp:31:0:
Marlin\MarlinConfig.h:37:21: fatal error: Arduino.h: No such file or directory
#include "Arduino.h"
^
compilation terminated.
c:\users\andy\appdata\local\temp\tmpthmgjm:1:21: fatal error: Arduino.h: No such file or directory
#include <Arduino.h>
^
In file included from Marlin\M100_Free_Mem_Chk.cpp:51:0:
Marlin\MarlinConfig.h:37:21: fatal error: Arduino.h: No such file or directory
#include "Arduino.h"
^
compilation terminated.
compilation terminated.
*** [.pioenvs\printrboard\src\G26_Mesh_Validation_Tool.o] Error 1
*** [.pioenvs\printrboard\src\I2CPositionEncoder.o] Error 1
*** [.pioenvs\printrboard\src\Marlin.ino.o] Error 1
*** [.pioenvs\printrboard\src\M100_Free_Mem_Chk.o] Error 1
======================================================= [ERROR] Took 2.40 seconds =======================================================
The terminal process terminated with exit code: 1

Terminal will be reused by tasks, press any key to close it.

The error starts 'teensy\builder\teensy\builder\frameworks\arduino.py' but when I check that folder it is there.
If I search for it through file explorer it reads
C:\Users\Andy\.platformio\platforms\teensy\builder\frameworks\arduino.py. There path is doubled up at the begining for some reason.
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0

Re: Reversed X Axis

Postby RetireeJay » 2017-Sep-Thu-05-Sep

Hmm... The file folder of my copy of Marlin 1.1 source code, from July 6, does not contain arduino.h

However, the file MarlinConfig.h does definitely reference it. My computer does have arduino.h, found in
c:\Program Files (x86)\Arduino\hardware\teensy\cores\at90usb1286\

And here is the entire contents of arduino.h:
Code: Select all
#include "WProgram.h"
#include "pins_arduino.h"


I don't know if this is a rabbit trail for you. At one time, I did install the Arduino build environment for compiling Marlin, and maybe that's how I got arduino.h But if you have WProgram.h and pins_arduino.h in your existing Marlin directory, I'd suggest simply creating arduino.h on your own and putting it into the Marlin 1.1 folder.
  • 0

Printrbot Plus operational January 2013
Brass threaded rods (5/16" X 18) & nuts for Z axis
GT2 belts & pulleys
Cable chain to reduce probability of fatigue failure in wires
E3D V5 Hot End, 0.4mm nozzle, also 0.8 and 0.25 in use occasionally
PB fan mount + 40mm fan -- using printed mount adapter, not the E3D supplied fan
Injection molded extruder gears
Optical Z "endstop" (custom designed and built)
Have used many pounds of T-Glase filament. Now also doing some work with Ninjaflex SemiFlex
Print on glass with Scotch Craft Stick or other glue stick
"My next printer is..." Prusa i3 MK3
User avatar
RetireeJay
My next printer is...
 
Posts: 4915
Joined: 2013-Jan-Wed-13-Jan
Location: Greenville, SC
Reputation: 493

Re: Reversed X Axis

Postby wrenchinjunk » 2017-Sep-Fri-11-Sep

I did it, Jay! It was a longer journey than I thought it would take, but it's done. I learned a lot along the way which is important. I don't have any regrets going down this path, now I will easily be able to mod my firmware with confidence. As well as add the LCD that I want to add.
My last issues were related to several things. For one I dragged the PlatformIO addons folder I had made in the other firmware I was trying to mod into the newest marlin folder. I also had a teensy folder in that file as well. That created my rabbit hole situation and prevented the editor from compiling. This wasn't an issue but I never ended up needing the batch file. I did comment out the extra boards in the version of the PlatformIO folder I had dropped in so it didn't have a bunch of failed compilations and then one success when it found the Printrboard. My x and z axis flipped for some reason too even though they weren't inverted in the software, but I just modified it and reflashed. Now my origin is the front left of the printer just as it should be. The calibration cube I printer turned out great and shows just as viewed in Slic3r.
Either which way, thank you very much for your help and sticking it out with all the replies. I have some other issues going on but they are unrelated to this firmware installation and I'll make another thread. I had them before I attempted any of this.
  • 0

wrenchinjunk
Loading filament...
 
Posts: 17
Joined: 2014-May-Wed-12-May
Reputation: 0


Return to Troubleshooting talk

Who is online

Users browsing this forum: No registered users and 1 guest

cron