Welcome! Log In Create A New Profile

Advanced

PRUSA i3 Problems.

Posted by clockman10 
PRUSA i3 Problems.
February 19, 2016 07:50AM
Hi, I wonder if anyone can help me ?
I bought a 3D printer kit from "printchainstore" from their Ebay listing (can supply link if required) on 8th Feb.Came in about 3 days. Brilliant!!
Physical construction went very well (about 3 hours). All wiring completed and double checked.
Then the problems started.
1.Bed not heating.
2.None of the axis' will home.
3.Extruder motor not working.
I thought it was probably the firmware at fault so I installed Marlin (I have no idea what was installed originally).
I have edited the configuration.h file as per various instructions on the internet but to no avail.(Still have the same problems).
A few details of the electronics:-
Main board = 2560 R3 revA.
LED Controller = YB2004D with single push & Turn knob.
I am really not sure what control panel to #define - as this one is not listed.
I would appreciate any help and guidance that is available.
Thank you. Ken.
Re: PRUSA i3 Problems.
February 19, 2016 09:30AM
I bought the same printer from the same ebay store, and had almost identical problems.

First, the bed heat. Mine was a fried fuse holder. The 15A surface mount fuse is too much for the holder. The holder, best I can tell from digikey datasheets, is rated for about 7 amps. If yours is still intact (and you're good with soldering in tight places), unsolder the holder and solder the fuse directly to the board. Alternatively, break away the plastic (mine was toasted and crumbled away) and solder some leads to the metal remaining from the holder and use a real fuse.



Also, I have no idea what thermistor they used in the bed. It reads 50KΩ @ 25C and I could find no datasheets anywhere for anything close to this. I just replaced it with a NTC 3950 and used a stock table in Marlin.

The axis homing problem on mine was that stop switches on these are normally closed, and open when triggered. This requires a firmware change in Marlin as well.

The extruder is a problem. I don't know what it is derived from, but it is a pain to get right. I'd suggest getting a new one, but I'm stubborn. I ended up replacing the pololu A4988 board with a DRV8825. This also requires a firmware change since it is 1/32 microstepping. I also shimmed the motor slightly (with some of the supplied washers) to make a straighter path for the filament, and put on a bigger fan. I played with the voltage pot while doing a long extrude and turned it down until it started stuttering, then went about 1/8 turn more.



As far as firmware, I could not get them to divulge any info at all. I just got the latest Marlin from github (1.1.0_rc3) and kept poking at it until I got it working. Here's a unified diff of my Configuration.h changes (compared to the untouched github copy). diff is best since it just shows the changes, but if you want, and are using the same version, I'll send you the whole file. The lines starting with "-" are the changes I made compared to the "+" lines which are from the original file. All other lines are just for positioning in the file:

--- Configuration.h	2016-02-19 08:21:36.222016397 -0600
+++ ../../Marlin_clean/Marlin/Configuration.h	2016-01-20 19:44:05.126495886 -0600
@@ -48,7 +48,7 @@
 // startup. Implementation of an idea by Prof Braino to inform user that any changes made to this
 // build by the user have been successfully uploaded into firmware.
 #define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes.
-//#define SHOW_BOOTSCREEN
+#define SHOW_BOOTSCREEN
 #define STRING_SPLASH_LINE1 SHORT_BUILD_VERSION // will be shown during bootup in line 1
 //#define STRING_SPLASH_LINE2 STRING_DISTRIBUTION_DATE // will be shown during bootup in line 2
 
@@ -62,7 +62,7 @@
 
 // This determines the communication speed of the printer
 // :[2400,9600,19200,38400,57600,115200,250000]
-#define BAUDRATE 115200
+#define BAUDRATE 250000
 
 // Enable the Bluetooth serial interface on AT90USB devices
 //#define BLUETOOTH
@@ -70,13 +70,12 @@
 // 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_ULTIMAKER
-  //#define MOTHERBOARD BOARD_RAMPS_14_EEB
+  #define MOTHERBOARD BOARD_RAMPS_13_EFB
 #endif
 
 // Optional custom name for your RepStrap or other custom machine
 // Displayed in the LCD "Ready" message
-#define CUSTOM_MACHINE_NAME "I3 Pro B"
+//#define CUSTOM_MACHINE_NAME "3D Printer"
 
 // Define this to set a unique identifier for this printer, (Used by some programs to differentiate between machines)
 // You can use an online service to generate a random UUID. (eg [www.uuidgenerator.net])
@@ -146,11 +145,11 @@
 //#define DUMMY_THERMISTOR_998_VALUE 25
 //#define DUMMY_THERMISTOR_999_VALUE 100
 // :{ '0': "Not used", '4': "10k !! do not use for a hotend. Bad resolution at high temp. !!", '1': "100k / 4.7k - EPCOS", '51': "100k / 1k - EPCOS", '6': "100k / 4.7k EPCOS - Not as accurate as Table 1", '5': "100K / 4.7k - ATC Semitec 104GT-2 (Used in ParCan & J-Head)", '7': "100k / 4.7k Honeywell 135-104LAG-J01", '71': "100k / 4.7k Honeywell 135-104LAF-J01", '8': "100k / 4.7k 0603 SMD Vishay NTCS0603E3104FXT", '9': "100k / 4.7k GE Sensing AL03006-58.2K-97-G1", '10': "100k / 4.7k RS 198-961", '11': "100k / 4.7k beta 3950 1%", '12': "100k / 4.7k 0603 SMD Vishay NTCS0603E3104FXT (calibrated for Makibox hot bed)", '13': "100k Hisens 3950  1% up to 300°C for hotend 'Simple ONE ' & hotend 'All In ONE'", '60': "100k Maker's Tool Works Kapton Bed Thermistor beta=3950", '55': "100k / 1k - ATC Semitec 104GT-2 (Used in ParCan & J-Head)", '2': "200k / 4.7k - ATC Semitec 204GT-2", '52': "200k / 1k - ATC Semitec 204GT-2", '-2': "Thermocouple + MAX6675 (only for sensor 0)", '-1': "Thermocouple + AD595", '3': "Mendel-parts / 4.7k", '1047': "Pt1000 / 4.7k", '1010': "Pt1000 / 1k (non standard)", '20': "PT100 (Ultimainboard V2.x)", '147': "Pt100 / 4.7k", '110': "Pt100 / 1k (non-standard)", '998': "Dummy 1", '999': "Dummy 2" }
-#define TEMP_SENSOR_0 11
+#define TEMP_SENSOR_0 1
 #define TEMP_SENSOR_1 0
 #define TEMP_SENSOR_2 0
 #define TEMP_SENSOR_3 0
-#define TEMP_SENSOR_BED 1
+#define TEMP_SENSOR_BED 0
 
 // This makes temp sensor 1 a redundant sensor for sensor 0. If the temperatures difference between these sensors is to high the print will be aborted.
 //#define TEMP_SENSOR_1_AS_REDUNDANT
@@ -210,9 +209,9 @@
 
   // If you are using a pre-configured hotend then you can use one of the value sets by uncommenting it
   // Ultimaker
-  #define  DEFAULT_Kp 14.27
-  #define  DEFAULT_Ki 0.61
-  #define  DEFAULT_Kd 83.82
+  #define  DEFAULT_Kp 22.2
+  #define  DEFAULT_Ki 1.08
+  #define  DEFAULT_Kd 114
 
   // MakerGear
   //#define  DEFAULT_Kp 7.0
@@ -238,7 +237,7 @@
 // If your configuration is significantly different than this and you don't understand the issues involved, you probably
 // shouldn't use bed PID until someone else verifies your hardware works.
 // If this is enabled, find your own PID constants below.
-#define PIDTEMPBED
+//#define PIDTEMPBED
 
 //#define BED_LIMIT_SWITCHING
 
@@ -256,9 +255,9 @@
 
   //120v 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
   //from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10)
-  #define  DEFAULT_bedKp 496.03
-  #define  DEFAULT_bedKi 62.3
-  #define  DEFAULT_bedKd 987.42
+  #define  DEFAULT_bedKp 10.00
+  #define  DEFAULT_bedKi .023
+  #define  DEFAULT_bedKd 305.4
 
   //120v 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
   //from pidautotune
@@ -298,7 +297,7 @@
  */
 
 #define THERMAL_PROTECTION_HOTENDS // Enable thermal protection for all extruders
-//#define THERMAL_PROTECTION_BED     // Enable thermal protection for the heated bed
+#define THERMAL_PROTECTION_BED     // Enable thermal protection for the heated bed
 
 //===========================================================================
 //============================= Mechanical Settings =========================
@@ -376,7 +375,7 @@
 // @section extruder
 
 // For direct drive extruder v9 set to true, for geared extruder set to false.
-#define INVERT_E0_DIR true
+#define INVERT_E0_DIR false
 #define INVERT_E1_DIR false
 #define INVERT_E2_DIR false
 #define INVERT_E3_DIR false
@@ -399,9 +398,9 @@
 #define X_MIN_POS 0
 #define Y_MIN_POS 0
 #define Z_MIN_POS 0
-#define X_MAX_POS 195
-#define Y_MAX_POS 195
-#define Z_MAX_POS 190
+#define X_MAX_POS 200
+#define Y_MAX_POS 200
+#define Z_MAX_POS 200
 
 //===========================================================================
 //========================= Filament Runout Sensor ==========================
@@ -588,16 +587,16 @@
 
 // default settings
 
-#define DEFAULT_AXIS_STEPS_PER_UNIT   {78.74,78.74,2560,211}  // default steps per unit for Ultimaker
-#define DEFAULT_MAX_FEEDRATE          {400, 400, 30, 25}    // (mm/sec)
-#define DEFAULT_MAX_ACCELERATION      {1400,1400,120,80000}    // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for Skeinforge 40+, for older versions raise them a lot.
+#define DEFAULT_AXIS_STEPS_PER_UNIT   {80,80,4000,500}  // default steps per unit for Ultimaker
+#define DEFAULT_MAX_FEEDRATE          {300, 300, 5, 25}    // (mm/sec)
+#define DEFAULT_MAX_ACCELERATION      {3000,3000,100,10000}    // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for Skeinforge 40+, for older versions raise them a lot.
 
 #define DEFAULT_ACCELERATION          3000    // X, Y, Z and E acceleration in mm/s^2 for printing moves
 #define DEFAULT_RETRACT_ACCELERATION  3000    // E acceleration in mm/s^2 for retracts
 #define DEFAULT_TRAVEL_ACCELERATION   3000    // X, Y, Z acceleration in mm/s^2 for travel (non printing) moves
 
 // The speed change that does not require acceleration (i.e. the software might assume it can be done instantaneously)
-#define DEFAULT_XYJERK                30    // (mm/sec) 
+#define DEFAULT_XYJERK                20.0    // (mm/sec)
 #define DEFAULT_ZJERK                 0.4     // (mm/sec)
 #define DEFAULT_EJERK                 5.0    // (mm/sec)
 
@@ -626,7 +625,7 @@
 // M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
 // M502 - reverts to the default "factory settings".  You still need to store them in EEPROM afterwards if you want to.
 //define this to enable EEPROM support
-#define EEPROM_SETTINGS
+//#define EEPROM_SETTINGS
 
 #if ENABLED(EEPROM_SETTINGS)
   // To disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
@@ -666,7 +665,7 @@
 
 //#define ULTRA_LCD  //general LCD support, also 16x2
 //#define DOGLCD  // Support for SPI LCD 128x64 (Controller ST7565R graphic Display Family)
-#define SDSUPPORT // Enable SD Card Support in Hardware Console
+//#define SDSUPPORT // Enable SD Card Support in Hardware Console
 // Changed behaviour! If you need SDSUPPORT uncomment it!
 //#define SDSLOW // Use slower SD transfer mode (not normally needed - uncomment if you're getting volume init error)
 //#define SDEXTRASLOW // Use even slower SD transfer mode (not normally needed - uncomment if you're getting volume init error)
@@ -681,7 +680,7 @@
                                                  // 0 to disable buzzer feedback. Test with M300 S P
 // PanelOne from T3P3 (via RAMPS 1.4 AUX2/AUX3)
 // [reprap.org]
-#define PANEL_ONE
+//#define PANEL_ONE
 
 // The MaKr3d Makr-Panel with graphic controller and SD support
 // [reprap.org]


Re: PRUSA i3 Problems.
February 19, 2016 10:25AM
Thank you for your rapid response.
I will check out the fuse, is it the one marked "15 amp" ? The holder doesn't look burnt out and the fuse looks ok but I need to test it.
I must say the holder looks a bit doubtful under the magnifier.
I'll study the config. file and note the changes you mention.

Thanks again for your help.
Re: PRUSA i3 Problems.
February 19, 2016 03:14PM
Hi hoxsiew,

Fuse seems OK and I have uploaded the firmware but I'm back to square one!
All I get now is just blocks on the screen and the beeper is constantly on.
Would you send me the the whole file so I can do a comparison in case I have inadvertently changed something.
Thanks.
Re: PRUSA i3 Problems.
February 19, 2016 03:21PM
Here it is.
Attachments:
open | download - Configuration.h (40.4 KB)
Re: PRUSA i3 Problems.
February 19, 2016 04:17PM
Thank you.
Re: PRUSA i3 Problems.
February 19, 2016 09:24PM
//#define REPRAP_DISCOUNT_SMART_CONTROLLER . This is usually the line you use for 2004 displays. Enable by removing //.
Re: PRUSA i3 Problems.
February 20, 2016 06:12AM
Hi Putzer

Have already tried that and it doesn't work as well as the setup from hoxsiew.
Thanks for your help.
Re: PRUSA i3 Problems.
February 20, 2016 06:50AM
Have reinstalled the firmware as per your copy of configuration.h. (hoxsiew)
There are a lot more options on the controller with this config. but:-

Still not auto homing.
Z axis only moving one way - Up - even when controlled from "Move axis" on the controller.

Extruder not active. (will check if there is power to it and if the motor works)

Heatbed. I think this may be faulty as it reads a very low resistance of 0.2 ohms, as near as I can measure.
( When I try to heat the bed, the led above the bed outlet flashes rapidly>)
Hotbed thermister measures 55k ohms at room temp.

Is the printer supposed to know exactly where each axis is positioned when first switched on?
Mine just shows blank every time.

Any suggestions would be greatly appreciated. Thanks.
Re: PRUSA i3 Problems.
February 20, 2016 01:12PM
0.2Ω is way to little. Something is wrong with the bed. I'm surprised that didn't blow the fuse. That's more like a short circuit. I wouldn't activate it until you get this figured out. Hotbed thermistor is apparently the same as mine. I tried to build a custom table for it, but ended up just replacing it with a 3950 and using table 1 (#define TEMP_SENSOR_BED 1).

The Z axis (or any axis) only going one direction is indicative of endstop problem. In my case, I had them plugged int the MAX plugs instead of MIN. The endstop switches are normally closed (NC) and go open when they are hit. if there is a bad connection or none at all (socket has nothing plugged in) it reads that as endstop hit and won't ever try to go the direction of the endstop, but will go the other way.

As far as extruder, it won't move at all until the hotend thermistor reads heat (there's a setting for the min temperature somewhere).

The blank positions might also be endstop related. Here is how mine are connected. Black is Z, blue is Y, and red is X:



I also had too shim my Z-axis out a bit with washers to be able to hit the rod reliably:


Re: PRUSA i3 Problems.
February 20, 2016 04:01PM
Many thanks for your useful information.
Yes I find I do have the endstops in the wrong sockets. Thank you.

I think I will have to contact them about the bed and I probably have a thermistor in my electronics assortment!

I noticed that the Z axis endstop position was a bit out of line.

Incidentally do you have a contact for " printchainstore" London office, Where I had my machine from, or do I contact them through Ebay?

Thanks again for your help.
Re: PRUSA i3 Problems.
February 20, 2016 07:06PM
I contacted them through ebay directly. Whomever it was that I got was not a native English speaker so it was tough to communicate, but he was pleasant and keenly interested in resolving my problems.
Re: PRUSA i3 Problems.
February 20, 2016 08:03PM
Thank you.
I'll try through Ebay.
Re: PRUSA i3 Problems.
March 05, 2016 11:16AM
Hi clockman10, did you make any progress with the hotbed, curious as I have also purchased one of these printers.

My issues started as soon as I opened the box and started checking the parts only to find 2 left sides, and a broken sheet of glass, so am currently awaiting delivery of the right side so I can actually start building. I'll no doubt be referring back here as hoxsiew has provided some very usefull information which I may also need.
Sorry, only registered users may post in this forum.

Click here to login