Welcome! Log In Create A New Profile

Advanced

Calibration of Prusa V2 w/Mac

Posted by escherfan13 
Calibration of Prusa V2 w/Mac
January 22, 2013 03:24AM
Hi!

I'm extremely new to the 3D printing world... This is absolutely fascinating technology!

I recently assembled a Prusa V2 w/Printrboard, however am having one heck of a time trying to get it calibrated. I have a MacBook Pro running Pronterface and Slic3r. It appears that (at least) the Z axis calibration is off. It moves 14.85mm for every 10mm it is supposed to move.

How specifically do I go about calibrating it? It says something about using a jumper on the board? Do I import some files off of the board or write a new version to load? I found this post, however honestly I don't know much about computers and programming and got lost early on...

[www.printrbottalk.com]

Is there like a "Calibration for Printrboard on a Mac for Dummies"?

Thanks for your help! Looking forward to learning more about this tech!

Have a great day!

C
Re: Calibration of Prusa V2 w/Mac
January 22, 2013 02:50PM
Hello,

It shouldn't matter that you are using a mac, but are you using the Marlin firmware? If so, makerfarm has a decent printrboard config guide. You can find it here: Makerfarm Install Guides.

Your printrboard is probably pre-loaded with firmware if it is moving at all. Do you have a copy of the current config files? You'll want to start with those if possible.

Yes, there should be a jumper on the printrboard, depending on the version you have, you'll either have to remove or replace the jumper (and hit the reset button) to put the board into config mode.

It a pretty wide-open topic, so see if the makerfarm guide helps you. If not, come back and ask specific questions.

FYI, there is a forum specifically for firmware topics. You may find answer there as well.

Bobby
Re: Calibration of Prusa V2 w/Mac
January 23, 2013 12:14AM
Hi. I callibrated my prusa (Printrbot board) using my MacBook Pro.

There were a lot of non-obvious things to go through to get it to work. First, I had to determine which bootloader I was using. In my case it was the CDC bootloader. Because I was using that bootloader, I was able to compile and load firmware using the Arduino app. It was important to have the correct board selected and the correct path to the serial device selected. To compile, I place the jumper onto the board, press the reset button, then compile and build the software, then upload it to the board. Then I remove the jumper, press reset, and re-connect to the board. Then you can see changes such as to the last modification date, version, etc. to verify your change made it in.

To change the Z calibration, you'll probably need to modify the steps per millimeter which is the axis_steps_per_unit which is an array. The Z is usually the third of four elements in the array. (X, Y, Z, Extruder).

Mine is defined as "((Z_MTR_STPS/MICROSTEPPING_RATIO)/Z_ROD_PITCH)".

Good luck. It was very hard to get all of these calibrated. If you have problems, I can tell you (from my experience) that it never turned out to be a problem that I had a Mac. It was always something else.
Re: Calibration of Prusa V2 w/Mac
January 28, 2013 03:41AM
Hi! Thanks for the quick responses! I [think I] followed those directions [correctly] with Arduino 0023 and received this error:

'Serial' was not declared in the scope.

It appears to be highlighting MYSERIAL.write(ch); for the tab Marlin.h

It's a Rev D board.

Am I missing something really simple? Could the code I have be corrupted or something?

Thanks for your help!!!

C
Re: Calibration of Prusa V2 w/Mac
January 28, 2013 03:19PM
Hmm... a couple of things come to mind. First, I seem to recall that printrboard is not compatible with Arduino IDE versions beyond 0022, you may check into that. That would be a simple fix.

Beyond that, within the arduino IDE there is a menu option to select your port (Tools/Serial Port). Be sure to select your port AFTER you place your jumper and hit the reset button. The port changes as you hit the reset button - so be sure to check that before trying to send the code to the board. This has bitten me a time or two in the past. So here's what I do (I have RevD as well):

1. Place the jumper over the two pins.
2. Press the reset button and hold it down until I hear my computer's audio notification that a new usb device is connecting. Only then do I release the button. I'm not sure this is absolutely necessary, but it seems to give me reliable results.
3. Verify the COM port the board is using (within your OS)
4. Set that COM within the Arduino IDE.
5. Select "Upload" within Arduino
6. If success, move the jumper off of the two pins
7. Press the reset button and hold it down (again)
8. Test changes

I'm listing that off the top of my head, but I think that is accurate.

Bobby
Re: Calibration of Prusa V2 w/Mac
January 28, 2013 07:57PM
Thanks Bobby!

I tried that and the part with the coms works (I use the tty, right?). I'm still getting this error though... I'll attach a pic.

Here's the error notice:

