Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
August 31, 2016 07:28AM
Quote
av8r1
This isn't a particularly good place to put this, but I'll put it here anyway: the firmware makes me nervous.

Not that I think Marlin is out to get me or anything, it's just that I find it a little incomprehensible. What gets me is I'll download the firmware from Github and it will NEVER compile without throwing some cryptic error. No two versions are exactly alike, and if something goes wrong, Google isn't forthcoming. Same thing with my Prusa. I'm using Folger's stock firmware because I'm not very good at finding anything else that will actually compile. I don't know how to do things like enable the EEPROM. My PID is hilariously bad, and i'm not exactly sure how to fix it.

It doesn't help at all when you read things like "uncomment the line //#define FOOBAR 17" and that line isn't anywhere in the code.

This won't help you unless you upgrade your electronics - but having to compile firmware to customise it to your machine really belongs in the past, when the only people who built 3D printers were techies. Firmwares for modern electronics such as Duet and Smoothieboard don't need to be compiled to customize them for your machine. You flash the electronics with a standard binary, and make the customisations by editing a configuration file on the SD card. For the Duet you can now generate the config file using a web application, and you can upload it to your SD card over the printer's web interface.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
August 31, 2016 07:52AM
I would have to agree that upgrading the electronics was one of the best upgrades I have done. Configuration changes are extremely easy. Autolevel and grid compensation works great, to the point I removed my bed adjustment springs and made it rigid mount again.

If you are sticking with the Ramps setup I would suggest Repetier over Marlin myself.
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 04, 2016 01:36AM
Quote
docpayce
Steel belts: No, didn't try. I read something about them being a bit to stiff for 20 tooth pulleys? Dunno... Looking forward for your results!

I use this RAMPS mount: [www.thingiverse.com]
(without those stabilizing "wings" - totally fine without those)
And this to hold the bed in place: [www.thingiverse.com]
(printed in ABS for obvious reasons, all leveling done via software)

Yeah, the acrylic spool holder was the very first thing to A ) break and B ) got replaced. smiling smiley

Btw: I am jealous... makerspace laser... maaaaaan... smiling smiley

That RAMPS mount is a waste of plastic. The holes don't line up with the board. I wonder how much time, effort and material has been wasted in the maker community because the Italians decided to make the holes in an Arduino assymetrical?
I'll do it myself.

I'm sticking with Arduino/RAMPS for one reason: I have one. Also, the prices for the 32 bit boards are beyond my budget. I'm actually going to be able to build this printer for less than a DUET board costs. Maybe someday. Right now, I've got a perfectly good RAMPS stack right in front of me, and I might as well put some wear and tear through it.
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 05, 2016 08:05PM
Quote
av8r1
That RAMPS mount is a waste of plastic. The holes don't line up with the board. I wonder how much time, effort and material has been wasted in the maker community because the Italians decided to make the holes in an Arduino assymetrical?

That explains... OK... Wow...

The acrylic definitely has to go. I think it might flex a little when the head accelerates.

So, next up... Drilling granite... Because the aluminum heater/build plate isn't exactly flat (it's out as much as .4mm), but the granite tile I cut up for a build plate is flat to within .051mm and it requires absolutely no surface prep beyond a wipe with alcohol for PETG and PLA...
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 06, 2016 06:05AM
Sorry to say, but the RAMPS mount I linked actually does fit my RAMPS perfectly. Dunno what went wrong with your print...
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 06, 2016 02:03PM
Quote
UncleSas
So, next up... Drilling granite... Because the aluminum heater/build plate isn't exactly flat (it's out as much as .4mm), but the granite tile I cut up for a build plate is flat to within .051mm and it requires absolutely no surface prep beyond a wipe with alcohol for PETG and PLA...
Granite, interesting! How thick is the plate and how well do you think that'll work for transferring heat and printing ABS?
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 06, 2016 05:43PM
So what the hell is up with the auto level "feature?" It doesn't do a damn thing! Call G29, it goes through a big song and dance moving the head around, but it doesn't actually compensate for anything, the print comes out as if it hasn't adjusted for anything. Lots of people seem to have this problem, but no solutions.

I'm running the firmware I got from Folger. I found some other Kossel firmware, but when you run a G29 the printer tries to rip itself apart. I just don't know where to get good firmware, but I'm never getting ANYTHING from Github ever again.
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 06, 2016 06:11PM
Quote
meq123
Quote
UncleSas
So, next up... Drilling granite... Because the aluminum heater/build plate isn't exactly flat (it's out as much as .4mm), but the granite tile I cut up for a build plate is flat to within .051mm and it requires absolutely no surface prep beyond a wipe with alcohol for PETG and PLA...
Granite, interesting! How thick is the plate and how well do you think that'll work for transferring heat and printing ABS?

It takes a long time to get hot. Once it's hot, it stays hot, and the temp is stable. I heat the bed to 80C for PETG, and 50C for PLA. It takes about 10 minutes for it to heat up to temp for PETG, and about 6 to get up to temp for PLA using the heater supplied with the kit.

Right now, I'm just using a hexagon shaped piece I cut from a polished granite tile I bought from Home Depot set on the stock heater plate. It's 1cm thick, and dead flat, as I mentioned. I have a tile saw on hand, and cutting the tile was pretty straightforward. I have not found circular or hexagonal polished granite tiles in a size that would be ideal for this application, so I had to cut my own. I was looking for a 5mm tile, which is apparently standard in Europe, but that's a nonstarter here in the states. On the other hand, I can't vouch for the flatness of the 5mm tile.

