Page 1 of 1

Digipot Math

Posted: Mon May 06, 2013 9:57 pm
by foshon
(RAMBO 135 = ~0.75A, 185 = ~1A)

Is there a calculation to fing what the setting should be for a specific amperage? It appears to close to 1.85 per ten ma but not quite. I've been awake to long I think.

Re: Digipot Math

Posted: Mon May 06, 2013 10:30 pm
by Broose
According to http://reprap.org/wiki/Rambo, if you are trying to figure the particular digipot value for a given rated motor current, then since VRef = Motor current * .8,

digipot value = ((motor current *.8)/1.66)*255

so for example: 1 amp/phase ((1*.8)/1.66)*255=123 the digipot value is 123

It looks like the chip limits current to 2A and has thermal protection circuitry that shuts it off at 165C

Disclaimer: I don't know if the values changed at all for the 1.1 Rambo when they updated the Allegro driver chip with the 16 microsteps

Re: Digipot Math

Posted: Mon May 06, 2013 11:06 pm
by cambo3d
so which is correct, whats in parenthesis or the calculated value... seems like these values should be the same.? so one is wrong? why would they use 185 = 1A, if 123 is 1amp?

Re: Digipot Math

Posted: Tue May 07, 2013 11:44 am
by Polygonhell
cambo3d wrote:so which is correct, whats in parenthesis or the calculated value... seems like these values should be the same.? so one is wrong? why would they use 185 = 1A, if 123 is 1amp?


I believe it depends on which version of the RAMBO board you have 1.0 uses a different range than 1.1.
The drivers have thermal cutoff in practice you'll hit that long before you get to the maximum rated current.
As far as I can see the Digipot circuit just drops some portion of VDD over an inline resistor, 3.3KOhms for 1.1 and 4.99KOhms for 1.0, as far as I can see there isn't enough info in the datasheet to determine what the actual voltage going into the chip will be, I think you'd have to measure it.
But the different resistor values result in different ranges on the two boards.

Re: Digipot Math

Posted: Tue May 07, 2013 12:05 pm
by Eaglezsoar
Polygonhell wrote:
cambo3d wrote:so which is correct, whats in parenthesis or the calculated value... seems like these values should be the same.? so one is wrong? why would they use 185 = 1A, if 123 is 1amp?


I believe it depends on which version of the RAMBO board you have 1.0 uses a different range than 1.1.
The drivers have thermal cutoff in practice you'll hit that long before you get to the maximum rated current.
As far as I can see the Digipot circuit just drops some portion of VDD over an inline resistor, 3.3KOhms for 1.1 and 4.99KOhms for 1.0, as far as I can see there isn't enough info in the datasheet to determine what the actual voltage going into the chip will be, I think you'd have to measure it.
But the different resistor values result in different ranges on the two boards.


I'm glad you brought this up. I read somewhere about soldering a 10K resistor over the 4.99 (R30) on the older cards. Do you know anyone who has done this and is it something we should do to the older cards?

Re: Digipot Math

Posted: Tue May 07, 2013 12:31 pm
by Polygonhell
Eaglezsoar wrote:I'm glad you brought this up. I read somewhere about soldering a 10K resistor over the 4.99 (R30) on the older cards. Do you know anyone who has done this and is it something we should do to the older cards?


It would get you in the same range as the newer cards in that 5K and 10K resistors in parallel are ~3.3K, but unless you have an issue with the exiting range of values I don't see any reason to do it.

Re: Digipot Math

Posted: Tue Dec 19, 2017 4:40 pm
by brianmichalk
I'm trying to limit the torque of my extruder. I've been playing with M907 and M908. Throwing incantations at the wall, trying for 10% of full power, but getting anything other than standard behavior would help me zero in. I haven't had any luck knowing that any of the following are changing anything/

M907 E10
M907 E.1
M907 X100 Y100 Z100 E10
M907 Z100 E10
M908 P0 100 ; also tried other values
M908 P3 100

And This from pins.h, should have pin 0 as the extruder pin, right? Or is it at the position in the array?
// ### RAMBo specific pins ###
#else
#define ORIG_X_MAX_PIN 24
#define ORIG_Y_MAX_PIN 23
#define ORIG_Z_MAX_PIN 30
#define DIGIPOTSS_PIN 38
#define DIGIPOT_CHANNELS {4,5,3,0,1} // X Y Z E0 E1 digipot channels to stepper driver mapping
#define ORIG_PS_ON_PIN -1
#define PS_ON_PIN -1
#define ORIG_SDCARDDETECT 81
#define STEPPER_CURRENT_CONTROL CURRENT_CONTROL_DIGIPOT
#endif //RAMBo/MiniRambo option

Re: Digipot Math

Posted: Tue Dec 19, 2017 6:39 pm
by Mac The Knife
Why would you want to limit your torque? Reduced torque would cause increased skipping steps.

Re: Digipot Math

Posted: Tue Dec 19, 2017 9:03 pm
by brianmichalk
I'm upgrading from an EZStruder to a BondTech extruder. There seems to be a bug in slicer or elsewhere where the first layer nozzle offsets are not consistent. I've read many posts about it, but no definitive answer. I have the same problem, which in my case doesn't really affect my parts quality that much, but will cause the EZStruder to skip steps. I've wedged the EZStruder to put a lot of pinch on the filament, because I don't want a damaged filament, or gummed up hob wheel. I'd rather have it skip than 1)eat filament, 2)gum up the hob gear, 3)push out the bowden tube.

I'm running my printer for my business, and trying to get the most performance out of it, and for me, that's running at the highest print speed possible without the struder skipping steps. This is at the highest nozzle temperature possible without coking up the inside of the nozzle. This means that the first layer is at risk of the bed plate obstructing the nozzle, and the struder pushing out the bowden tube, or eating through the filament.

That's why I want to limit torque on the extruder. A mechanical clutch would be a nice alternative.

Re: Digipot Math

Posted: Wed Dec 20, 2017 5:23 am
by dc42
Mac The Knife wrote:Why would you want to limit your torque? Reduced torque would cause increased skipping steps.

When the nozzle becomes temporarily obstructed - for example due to a blob or curl-up in the print - then it's better for the extruder to skip steps than to grind the filament down. That way, when the obstruction is removed, extrusion will continue.

A downside is that the reduced torque will reduce the available acceleration if the motor is has a high rotor inertia and the gearing is high. So if the torque is very much higher than needed, then instead of reducing current a lot it may be better to use a shorter motor (with less rotor inertia) or reduce the gear ratio.