In file included from cardreader.cpp:1:
Marlin.h:25:27: error: Configuration.h: No such file or directory
In file included from Marlin.h:26,
from cardreader.cpp:1:
pins.h:995:2: error: #error Unknown MOTHERBOARD value in configuration.h
In file included from cardreader.cpp:1:
Marlin.h:35:25: error: WProgram.h: No such file or directory
Marlin.h:47:21: error: WString.h: No such file or directory
In file included from cardreader.cpp:1:
Marlin.h: In function 'void serialprintPGM(const char*)':
Marlin.h:95: error: 'Serial' was not declared in this scope
Marlin.h: At global scope:
Marlin.h:104: error: variable or field 'manage_inactivity' declared void
Marlin.h:104: error: 'byte' was not declared in this scope
Marlin.h:175: error: 'NUM_AXIS' was not declared in this scope
In file included from stepper.h:24,
from cardreader.cpp:4:
planner.h:92: error: 'NUM_AXIS' was not declared in this scope
planner.h:104: error: 'BLOCK_BUFFER_SIZE' was not declared in this scope
planner.h: In function 'void plan_discard_current_block()':
planner.h:112: error: 'BLOCK_BUFFER_SIZE' was not declared in this scope
planner.h: In function 'block_t* plan_get_current_block()':
planner.h:122: error: 'block_buffer' was not declared in this scope
In file included from cardreader.cpp:5:
temperature.h: At global scope:
temperature.h:39: error: 'EXTRUDERS' was not declared in this scope
temperature.h:40: error: 'EXTRUDERS' was not declared in this scope
temperature.h:41: error: 'EXTRUDERS' was not declared in this scope
temperature.h:55: error: 'EXTRUDERS' was not declared in this scope
temperature.h: In function 'float degHotend(uint8_t)':
temperature.h:65: error: 'current_raw' was not declared in this scope
temperature.h: In function 'float degTargetHotend(uint8_t)':
temperature.h:73: error: 'target_raw' was not declared in this scope
temperature.h: In function 'void setTargetHotend(const float&, uint8_t)':
temperature.h:81: error: 'target_raw' was not declared in this scope
temperature.h: In function 'bool isHeatingHotend(uint8_t)':
temperature.h:105: error: 'target_raw' was not declared in this scope
temperature.h:105: error: 'current_raw' was not declared in this scope
temperature.h: In function 'bool isCoolingHotend(uint8_t)':
temperature.h:113: error: 'target_raw' was not declared in this scope
temperature.h:113: error: 'current_raw' was not declared in this scope
Attachments:
open | download - Screen Shot 2013-01-28 at 5.55.36 PM.png (166.7 KB)
Re: Calibration of Prusa V2 w/Mac
January 28, 2013 08:02PM
Ah! It looks like you are missing your Configuration.h file! Check to make sure that has not been deleted or moved.
Re: Calibration of Prusa V2 w/Mac
January 28, 2013 09:57PM
Thanks! Tried it and now I have this error... sad smiley

In file included from cardreader.cpp:1:
Marlin.h:35:25: error: WProgram.h: No such file or directory
Marlin.h:51:21: error: WString.h: No such file or directory
In file included from cardreader.h:6,
from cardreader.cpp:2:
SdFile.h:28:19: error: Print.h: No such file or directory
In file included from cardreader.cpp:1:
Marlin.h: In function 'void serialprintPGM(const char*)':
Marlin.h:104: error: 'Serial' was not declared in this scope
In file included from cardreader.h:6,
from cardreader.cpp:2:
SdFile.h: At global scope:
SdFile.h:35: error: expected class-name before '{' token
cardreader.cpp: In constructor 'CardReader::CardReader()':
cardreader.cpp:28: error: 'millis' was not declared in this scope
cardreader.cpp: In member function 'void CardReader::lsDive(const char*, SdFile)':
cardreader.cpp:79: error: 'Serial' was not declared in this scope
cardreader.cpp:80: error: 'Serial' was not declared in this scope
cardreader.cpp:111: error: 'Serial' was not declared in this scope
cardreader.cpp: In member function 'void CardReader::initsd()':
cardreader.cpp:149: error: 'Serial' was not declared in this scope
cardreader.cpp:154: error: 'Serial' was not declared in this scope
cardreader.cpp:159: error: 'Serial' was not declared in this scope
cardreader.cpp:165: error: 'Serial' was not declared in this scope
cardreader.cpp: In member function 'void CardReadereye popping smileypenFile(char*, bool)':
cardreader.cpp:239: error: 'Serial' was not declared in this scope
cardreader.cpp:243: error: 'Serial' was not declared in this scope
cardreader.cpp:273: error: 'Serial' was not declared in this scope
cardreader.cpp:284: error: 'Serial' was not declared in this scope
cardreader.cpp:293: error: 'Serial' was not declared in this scope
cardreader.cpp:300: error: 'Serial' was not declared in this scope
cardreader.cpp: In member function 'void CardReader::removeFile(char*)':
cardreader.cpp:333: error: 'Serial' was not declared in this scope
cardreader.cpp:337: error: 'Serial' was not declared in this scope
cardreader.cpp:364: error: 'Serial' was not declared in this scope
cardreader.cpp:370: error: 'Serial' was not declared in this scope
cardreader.cpp: In member function 'void CardReader::getStatus()':
cardreader.cpp:380: error: 'Serial' was not declared in this scope
cardreader.cpp:385: error: 'Serial' was not declared in this scope
cardreader.cpp: In member function 'void CardReader::write_command(char*)':
cardreader.cpp:407: error: 'Serial' was not declared in this scope
cardreader.cpp: In member function 'void CardReader::checkautostart(bool)':
cardreader.cpp:418: error: 'millis' was not declared in this scope
cardreader.cpp:432: error: 'tolower' was not declared in this scope
cardreader.cpp:441: error: 'tolower' was not declared in this scope
cardreader.cpp: In member function 'void CardReader::chdir(const char*)':
cardreader.cpp:502: error: 'Serial' was not declared in this scope
Attachments:
open | download - Screen Shot 2013-01-28 at 7.55.17 PM.png (111.9 KB)
Re: Calibration of Prusa V2 w/Mac
January 29, 2013 12:14PM
Well, I can see by your error that arduino is complaining about missing files again, but I don't recognize the file names. I would suggest checking to make sure your Configuration.h file correctly identifies your motherboard. For printrboard you should see the following line:

#define MOTHERBOARD 81

Bobby
Re: Calibration of Prusa V2 w/Mac
March 08, 2013 02:21PM
Im having this issue... So my question is this : How do I make arduino v22 support printerboard on mac? I doubt there will be a printerboard option under boards when I download it...

Edited 1 time(s). Last edit at 03/08/2013 02:24PM by fahraynk.
Sorry, only registered users may post in this forum.

Click here to login