At 80C, PETG is STUCK to that plate, and it won't come off until the plate cools. When the plate cools to room temperature, it's just not stuck at all. At 70C, the PETG isn't that strongly adhered to the build plate, and it can curl. At 80C, not so much. grinning smiley I haven't done a big print with PLA, so I can't speak to how well it stays flat on granite, but it stuck really well at 50C for a couple small prints.

I think it will be fine for ABS, which prints in the same temp range as PETG, but I'm not planning to print ABS because I found PETG. smiling smiley
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 06, 2016 06:13PM
A well built delta printer can benefit from auto calibration, but does not need auto level. Auto level is for compensating for build errors that you can't calibrate out, or for beds that are not flat.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 06, 2016 07:18PM
dc42, what in your mind is the difference between "auto calibration" and "auto level?"

I've got the stock inductive sensor, and the offset is 31mm.

When the machine is doing the bed probe routine, in the bottom right corner (quadrant 4, +x -y) the nozzle actually taps the bed surface, so I wonder if it's just that the sensor is crap.
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 07, 2016 05:19AM
Calibration of a delta printer means getting the three endstop switches at exactly the same virtual height (which is done by making firmware adjustments), getting the diagonal rod length set correctly in firmware (the easy bit, because you should know how long the rods are, measured bearing-to-bearing), getting the delta radius set correctly in firmware, and setting the tower position corrections correctly in firmware (unless you are lucky enough that your towers are perfectly at the corners of an equilateral triangle and don't lean).

Some firmwares support an auto delta calibration feature, which probes the bed in several places and works out the firmware adjustments. Usually there are six: three endstop corrections, delta radius, and two tower position corrections. For those using other firmwares, I provide a calculator at [escher3d.com].

Auto bed compensation (often incorrectly called auto level) was developed for Cartesian printers. Its primary function is to compensate for the bed not being perfectly leveled with respect to the directions of X and Y movement, and for the bed rotating about the Y axis as it moves along it. Bed compensation that probes more than 4 points can also correct for non-flat beds and for sagging of the X axis under the weight of the print head. It could be useful on delta printers with large beds, but only to compensate for a non-flat bed, or perhaps reduce residual height errors after they have been correctly calibrated.

Edited 1 time(s). Last edit at 09/07/2016 05:20AM by dc42.



Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 07, 2016 10:56AM
You know what? I slapped together a Folger Kossel, input the length of my diagonal rods, and it printed a couple decent parts. If I can get it running true of the bed, I think I'm in fine shape.
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 07, 2016 11:01AM
I managed to get my Kossel printing pretty well. Just have an issue with the bed not being level. It seems that one side is lower than the other, so eventually I'm going to added glass on top, but I need to countersink the screw holes and get new screws as well.


Owner of a QUBD Two Up
And
Folger Kossel 2020
And
Tevo Tarantula
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 12, 2016 02:59PM
Quote
docpayce
4) Still thinking about meq123's design to raise the hotend. I do think this would lessen some problems.

OK, I'm now up to proof of concept stage smiling smiley

The vertical supports are epoxied into the base and then 3mm rods epoxied into the rod tops to allow the top plate to be removable. The bottom of the E3v6 heater block is level with the bottom of the effector plate, leaving just the nozzle protruding. Should have it all back together by the weekend...



Edited 1 time(s). Last edit at 09/12/2016 03:00PM by meq123.
Attachments:
open | download - Effector.jpg (133.3 KB)
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 16, 2016 12:22PM
Quote
meq123
Quote
docpayce
4) Still thinking about meq123's design to raise the hotend. I do think this would lessen some problems.

OK, I'm now up to proof of concept stage smiling smiley

The vertical supports are epoxied into the base and then 3mm rods epoxied into the rod tops to allow the top plate to be removable. The bottom of the E3v6 heater block is level with the bottom of the effector plate, leaving just the nozzle protruding. Should have it all back together by the weekend...

Just noticing your magnets... Are the cavities for the balls spherical or conical? I've been able to find magnets with a conical profile to the cavity, but haven't been able to find any with a spherical cavity, which I speculate would yield stronger magnetic attraction between the balls and magnets.

If yours are spherical, can you give a pointer to your source?

Thanks!

Edited 2 time(s). Last edit at 09/16/2016 12:23PM by UncleSas.
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 16, 2016 12:36PM
So I think I'm going to go the magnet route.. I *really* hate cutting carbon fiber though, and was thinking of just getting some threaded steel balls and 6 M4 hardened steel threaded rods. I haven't really seen this done before though.. Does anyone know a reason it wouldn't work?
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 16, 2016 12:41PM
Quote
spiffcow
So I think I'm going to go the magnet route.. I *really* hate cutting carbon fiber though, and was thinking of just getting some threaded steel balls and 6 M4 hardened steel threaded rods. I haven't really seen this done before though.. Does anyone know a reason it wouldn't work?

They would be a lot heavier than carbon fiber rods, so that would have negative effects on the printer potentially. You can buy pre-cut carbon fiber rods though. I don't have any links on hand, but with enough googling, I'm sure you'll find a source.


Owner of a QUBD Two Up
And
Folger Kossel 2020
And
Tevo Tarantula
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
September 16, 2016 02:53PM
Quote
UncleSas
Just noticing your magnets... Are the cavities for the balls spherical or conical? I've been able to find magnets with a conical profile to the cavity, but haven't been able to find any with a spherical cavity, which I speculate would yield stronger magnetic attraction between the balls and magnets.

If yours are spherical, can you give a pointer to your source?

Just conical countersinks from eBay. Still plenty of 'hold' for this purpose, that effector is not coming loose (in normal operation smiling smiley ). Plus, I would think spherical concaves would increase the friction surface, thus being counterproductive.


Quote
spiffcow
So I think I'm going to go the magnet route.. I *really* hate cutting carbon fiber though

I used a Dremel (Black & Decker version) with a cheap diamond-dust circular wheel/blade. Cuts very smoothly with no splintering and very little dust. Similar to:



Edited 1 time(s). Last edit at 09/16/2016 03:04PM by meq123.
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
October 20, 2016 05:35PM
meq123, how did your raised effector turn out? Did you publish it anywhere? I'm just getting around to switching to a magnetic effector, and I'd like to try this out.
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
October 24, 2016 05:07PM
I bought the Rev B kit a couple of weeks ago and here's my experience so far:

Current revision of the manual is solid. I read through a lot of the earlier pages of this thread and it seems like most of the kinks were worked out. I didn't have any difficulty with the physical assembly or wiring. I felt like everything was explained pretty well, though I am definitely glad that I watched several assembly videos and read through the various threads about this particular kit. Though full disclosure, I work as a field service engineer for a biotech company and I do a lot of troubleshooting and repair of laboratory instrumentation so I wasn't exactly new to this sort of work.

The only issues I've had so far was my x-side motor refused to move in the other direction. I started with firmware and worked backwards. I tried every iteration of INV_*_DIR and every motor responded as expected, except the X-side. I tried swapping the cables with a different motor. I swapped the connections for the X and Y motors. Now Y was the one experiencing the issue. Tried plugging in the motor backwards. Still the same issue. Carriage only moves downwards. Finally I took apart the RAMPS and Arduino sandwich (mine came pre assembled with the motor drivers plugged in). Sure enough, there was a glob of solder in between the 2A and 1A pin on the x-motor part of the RAMPS board. That prevented the motor from being able to change direction. I got rid of the extra solder and touched up the connection. But I can't check it yet because in a completely random turn of events, my power supply died.

HOWEVER. I was very impressed with the customer service at Folger Tech. I emailed them about the issues and explained my troubleshooting steps. Two hours later I got an email with a tracking number for a new RAMPS board and PSU.

So a few issues that others expressed here before, but overall it's a great experience so far. I'm learning a whole lot!
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
October 31, 2016 12:05PM
In case anyone is interested, I have posted models and a SCAD file for printed ball arms that seem to work pretty well:
http://www.thingiverse.com/thing:1836466
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
November 01, 2016 04:48PM
I think I may have made a mistake. I picked one of these up used from a friend who picked it up used and never did anything with it. I figured I was pretty tech savvy and could figure it out, but I might have been wrong.

Physically the only issue I could find was a melted hot end/sensor/fan mount. I have ordered a replacement for it.

Is there a comprehensive set up guide that's beginner friendly? I'm following the manual that's on Folger Tech's google drive for the printer and it seems to take a few liberties with my assumed knowledge. I've also opened the KosselRevB.ino arduino file to attempt to send it to the arduino mega, but I don't think it's compiling correctly?

That's about as far as I got before deciding to post-pone my efforts until I get the new part in and have it assembled. I figured I would try to find a good beginners guide on setup and calibration while I waited. I found this thread and I'm not even sure what to look for in the 3000 post 3 year backlog.

Thanks!

Edit:
I found Dustin Corbin's youtube video series on the printer and I think it's very helpful. I was using the wrong version of arduino - that's why it wouldn't compile. Going to set it up as best I can and hopefully get printing Friday! Pretty excited.

Edited 1 time(s). Last edit at 11/02/2016 10:25AM by Brainanator.
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
November 10, 2016 09:15PM
I have a question maybe someone can help me with.... I hope. I have a FT Kossel 2020 and it prints....But when I load a file any file say from Thingiverse
and then i slice it to print in Repetier-Host I have to go under - Object Placement Tab - and tell it to Scale to 1.1 or it will print to small. Question is is there
something I can change in FW where I don't have to do this on every print?


Thanks
Attachments:
open | download - RH.JPG (195.5 KB)
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
November 10, 2016 11:37PM
Quote
iceman62
I have a question maybe someone can help me with.... I hope. I have a FT Kossel 2020 and it prints....But when I load a file any file say from Thingiverse
and then i slice it to print in Repetier-Host I have to go under - Object Placement Tab - and tell it to Scale to 1.1 or it will print to small. Question is is there
something I can change in FW where I don't have to do this on every print?


Thanks

You should be able to adjust the steps/mm in the fw/eeprom for each motor. Not sure how to do it on a delta, but hopefully this will help lead you to the right information.


Owner of a QUBD Two Up
And
Folger Kossel 2020
And
Tevo Tarantula
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
November 11, 2016 02:05PM
Quote
iceman62
I have a question maybe someone can help me with.... I hope. I have a FT Kossel 2020 and it prints....But when I load a file any file say from Thingiverse
and then i slice it to print in Repetier-Host I have to go under - Object Placement Tab - and tell it to Scale to 1.1 or it will print to small. Question is is there
something I can change in FW where I don't have to do this on every print?


Thanks

On a delta all 3 steppers should be the same steps/mm which on the Folgertech should be 80steps/mm. You can verify by marking the carriages and tell it to move 100mm down and measure the actual amount moved. If that matches to correct for size in the x,y plane you need to adjust your DELTA_DIAGONAL_ROD value. If your height is off steps/mm on all three motors is the only thing to change that.
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
November 11, 2016 06:18PM
If I post a copy of my Config.h maybe someone could point out what needs to be changed? smiling smiley
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
November 11, 2016 06:21PM
Quote
iceman62
If I post a copy of my Config.h maybe someone could point out what needs to be changed? smiling smiley

Sure
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
November 11, 2016 06:22PM
Thanks don't mean to be a pain...

Quote

#ifndef CONFIGURATION_H
#define CONFIGURATION_H

// This configuration file contains the basic settings.
// Advanced settings can be found in Configuration_adv.h
// BASIC SETTINGS: select your board type, temperature sensor type, axis scaling, and endstop configuration

// User-specified version info of this build to display in [Pronterface, etc] terminal window during
// 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_VERSION_CONFIG_H __DATE__ " " __TIME__ // build date and time
#define STRING_CONFIG_H_AUTHOR "(FOLGERTECH, Kossel by MAKERFRONT)" // Who made the changes. ("Blomker" only edited the parametric values in the sketch. Author name is maintain as jcrocholl to indicate source of this sketch, and credit to where it is due)

// SERIAL_PORT selects which serial port should be used for communication with the host.
// This allows the connection of wireless adapters (for instance) to non-default port pins.
// Serial port 0 is still used by the Arduino bootloader regardless of this setting.
#define SERIAL_PORT 0

// This determines the communication speed of the printer
#define BAUDRATE 250000
//#define BAUDRATE 115200

//// The following define selects which electronics board you have. Please choose the one that matches your setup
// 10 = Gen7 custom (Alfons3 Version) "https://github.com/Alfons3/Generation_7_Electronics"
// 11 = Gen7 v1.1, v1.2 = 11
// 12 = Gen7 v1.3
// 13 = Gen7 v1.4
// 3  = MEGA/RAMPS up to 1.2 = 3
// 33 = RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Bed)
// 34 = RAMPS 1.3 / 1.4 (Power outputs: Extruder0, Extruder1, Bed)
// 35 = RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Fan)
// 4  = Duemilanove w/ ATMega328P pin assignment
// 5  = Gen6
// 51 = Gen6 deluxe
// 6  = Sanguinololu < 1.2
// 62 = Sanguinololu 1.2 and above
// 63 = Melzi
// 64 = STB V1.1
// 65 = Azteeg X1
// 66 = Melzi with ATmega1284 (MaKr3d version)
// 7  = Ultimaker
// 71 = Ultimaker (Older electronics. Pre 1.5.4. This is rare)
// 77 = 3Drag Controller
// 8  = Teensylu
// 80 = Rumba
// 81 = Printrboard (AT90USB1286)
// 82 = Brainwave (AT90USB646)
// 9  = Gen3+
// 70 = Megatronics
// 701= Megatronics v2.0
// 702= Minitronics v1.0
// 90 = Alpha OMCA board
// 91 = Final OMCA board
// 301 = Rambo
// 21 = Elefu Ra Board (v3)

#ifndef MOTHERBOARD
#define MOTHERBOARD 33
#endif

// Define this to set a custom name for your generic Mendel,
// #define CUSTOM_MENDEL_NAME "This Mendel"

// This defines the number of extruders
#define EXTRUDERS 1

//// The following define selects which power supply you have. Please choose the one that matches your setup
// 1 = ATX
// 2 = X-Box 360 203Watts (the blue wire connected to PS_ON and the red wire to VCC)

#define POWER_SUPPLY 1


//===========================================================================
//============================== Delta Settings =============================
//===========================================================================
// Enable DELTA kinematics
#define DELTA

// Make delta curves from many straight lines (linear interpolation).
// This is a trade-off between visible corners (not enough segments)
// and processor overload (too many expensive sqrt calls).
#define DELTA_SEGMENTS_PER_SECOND 200

// Center-to-center distance of the holes in the diagonal push rods.
#define DELTA_DIAGONAL_ROD 230 // mm (215)

// Horizontal offset from middle of printer to smooth rod center.
#define DELTA_SMOOTH_ROD_OFFSET 178 // mm (137.0)

// Horizontal offset of the universal joints on the end effector.
#define DELTA_EFFECTOR_OFFSET 25 // mm (19.9)

// Horizontal offset of the universal joints on the carriages.
#define DELTA_CARRIAGE_OFFSET 12.0 // mm (19.5)

// Effective horizontal distance bridged by diagonal push rods.
#define DELTA_RADIUS (DELTA_SMOOTH_ROD_OFFSET-DELTA_EFFECTOR_OFFSET-DELTA_CARRIAGE_OFFSET)

// Effective X/Y positions of the three vertical towers.
#define SIN_60 0.8660254037844386
#define COS_60 0.5
#define DELTA_TOWER1_X -SIN_60*DELTA_RADIUS // front left tower
#define DELTA_TOWER1_Y -COS_60*DELTA_RADIUS
#define DELTA_TOWER2_X SIN_60*DELTA_RADIUS // front right tower
#define DELTA_TOWER2_Y -COS_60*DELTA_RADIUS
#define DELTA_TOWER3_X 0.0 // back middle tower
#define DELTA_TOWER3_Y DELTA_RADIUS

// Diagonal rod squared
#define DELTA_DIAGONAL_ROD_2 pow(DELTA_DIAGONAL_ROD,2)

//===========================================================================
//=============================Thermal Settings  ============================
//===========================================================================
//
//--NORMAL IS 4.7kohm PULLUP!-- 1kohm pullup can be used on hotend sensor, using correct resistor and table
//
//// Temperature sensor settings:
// -2 is thermocouple with MAX6675 (only for sensor 0)
// -1 is thermocouple with AD595
// 0 is not used
// 1 is 100k thermistor - best choice for EPCOS 100k (4.7k pullup)
// 2 is 200k thermistor - ATC Semitec 204GT-2 (4.7k pullup)
// 3 is mendel-parts thermistor (4.7k pullup)
// 4 is 10k thermistor !! do not use it for a hotend. It gives bad resolution at high temp. !!
// 5 is 100K thermistor - ATC Semitec 104GT-2 (Used in ParCan) (4.7k pullup)
// 6 is 100k EPCOS - Not as accurate as table 1 (created using a fluke thermocouple) (4.7k pullup)
// 7 is 100k Honeywell thermistor 135-104LAG-J01 (4.7k pullup)
// 71 is 100k Honeywell thermistor 135-104LAF-J01 (4.7k pullup)
// 8 is 100k 0603 SMD Vishay NTCS0603E3104FXT (4.7k pullup)
// 9 is 100k GE Sensing AL03006-58.2K-97-G1 (4.7k pullup)
// 10 is 100k RS thermistor 198-961 (4.7k pullup)
// 60 is 100k Maker's Tool Works Kapton Bed Thermister
//
//    1k ohm pullup tables - This is not normal, you would have to have changed out your 4.7k for 1k
//                          (but gives greater accuracy and more stable PID)
// 51 is 100k thermistor - EPCOS (1k pullup)
// 52 is 200k thermistor - ATC Semitec 204GT-2 (1k pullup)
// 55 is 100k thermistor - ATC Semitec 104GT-2 (Used in ParCan) (1k pullup)

#define TEMP_SENSOR_0 1
#define TEMP_SENSOR_1 0
#define TEMP_SENSOR_2 0
#define TEMP_SENSOR_BED 1

// 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
#define MAX_REDUNDANT_TEMP_SENSOR_DIFF 10

// Actual temperature must be close to target for this long before M109 returns success
#define TEMP_RESIDENCY_TIME 10  // (seconds)
#define TEMP_HYSTERESIS 3       // (degC) range of +/- temperatures considered "close" to the target one
#define TEMP_WINDOW     1       // (degC) Window around target to start the residency timer x degC early.

// The minimal temperature defines the temperature below which the heater will not be enabled It is used
// to check that the wiring to the thermistor is not broken.
// Otherwise this would lead to the heater being powered on all the time.
#define HEATER_0_MINTEMP 5
#define HEATER_1_MINTEMP 5
#define HEATER_2_MINTEMP 5
#define BED_MINTEMP 5

// When temperature exceeds max temp, your heater will be switched off.
// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure!
// You should use MINTEMP for thermistor short/failure protection.
#define HEATER_0_MAXTEMP 300
#define HEATER_1_MAXTEMP 260
#define HEATER_2_MAXTEMP 260
#define BED_MAXTEMP 150

// If your bed has low resistance e.g. .6 ohm and throws the fuse you can duty cycle it to reduce the
// average current. The value should be an integer and the heat bed will be turned on for 1 interval of
// HEATER_BED_DUTY_CYCLE_DIVIDER intervals.
//#define HEATER_BED_DUTY_CYCLE_DIVIDER 4

// PID settings:
// Comment the following line to disable PID and enable bang-bang.
#define PIDTEMP
#define BANG_MAX 255 // limits current to nozzle while in bang-bang mode; 255=full current
#define PID_MAX 255 // limits current to nozzle while PID is active (see PID_FUNCTIONAL_RANGE below); 255=full current
#ifdef PIDTEMP
  //#define PID_DEBUG // Sends debug data to the serial port.
  //#define PID_OPENLOOP 1 // Puts PID in open loop. M104/M140 sets the output power from 0 to PID_MAX
  #define PID_FUNCTIONAL_RANGE 10 // If the temperature difference between the target temperature and the actual temperature
                                  // is more then PID_FUNCTIONAL_RANGE then the PID will be shut off and the heater will be set to min/max.
  #define PID_INTEGRAL_DRIVE_MAX 255  //limit for the integral term
  #define K1 0.95 //smoothing factor within the PID
  #define PID_dT ((16.0 * 8.0)/(F_CPU / 64.0 / 256.0)) //sampling period of the temperature routine

// If you are using a preconfigured hotend then you can use one of the value sets by uncommenting it
// Ultimaker
    #define  DEFAULT_Kp 22.2
    #define  DEFAULT_Ki 1.08
    #define  DEFAULT_Kd 114

// Makergear
//    #define  DEFAULT_Kp 7.0
//    #define  DEFAULT_Ki 0.1
//    #define  DEFAULT_Kd 12

// Mendel Parts V9 on 12V
//    #define  DEFAULT_Kp 63.0
//    #define  DEFAULT_Ki 2.25
//    #define  DEFAULT_Kd 440
#endif // PIDTEMP

// Bed Temperature Control
// Select PID or bang-bang with PIDTEMPBED. If bang-bang, BED_LIMIT_SWITCHING will enable hysteresis
//
// Uncomment this to enable PID on the bed. It uses the same frequency PWM as the extruder.
// If your PID_dT above is the default, and correct for your hardware/configuration, that means 7.689Hz,
// which is fine for driving a square wave into a resistive load and does not significantly impact you FET heating.
// This also works fine on a Fotek SSR-10DA Solid State Relay into a 250W heater.
// 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 BED_LIMIT_SWITCHING

// This sets the max power delivered to the bed, and replaces the HEATER_BED_DUTY_CYCLE_DIVIDER option.
// all forms of bed control obey this (PID, bang-bang, bang-bang with hysteresis)
// setting this to anything other than 255 enables a form of PWM to the bed just like HEATER_BED_DUTY_CYCLE_DIVIDER did,
// so you shouldn't use it unless you are OK with PWM on your bed.  (see the comment on enabling PIDTEMPBED)
#define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current

#ifdef PIDTEMPBED
//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 10.00
    #define  DEFAULT_bedKi .023
    #define  DEFAULT_bedKd 305.4

//120v 250W silicone heater into 4mm borosilicate (MendelMax 1.5+)
//from pidautotune
//    #define  DEFAULT_bedKp 97.1
//    #define  DEFAULT_bedKi 1.41
//    #define  DEFAULT_bedKd 1675.16

// FIND YOUR OWN: "M303 E-1 C8 S90" to run autotune on the bed at 90 degreesC for 8 cycles.
#endif // PIDTEMPBED



//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit
//can be software-disabled for whatever purposes by
#define PREVENT_DANGEROUS_EXTRUDE
//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately.
#define PREVENT_LENGTHY_EXTRUDE

#define EXTRUDE_MINTEMP 170
#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances.

//===========================================================================
//=============================Mechanical Settings===========================
//===========================================================================

// Uncomment the following line to enable CoreXY kinematics
// #define COREXY

// coarse Endstop Settings
#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors

#ifndef ENDSTOPPULLUPS
  // fine Enstop settings: Individual Pullups. will be ignored if ENDSTOPPULLUPS is defined
  // #define ENDSTOPPULLUP_XMAX
  // #define ENDSTOPPULLUP_YMAX
  // #define ENDSTOPPULLUP_ZMAX
  // #define ENDSTOPPULLUP_XMIN
  // #define ENDSTOPPULLUP_YMIN
  // #define ENDSTOPPULLUP_ZMIN
#endif

#ifdef ENDSTOPPULLUPS
  #define ENDSTOPPULLUP_XMAX
  #define ENDSTOPPULLUP_YMAX
  #define ENDSTOPPULLUP_ZMAX
  #define ENDSTOPPULLUP_XMIN
  #define ENDSTOPPULLUP_YMIN
  #define ENDSTOPPULLUP_ZMIN
#endif

// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool X_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Y_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop.
const bool X_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Y_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop.
//#define DISABLE_MAX_ENDSTOPS
//#define DISABLE_MIN_ENDSTOPS

// Disable max endstops for compatibility with endstop checking routine
#if defined(COREXY) && !defined(DISABLE_MAX_ENDSTOPS)
  #define DISABLE_MAX_ENDSTOPS
#endif

// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
#define X_ENABLE_ON 0
#define Y_ENABLE_ON 0
#define Z_ENABLE_ON 0
#define E_ENABLE_ON 0 // For all extruders

// Disables axis when it's not being used.
#define DISABLE_X false
#define DISABLE_Y false
#define DISABLE_Z false
#define DISABLE_E false // For all extruders

#define INVERT_X_DIR false // for Mendel set to false, for Orca set to true
#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false
#define INVERT_Z_DIR false // for Mendel set to false, for Orca set to true
#define INVERT_E0_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E1_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E2_DIR true // for direct drive extruder v9 set to true, for geared extruder set to false

// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
#define X_HOME_DIR 1
#define Y_HOME_DIR 1
#define Z_HOME_DIR 1

#define min_software_endstops true // If true, axis won't move to coordinates less than HOME_POS.
#define max_software_endstops true // If true, axis won't move to coordinates greater than the defined lengths below.
// Travel limits after homing
#define X_MAX_POS 76
#define X_MIN_POS -76
#define Y_MAX_POS 76
#define Y_MIN_POS -76
#define Z_MAX_POS MANUAL_Z_HOME_POS
#define Z_MIN_POS 0

#define X_MAX_LENGTH (X_MAX_POS - X_MIN_POS)
#define Y_MAX_LENGTH (Y_MAX_POS - Y_MIN_POS)
#define Z_MAX_LENGTH (Z_MAX_POS - Z_MIN_POS)

// The position of the homing switches
#define MANUAL_HOME_POSITIONS  // If defined, MANUAL_*_HOME_POS below will be used
#define BED_CENTER_AT_0_0  // If defined, the center of the bed is at (X=0, Y=0)

//Manual homing switch locations:
// For deltabots this means top and center of the cartesian print volume.
#define MANUAL_X_HOME_POS 0
#define MANUAL_Y_HOME_POS 0
#define MANUAL_Z_HOME_POS 254.5  // For delta: Distance between nozzle and print surface after homing.

#define AUTOLEVEL_GRID 20  // 26 Distance between autolevel Z probing points, should be less than print surface radius/3.

//// MOVEMENT SETTINGS
#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E
#define HOMING_FEEDRATE {100*60, 100*60, 100*60, 0}  // set the homing speeds (mm/min)

#define Z_RAISE_BETWEEN_PROBING=3
#define Z_PROBE_OFFSET {0, 12.5, -1.4, 0}  // (0, 14, -6.5, 0) X, Y, Z, E distance between hotend nozzle and deployed bed leveling probe.(0,19,-8,0)

// default settings

#define DEFAULT_AXIS_STEPS_PER_UNIT   {100/2.25, 100/2.25, 100/2.25, 100}
#define DEFAULT_MAX_FEEDRATE          {300, 300, 300, 300}    // (mm/sec)
#define DEFAULT_MAX_ACCELERATION      {1000,1000,1000,1000}    // 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 max acceleration in mm/s^2 for printing moves
#define DEFAULT_RETRACT_ACCELERATION  3000   // X, Y, Z and E max acceleration in mm/s^2 for retracts

// Offset of the extruders (uncomment if using more than one and relying on firmware to position when changing).
// The offset has to be X=0, Y=0 for the extruder 0 hotend (default extruder).
// For the other hotends it is their distance from the extruder 0 hotend.
// #define EXTRUDER_OFFSET_X {0.0, 20.00} // (in mm) for each extruder, offset of the hotend on the X axis
// #define EXTRUDER_OFFSET_Y {0.0, 5.00}  // (in mm) for each extruder, offset of the hotend on the Y axis

// The speed change that does not require acceleration (i.e. the software might assume it can be done instantaneously)
#define DEFAULT_XYJERK                20.0    // (mm/sec)
#define DEFAULT_ZJERK                 20.0    // (mm/sec)
#define DEFAULT_EJERK                 20.0    // (mm/sec)

//===========================================================================
//=============================Additional Features===========================
//===========================================================================

// EEPROM
// the microcontroller can store settings in the EEPROM, e.g. max velocity...
// M500 - stores paramters in EEPROM
// 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
//to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
// please keep turned on if you can.
#define EEPROM_CHITCHAT

// Preheat Constants
#define PLA_PREHEAT_HOTEND_TEMP 205
#define PLA_PREHEAT_HPB_TEMP 50
#define PLA_PREHEAT_FAN_SPEED 255   // Insert Value between 0 and 255

#define ABS_PREHEAT_HOTEND_TEMP 230
#define ABS_PREHEAT_HPB_TEMP 80
#define ABS_PREHEAT_FAN_SPEED 255   // Insert Value between 0 and 255

//LCD and SD support
//#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 SDSLOW // Use slower SD transfer mode (not normally needed - uncomment if you're getting volume init error)

//#define ULTIMAKERCONTROLLER //as available from the ultimaker online store.
//#define ULTIPANEL  //the ultipanel as on thingiverse

// The MaKr3d Makr-Panel with graphic controller and SD support
// [reprap.org]
//#define MAKRPANEL

// The RepRapDiscount Smart Controller (white PCcool smiley
// [reprap.org]
#define REPRAP_DISCOUNT_SMART_CONTROLLER

// The GADGETS3D G3D LCD/SD Controller (blue PCcool smiley
// [reprap.org]
//#define G3D_PANEL

// The RepRapDiscount FULL GRAPHIC Smart Controller (quadratic white PCcool smiley
// [reprap.org]
//
// ==> REMEMBER TO INSTALL U8glib to your ARDUINO library folder: [code.google.com]
#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER

// The RepRapWorld REPRAPWORLD_KEYPAD v1.1
// [reprapworld.com]
//#define REPRAPWORLD_KEYPAD
//#define REPRAPWORLD_KEYPAD_MOVE_STEP 10.0 // how much should be moved when a key is pressed, eg 10.0 means 10mm per click

// The Elefu RA Board Control Panel
// [www.elefu.com]
// REMEMBER TO INSTALL LiquidCrystal_I2C.h in your ARUDINO library folder: [github.com]
//#define RA_CONTROL_PANEL

//automatic expansion
#if defined (MAKRPANEL)
 #define DOGLCD
 #define SDSUPPORT
 #define ULTIPANEL
 #define NEWPANEL
 #define DEFAULT_LCD_CONTRAST 40
#endif

#if defined (REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER)
 #define DOGLCD
 #define U8GLIB_ST7920
 #define REPRAP_DISCOUNT_SMART_CONTROLLER
#endif

#if defined(ULTIMAKERCONTROLLER) || defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL)
 #define ULTIPANEL
 #define NEWPANEL
#endif

#if defined(REPRAPWORLD_KEYPAD)
  #define NEWPANEL
  #define ULTIPANEL
#endif
#if defined(RA_CONTROL_PANEL)
 #define ULTIPANEL
 #define NEWPANEL
 #define LCD_I2C_TYPE_PCA8574
 #define LCD_I2C_ADDRESS 0x27   // I2C Address of the port expander
#endif

//I2C PANELS

//#define LCD_I2C_SAINSMART_YWROBOT
#ifdef LCD_I2C_SAINSMART_YWROBOT
  // This uses the LiquidCrystal_I2C library ( [bitbucket.org] )
  // Make sure it is placed in the Arduino libraries directory.
  #define LCD_I2C_TYPE_PCF8575
  #define LCD_I2C_ADDRESS 0x27   // I2C Address of the port expander
  #define NEWPANEL
  #define ULTIPANEL
#endif

// PANELOLU2 LCD with status LEDs, separate encoder and click inputs
//#define LCD_I2C_PANELOLU2
#ifdef LCD_I2C_PANELOLU2
  // This uses the LiquidTWI2 library v1.2.3 or later ( [github.com] )
  // Make sure the LiquidTWI2 directory is placed in the Arduino or Sketchbook libraries subdirectory.
  // (v1.2.3 no longer requires you to define PANELOLU in the LiquidTWI2.h library header file)
  // Note: The PANELOLU2 encoder click input can either be directly connected to a pin
  // (if BTN_ENC defined to != -1) or read through I2C (when BTN_ENC == -1).
  #define LCD_I2C_TYPE_MCP23017
  #define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander
  #define LCD_USE_I2C_BUZZER //comment out to disable buzzer on LCD
  #define NEWPANEL
  #define ULTIPANEL
#endif

// Panucatt VIKI LCD with status LEDs, integrated click & L/R/U/P buttons, separate encoder inputs
//#define LCD_I2C_VIKI
#ifdef LCD_I2C_VIKI
  // This uses the LiquidTWI2 library v1.2.3 or later ( [github.com] )
  // Make sure the LiquidTWI2 directory is placed in the Arduino or Sketchbook libraries subdirectory.
  // Note: The pause/stop/resume LCD button pin should be connected to the Arduino
  // BTN_ENC pin (or set BTN_ENC to -1 if not used)
  #define LCD_I2C_TYPE_MCP23017
  #define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander
  #define LCD_USE_I2C_BUZZER //comment out to disable buzzer on LCD (requires LiquidTWI2 v1.2.3 or later)
  #define NEWPANEL
  #define ULTIPANEL
#endif

#ifdef ULTIPANEL
//  #define NEWPANEL  //enable this if you have a click-encoder panel
  #define SDSUPPORT
  #define ULTRA_LCD
  #ifdef DOGLCD // Change number of lines to match the DOG graphic display
    #define LCD_WIDTH 20
    #define LCD_HEIGHT 5
  #else
    #define LCD_WIDTH 20
    #define LCD_HEIGHT 4
  #endif
#else //no panel but just lcd
  #ifdef ULTRA_LCD
  #ifdef DOGLCD // Change number of lines to match the 128x64 graphics display
    #define LCD_WIDTH 20
    #define LCD_HEIGHT 5
  #else
    #define LCD_WIDTH 16
    #define LCD_HEIGHT 2
  #endif
  #endif
#endif

// default LCD contrast for dogm-like LCD displays
#ifdef DOGLCD
# ifndef DEFAULT_LCD_CONTRAST
#  define DEFAULT_LCD_CONTRAST 32
# endif
#endif

// Increase the FAN pwm frequency. Removes the PWM noise but increases heating in the FET/Arduino
//#define FAST_PWM_FAN

// Use software PWM to drive the fan, as for the heaters. This uses a very low frequency
// which is not ass annoying as with the hardware PWM. On the other hand, if this frequency
// is too low, you should also increment SOFT_PWM_SCALE.
//#define FAN_SOFT_PWM

// Incrementing this by 1 will double the software PWM frequency,
// affecting heaters, and the fan if FAN_SOFT_PWM is enabled.
// However, control resolution will be halved for each increment;
// at zero value, there are 128 effective control positions.
#define SOFT_PWM_SCALE 0

// M240  Triggers a camera by emulating a Canon RC-1 Remote
// Data from: [www.doc-diy.net]
// #define PHOTOGRAPH_PIN     23

// SF send wrong arc g-codes when using Arc Point as fillet procedure
//#define SF_ARC_FIX

// Support for the BariCUDA Paste Extruder.
//#define BARICUDA

/*********************************************************************[/color]
* R/C SERVO support
* Sponsored by TrinityLabs, Reworked by codexmas
**********************************************************************/

// Number of servos
//
// If you select a configuration below, this will receive a default value and does not need to be set manually
// set it manually if you have more servos than extruders and wish to manually control some
// leaving it undefined or defining as 0 will disable the servo subsystem
// If unsure, leave commented / disabled
//
#define NUM_SERVOS 1 // Servo index starts with 0 for M280 command

// Servo Endstops
//
// This allows for servo actuated endstops, primary usage is for the Z Axis to eliminate calibration or bed height changes.
// Use M206 command to correct for switch height offset to actual nozzle height. Store that setting with M500.
//
//#define SERVO_ENDSTOPS {-1, -1, 0} // Servo index for X, Y, Z. Disable with -1
#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 5,120} // X,Y,Z Axis Extend and Retract angles

#include "Configuration_adv.h"
#include "thermistortables.h"

#endif //__CONFIGURATION_H

Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
November 11, 2016 06:40PM
#define DEFAULT_AXIS_STEPS_PER_UNIT {100/2.25, 100/2.25, 100/2.25, 100}
should be
#define DEFAULT_AXIS_STEPS_PER_UNIT {80, 80, 80, 100}

If you followed their build guide and dimensions I would expect the values below
#define DELTA_DIAGONAL_ROD 230 // mm (215) closer to 240

#define DELTA_SMOOTH_ROD_OFFSET 178 // mm (137.0) closer to 190

#define DELTA_EFFECTOR_OFFSET 25 // mm (19.9) looks correct

#define DELTA_CARRIAGE_OFFSET 12.0 // mm (19.5) should also be 25

#define MANUAL_Z_HOME_POS 254.5 I would expect your build height to be closer to 275

Those are just my 2 cents. I personally prefered using Repetier Firmware on my delta before I upgraded to a Smoothieboard
Re: Folger Tech Kossel Delta 2020 Full 3D Printer Kit w/Auto-Level
November 11, 2016 06:45PM
Thank you I will give this a try. I f I use Reprtier FW would the values be the same ? I did follow their build guide...
Sorry, only registered users may post in this forum.

Click here to login