v2 Stepper Driver Enabled Firmware

74 views
Skip to first unread message

Rick Pollack

unread,
Oct 28, 2010, 3:08:21 PM10/28/10
to MakerGear
Please upload your modifications to the v2 firmware - adding support for the external stepper driver - to this thread and I will test them in the order received.

Thanks,
Rick


John Yang

unread,
Oct 28, 2010, 3:26:08 PM10/28/10
to make...@googlegroups.com
do you want diff files from the base mbi v2.2 firmware, or zip of the
directory or a hex file?

John

Koen Kooi

unread,
Oct 29, 2010, 5:33:08 AM10/29/10
to make...@googlegroups.com
For me a patch + hex would be good enough. Should we setup something on github to track the different versions people will be submitting?

regards,

Koen

Rick Pollack

unread,
Oct 29, 2010, 1:41:32 PM10/29/10
to make...@googlegroups.com
Let's see what gets submitted. I certainly hope that once the code has been modded and working it will be merged into the standard firmware...

Antonio Santos - Brazil

unread,
Oct 29, 2010, 4:41:47 PM10/29/10
to MakerGear - Make Today, Change Tomorrow
Hey Rick!

trying to drop our trusty v1.8? I never had a chance to look into V2
firmware.

lets hope to get a bunch of mod versions!

-Tony

On 29 out, 15:41, Rick Pollack <r...@makergear.com> wrote:
> Let's see what gets submitted. I certainly hope that once the code has been
> modded and working it will be merged into the standard firmware...
>
> On Fri, Oct 29, 2010 at 5:33 AM, Koen Kooi <k...@beagleboard.org> wrote:
> > For me a patch + hex would be good enough. Should we setup something on
> > github to track the different versions people will be submitting?
>
> > regards,
>
> > Koen
>
> > On Thu, Oct 28, 2010 at 9:26 PM, John Yang <lj.johny...@gmail.com> wrote:
>
> >> do you want diff files from the base mbi v2.2 firmware, or zip of the
> >> directory or a hex file?
>
> >> John
>

Jordan Miller

unread,
Oct 29, 2010, 5:14:53 PM10/29/10
to make...@googlegroups.com
if people want to make mods then PLEASE use git to download the source code and make your own branch.

this is the ONLY way we will have a chance to compare mods and merge back into the main trunk. I can help with that so long as you use git to do your branch and commits.

please use git!!!!!!!!!

jordan

Rob Giseburt

unread,
Oct 29, 2010, 11:44:25 PM10/29/10
to make...@googlegroups.com
Wow, the EC is a really busy little guy. I’m working on it, but I want to get it right, and use RPM instead of the PWM setting. I also want it to be clean, so that 5D can be worked in easily later (which will require RepG changes too).

  -Rob
MakerBot Operator
Member of CCCKC Hackerspace
Member of KC Fabricators Google Group

Rick Pollack

unread,
Oct 30, 2010, 12:04:13 AM10/30/10
to make...@googlegroups.com
Yes, RPM, agreed. There is an implementation of 5D for RepG that Erik did I have not tried it yet...

Rick

Rob Giseburt

unread,
Oct 30, 2010, 12:17:07 AM10/30/10
to make...@googlegroups.com
I looked at it, and his statement about the 5D part requiring RepRap firmware seems to be correct. 

It looks like maybe the RepRap firmware parses the gcode itself. RepG parses the gcode for the makerbot firmware, so it'll require adding that to RepG. 

The good news is that it looks like it might only require a few lines of change.

I'm still getting my head around how E codes work. I know they indicate length, but then where does the speed come from? Feed rate, right? Currently the EC firmware doesn't have a need for that.

I believe it's possible that we could just teach RepG to convert the E length to an RPM gcode, tuned using params in machines.xml

That's next, tho. For now, rpm. One part I'm having trouble with is: how to correctly and portable set how many steps in a revolution? EEPROM would be best, but that is a mess and required RepG support. Requiring a recompile of the firmware is unacceptable. Maybe a custom M code? Or, better, RepG already has one that we could use?

I think I'm gonna go with a hybrid approach: hard code a default, use an m code to tune, and later add EEPROM support. 

  -Rob

Koen Kooi

unread,
Oct 30, 2010, 4:09:08 AM10/30/10
to make...@googlegroups.com
On Fri, Oct 29, 2010 at 11:14 PM, Jordan Miller <jrd...@gmail.com> wrote:
if people want to make mods then PLEASE use git to download the source code and make your own branch.

this is the ONLY way we will have a chance to compare mods and merge back into the main trunk. I can help with that so long as you use git to do your branch and commits.

please use git!!!!!!!!!

I agree with that statement, but I also volunteer to "convert" patches to git for people too scared of git for this extruder project. And one of the original CVS authors is sitting next to me right now :)

regards,

Koen

Jordan Miller

unread,
Oct 30, 2010, 9:59:04 AM10/30/10
to make...@googlegroups.com
holy crap thats awesome THANKS Koen!!!

jordan


Rick Pollack

unread,
Nov 2, 2010, 1:13:17 AM11/2/10
to MakerGear
Posting to the correct thread.

---------- Forwarded message ----------
From: Rob Giseburt <gise...@gmail.com>
Date: Tue, Nov 2, 2010 at 12:45 AM
Subject: Re: [MakerGear] Re: heated build platform for mendel
To: make...@googlegroups.com


Damn, damn, I almost have it!

I can hard-code the speed and it works, but the RPM coming from RepG appears to be goofy, and I’m having trouble debugging it.

Here’s my diffs so far (I know it’s not working, but it’s something):




Hopefully tomorrow I can get it to work. I suspect that the:

from_host.read32(2)

On line 130 of Host.cc is where it’s broken. I think maybe read32() is broken, since I don’t see it actually used anywhere in the code except in a test case (!). I think it has endian issues.

To hook it up:
D10 is enable.
Direction is Pin 7 of that quadrature.
Step is Pin  8 of the quatrature.


Pin 7 is the bottom row, next to the right, and Pin 8 is in the top row directly above it.
Bottom right is ground, and top right is 5V.

You should connect ground to your stepper driver somewhere.

Hopefully I’ll get time to fix this tomorrow. If not, maybe someone else will. :)

Enjoy,

  -Rob
MakerBot Operator
Member of CCCKC Hackerspace
Member of KC Fabricators Google Group

On Nov 1, 2010, at 1:13 PM, Rick Pollack wrote:

The boards should be here in a few weeks and they'll be available for $50. This is a trial run so we'll only have a few available.

On Mon, Nov 1, 2010 at 2:02 PM, Ethan Dicks <ethan...@gmail.com> wrote:
On Mon, Nov 1, 2010 at 1:57 PM, Jordan Miller <jrd...@gmail.com> wrote:
> These are really great boards but they would never ship them direct to us from Europe, dunno why. Something with credit card processing issues for us. They eventually told us (after a couple months waiting) that they have a deal with Ultimachine.com so you can buy them direct from Ultimachine here in USA. Also Rick at MakerGear.com is going to try to source them and sell them I think.

Good news!  I saw one in the 3D Printing Village tent at the World
Maker Faire - it looked quite handy.  I'm halfway done with
implementing my own Mendel HPB with Dibond (following the RepRap
wiki), but if I hadn't already cut the board out, I'd seriously
consider one of these.

I'm also going to have to keep my eye out for an inexpensive
laboratory benchtop PSU.  Those tend to be somewhat cost effective for
sources of 12V in amounts over 5-8A when you can find them
surplus/used.

-ethan




failed-attempt-1-rob.txt

Rob Giseburt

unread,
Nov 2, 2010, 1:14:47 AM11/2/10
to make...@googlegroups.com
Oh wow. Sorry guys. I really got too deep in the code. :-)

  -Rob

Koen Kooi

unread,
Nov 2, 2010, 9:18:28 AM11/2/10
to make...@googlegroups.com
I took the liberty to git it into github: http://github.com/koenkooi/G3Firmware/tree/rob-stepper

Rob Giseburt

unread,
Nov 2, 2010, 10:56:41 AM11/2/10
to make...@googlegroups.com
Thank you Koen.

Does anyone know how to debug RepG? I've determined that the bug is
indeed in where it gets the speed from the computer, in line 130 of
Host.cc. If I replace the from_host.read32(2) with 1000000, it
dutifully spins the appropriate direction once per second, if turned
on, and disables the stepper when off.

I'm kinda stuck. I'll try to look more after work tonight.

-Rob

Rob Giseburt

unread,
Nov 2, 2010, 9:16:48 PM11/2/10
to make...@googlegroups.com
I got it! It’s a bug in RepG. I’ll post cleaned up diffs later, as soon as I can!

  -Rob
MakerBot Operator
Member of CCCKC Hackerspace
Member of KC Fabricators Google Group

Rick Pollack

unread,
Nov 3, 2010, 1:06:43 AM11/3/10
to make...@googlegroups.com
Great!! Look forward to checking it out!

Rob Giseburt

unread,
Nov 3, 2010, 1:41:26 AM11/3/10
to make...@googlegroups.com
Looks like it'll be another night. :-(

I found that at slow speeds, like .5 RPM, there's a ... Skipping.  I don't yet know what it is. Like it'll do 5 steps, then skip 5. I'll have to look at it with a logic analyzer tomorrow and see if it's sending step signals or not. 

I also determined that:
1) The RepG bug isn't a show stopper. It just sends 0 RPM wrong. 
2) RepG could do E codes without further firmware changes. It'll translate them to RPM values with start and stop signals.


I need to clean it up so thar the external stepper and servos live together better.

I also need to add an M code to support the steps/rev setting.  I'm thinking M40-46, "change gear ratios" might work, and are currently unused by the makerbot. I'm open to suggestions if anyone else has any ideas!

  -Rob

Rob Giseburt

unread,
Nov 3, 2010, 7:34:01 PM11/3/10
to make...@googlegroups.com
Ok, it’s up and working as far as I can tell:



It represents one of many many different configurations possible. I chose with relays on, since it won’t hurt a non-relay system, just make it a little more digital.

I chose to configure it for a 200-step stepper, with 16th steps (using a Pololu): 3200 stpes/rev total. This is configured in src/Extruder/boards/ecv22/ExtruderMotor.cc with th variable extruder_steps_per_rev.

My scons line is: scons -f SConstruct.extruder relays=true extstepper=true stepper=false

Stepper and extstepper are not compatible.

To recap how to connect it:

To hook it up:
D10 is enable.
Direction is Pin 7 of that quadrature.
Step is Pin  8 of the quatrature.


Pin 7 is the bottom row, next to the right, and Pin 8 is in the top row directly above it.
Bottom right is ground, and top right is 5V.

You should connect ground to your stepper driver somewhere.

I did notice a little jumpyness on my stepper at really low speeds, such as 0.5rpm, but I suspect it’s my hardware, since I checked it with a logic analyzer and the step signals are being sent correctly.

Enjoy!

  -Rob
MakerBot Operator
Member of CCCKC Hackerspace
Member of KC Fabricators Google Group

Jordan Miller

unread,
Nov 3, 2010, 7:40:52 PM11/3/10
to make...@googlegroups.com
you sir, are my hero. THANK YOU!

Can't wait to try it out with a stepper! now where did I put that pololu driver...

jordan

Rob Giseburt

unread,
Nov 3, 2010, 7:43:43 PM11/3/10
to make...@googlegroups.com
  -Rob
MakerBot Operator
Member of CCCKC Hackerspace
Member of KC Fabricators Google Group

Rob Giseburt

unread,
Nov 3, 2010, 8:25:30 PM11/3/10
to make...@googlegroups.com
I should also mention that the instructions here are helpful:


  -Rob
MakerBot Operator
Member of CCCKC Hackerspace
Member of KC Fabricators Google Group

Koen Kooi

unread,
Nov 4, 2010, 4:25:04 AM11/4/10
to make...@googlegroups.com

Op 4 nov 2010, om 00:34 heeft Rob Giseburt het volgende geschreven:

> Ok, it’s up and working as far as I can tell:
>
> https://github.com/koenkooi/G3Firmware/tree/rob-stepper

Thank you very much for that! I rebased and squashed it into a single commit: https://github.com/koenkooi/G3Firmware/commits/feature-externalstepper

If I didn't mess up, this is how to wire it up: http://www.flickr.com/photos/koenkooi/5144834329/

regards,

Koen

Rob Giseburt

unread,
Nov 4, 2010, 12:36:14 PM11/4/10
to make...@googlegroups.com
Thank you very much for that! I rebased and squashed it into a single commit: https://github.com/koenkooi/G3Firmware/commits/feature-externalstepper

My pleasure. Thanks for squashing that. I should have done that before pushing. I’ll try to remember to do that in the future.

If I didn't mess up, this is how to wire it up: http://www.flickr.com/photos/koenkooi/5144834329/

 It looks like maybe you have the red & grey flipped.

I haven’t mentioned this yet, but it doesn’t interfere with the servo on D9 and the H-Bridges are still available for use as well. This way if you want to use a servo for something, you still can. I believe the Unicorn should still work with this firmware, even compiled for external stepper functionality.

I also fixed a few bug that I found. For one, you couldn’t set the position of servo 2. (You could try, but it would move servo 1 anyway.) Also, the Packet::read32 function was terribly broken, and it’s shared between the motherboard and the extruder, so that could help other things as well.

I also cleaned up for support of the EEPROM map functionality.

I need to change the internal stepper mode to use the RPM setting instead of the PWM setting, then work on MakerBot 5D support can begin. :)

-Rob

Rob Giseburt

unread,
Nov 4, 2010, 10:41:29 PM11/4/10
to make...@googlegroups.com
Oh! It's important to note that this firmware *ignores* the pwm setting and only uses the RPM settings. You'll have to adjust accordingly. 

Rick Pollack

unread,
Nov 4, 2010, 11:24:36 PM11/4/10
to make...@googlegroups.com
Rob - does the motor reverse (retract filament) when the head is traveling?

Rob Giseburt

unread,
Nov 4, 2010, 11:33:50 PM11/4/10
to make...@googlegroups.com
That isn't built into the firmware, no. The gcode could specify to do that, however. 

Once the 5D is in place, I believe the Dimension skeinforge plugin does that. 

I suppose we could add that. There's syncing issues with that, however. 

  -Rob

Koen Kooi

unread,
Nov 5, 2010, 5:47:35 PM11/5/10
to make...@googlegroups.com
Rob,

After adjusting my wiring I attached a stepper, edited machines.xml and fired up repG. Using the control panel I can control the stepper like a charm! I haven't tested an actual extrusion or gcode, though.

regards,

Koen

Rob Giseburt

unread,
Nov 5, 2010, 6:21:26 PM11/5/10
to make...@googlegroups.com
Yay! I look forward to hearing more!

-Rob

the Mole of Production

unread,
Nov 5, 2010, 11:14:10 PM11/5/10
to make...@googlegroups.com
Woohoo! It works!

I'm using Rob's firmware (the hex downloaded from the group page) and
John Yang's Pololu carrier board.

I was wondering if I could get a general poll of RPM settings. What
sort of speed should I be expecting to run on a wade with a standard
.5 mm nozzle? High/low ranges?

Also, during my first test extrusion I was getting periodic backward
stuttering from the stepper. I'm assuming it's noise from the stepper
cable crossing the wire between the stepper driver and the extruder
board, and the fact that those wires are right next to the outputs
from my relay board. Or it's possible that my motor can't handle the
torque. I'm going to shield my signal wires and try a stronger motor
than the little Makerbot NEMA 17 I have in now, but I thought I should
mention the issue.

Rob Giseburt

unread,
Nov 5, 2010, 11:51:48 PM11/5/10
to make...@googlegroups.com
Yay! Glad to hear it's working.

About the RPM settings, I've been wondering the same thing. The
makerbot DC motor is rated at 2 RPM with no load, so I'd guess
somewhere between 1 and 2 rpm is normal for that motor on an extruder.
I'll have to do sone measurements and see for sure.

I'm thinking of mapping the PWM values to RPM, so that old gcode will
still work, more or less. Any thoughts?

About the stepping backwards, maybe check to make sure reverse works
ok. If it doesn't, then your dir pin is not hooked up correctly.
Either way, it's probably at least loose. Please let me know if you
keep having trouble.

-Rob

On Nov 5, 2010, at 10:14 PM, the Mole of Production

Rick Pollack

unread,
Nov 5, 2010, 11:57:00 PM11/5/10
to make...@googlegroups.com
What happens when you run your wade with no filament? Do you get any stuttering? By stuttering, do you mean skipping or ??

Wade is ~3.5:1. RPM will vary based on feedrate. What is your typical feedrate and are you microstepping?

Len Trigg

unread,
Nov 6, 2010, 12:46:46 AM11/6/10
to make...@googlegroups.com
On Sat, Nov 6, 2010 at 4:51 PM, Rob Giseburt <gise...@gmail.com> wrote:
> I'm thinking of mapping the PWM values to RPM, so that old gcode will
> still work, more or less. Any thoughts?

I think the rapman printer interprets M108 S gcodes as RPM so there is
at least a precedent. The other advantage is that you wouldn't need
the rpmify skeinforge plugin any more. However I doubt that you could
use an old gcode intended for PWM based extruder on an RPM based one
without a bunch of calibration that is probably not worth the effort
(even more so to handle old gcode that varied the PWM to achieve a
change in flow rate).

I haven't been able to do any printing for the last month due to work
travel and post-trip catching up, but I'm looking forward to trying
out all the new stuff that's been going on recently!


Cheers,
Len.

the Mole of Production

unread,
Nov 6, 2010, 2:39:04 AM11/6/10
to make...@googlegroups.com
About the stepping backwards, maybe check to make sure reverse works
ok. If it doesn't, then your dir pin is not hooked up correctly.

Reverse works. I'm using 1-pin molex connectors, and they fit snuggly, but it's possible that the DIR pin isn't making good contact.

What happens when you run your wade with no filament? Do you get any stuttering? By stuttering, do you mean skipping or ??

It's like the motor actually reverses for a fraction of a second. Running it with ABS @220°C, it "stutters" above 35 RMP (in control panel). Without filament, it runs fine until I get it up to 100 RPM, and then it'll slip a little, and I can make it slip if I hold the gear wheel. Slip, not reverse. I'm sure if I jacked up the pot I could stop that, but when it was driving filament adjusting the pot didn't seem to help.

Also, right now my extruder electronics are in a pile on top of the Z-platform. They aren't shorting, but if ever there were a chance for electrical interference, it's here.

I'm going to try a beefier motor, and I'll sanitize my wiring while I'm at it.

What is your typical feedrate and are you microstepping?

I'm microstepping 1/16th. With a MK4, .5mm hot end I was using a feedrate of 34-36.

I haven't looked up steps-per rev on my motor or recompiled the firmware accordingly, so the RPM numbers I'm using might have little to do with the actual Rotations Per Minute the motor's doing.

I'm thinking of mapping the PWM values to RPM, so that old gcode will
still work, more or less. Any thoughts?

It would be useful to help ease noobs like me into the dazzling world of stepper extruders, but I can't imagine actually reusing any of my old G-code.

Mike Payson

unread,
Nov 6, 2010, 2:44:21 AM11/6/10
to make...@googlegroups.com
On Fri, Nov 5, 2010 at 8:51 PM, Rob Giseburt <gise...@gmail.com> wrote:

I'm thinking of mapping the PWM values to RPM, so that old gcode will
still work, more or less. Any thoughts?


That is the way I always thought it should work. The best thing about doing it that way is that RepG will work with no plug-ins. Just insert your RPM value in the PWM field. That part may be less than obvious, but it is certainly easier than manually editing the G-code files or fighting to get plug ins installed. And the S command makes perfect sense... Speed can be RPM just as easy as it can be PWM. The only minor problem would be if someone tried to run a file without changing the PWM value from it's default of 255, but all that would just mean missed steps in the extruder until the user figures out what is wrong and aborts the build. You could even add a sanity check in the firmware to not run if the S value is set to 255. 

the Mole of Production

unread,
Nov 7, 2010, 3:09:02 AM11/7/10
to make...@googlegroups.com
I did some more testing tonight. It looks like my "stuttering" problem is torque. When I run it too fast the nozzle can't hold its temperature. As the temp falls, the motor starts missing steps. I assumed it would strip the filament, but I guess I underestimated the Wade design. I think that if I want to run fast, I'll have to adjust my PID settings.

In short: Rob's firmware seems to be working perfectly :D

Koen Kooi

unread,
Nov 7, 2010, 9:42:26 AM11/7/10
to make...@googlegroups.com
I also uploaded it here: https://github.com/koenkooi/G3Firmware/downloads

And a pull request for Adam to merge it into the mainline: https://github.com/makerbot/G3Firmware/pull/58

Rob Giseburt

unread,
Nov 7, 2010, 9:53:24 AM11/7/10
to make...@googlegroups.com
Excellent. Thank you for testing this and reporting. I'm hoping to get the rest of my Wade's printed today to test/print with myself. 

And thank you Koen for posting it and doing the pull request. I'll try to work on better documentation asap. Updating the wiki, etc. (But if anyone gets there first, I won't be too upset. :-)

  -Rob

the Mole of Production

unread,
Nov 7, 2010, 10:16:23 AM11/7/10
to make...@googlegroups.com
I should add that the "reversals" I thought I was feeling were backlash from the driven gear. I was able to duplicate the problem at lower speeds by turning down the voltage to the motor.

I also tried a stronger motor, but I found that it wasn't as smooth as the little Makerbot NEMA 17 I had been using, and of course it drew more power so the pololu stepper driver was getting pretty warm. I worry it'll overheat on longer runs, so I'm switching it back.

Next step: into the depths of Skeinforge

Jordan Miller

unread,
Nov 7, 2010, 4:27:04 PM11/7/10
to make...@googlegroups.com
Koen,

Where do you get those single-pin connectors? they are awesome.

jordan

Jordan Miller

unread,
Nov 7, 2010, 4:28:54 PM11/7/10
to make...@googlegroups.com
if you use a relay board the hot end should be getting enough current to be able to keep up with very fast extrusion. are you using a relay board???

jordan

the Mole of Production

unread,
Nov 7, 2010, 4:46:45 PM11/7/10
to make...@googlegroups.com
Yes, I have a relay board, and I'm confident it CAN maintain temp for fast extrusion (I'm using a MG hot end), but I think I need to adjust the PID so that the extruder controller reacts to temperature changes more aggressively. I'm trying a slow test build first. I'll tackle the PID calculations when I'm ready to for warp speed. My modest goal for today is to print a Mendel drive pulley with well defined spurs, so I want to start slow.

Rick Pollack

unread,
Nov 7, 2010, 4:47:44 PM11/7/10
to make...@googlegroups.com
I don't use a relay.

Rick Pollack

unread,
Nov 7, 2010, 4:58:26 PM11/7/10
to make...@googlegroups.com
or just raise the operating temp...then it will drop during printing but not jam...

Koen Kooi

unread,
Nov 7, 2010, 5:40:45 PM11/7/10
to make...@googlegroups.com, make...@googlegroups.com
Sparkfun sells them as "jumper wires", not cheap but really usefull. I got them from Waterott, a german Sparkfun reseller.

Jordan Miller

unread,
Nov 7, 2010, 6:38:01 PM11/7/10
to make...@googlegroups.com

the Mole of Production

unread,
Nov 7, 2010, 7:05:11 PM11/7/10
to make...@googlegroups.com
http://flic.kr/p/8RApwg

Well, that was a heck of a lot easier than I thought.

I used a search and replace to change the M108 Snnn codes Skeinforge generated to M108 Rnnn codes. I'd set it to slow down feedrate on perimeters and the first layer, and to use RPMs instead of PWM. It adjusted extrusion speed accordingly, but without rpmify.py it used Snnn instead of Rnnn. The online Skeinforge docs for Speed were misleading, and I thought that I had to set my flowrate at 150 if I wanted it to run at 15 RPM. Not the case.

15 RPM was extruding too fast for a feedrate of 20 mm/sec, so I did another search and replace to slow all my m108 Rnnn's by 5 and ended up with a perfectly acceptable "Nophead's Wade Drive Gear w/ Setscrew."

An "acceptable" build of a small part in three tries! Stepper extruders really should be standard on makerbots. So much easier to use.

the Mole of Production

unread,
Nov 7, 2010, 7:13:44 PM11/7/10
to make...@googlegroups.com
Pololu sells male and female crimps and unisex housing so you can make your own. They also sell a very nice ratcheting molex crimper that's worth every penny of its $30 price tag: http://www.pololu.com/catalog/product/1929

Jordan Miller

unread,
Nov 7, 2010, 7:22:02 PM11/7/10
to make...@googlegroups.com
w0w thanks!!!

jordan

Antonio Santos - Brazil

unread,
Nov 8, 2010, 9:55:04 AM11/8/10
to MakerGear - Make Today, Change Tomorrow
Way to go Mole of Production! I agree that stepper extruders are so
much easier that they should be standard.

Right now Rick has a pololu carrier which makes the modification even
easier.

-Antonio Santos

On 7 nov, 19:05, the Mole of Production <moleofproduct...@gmail.com>
wrote:
> http://flic.kr/p/8RApwg
>
> Well, that was a heck of a lot easier than I thought.
>
> I used a search and replace to change the M108 Snnn codes Skeinforge
> generated to M108 Rnnn codes. I'd set it to slow down feedrate on perimeters
> and the first layer, and to use RPMs instead of PWM. It adjusted extrusion
> speed accordingly, but without rpmify.py it used Snnn instead of Rnnn. The
> online Skeinforge docs for Speed were misleading, and I thought that I had
> to set my flowrate at 150 if I wanted it to run at 15 RPM. Not the case.
>
> 15 RPM was extruding too fast for a feedrate of 20 mm/sec, so I did another
> search and replace to slow all my m108 Rnnn's by 5 and ended up with a
> perfectly acceptable "Nophead's Wade Drive Gear w/ Setscrew."
>
> An "acceptable" build of a small part in three tries! Stepper extruders
> really should be standard on makerbots. So much easier to use.
>
> On Sun, Nov 7, 2010 at 4:40 PM, Koen Kooi <k...@beagleboard.org> wrote:
> > Sparkfun sells them as "jumper wires", not cheap but really usefull. I got
> > them from Waterott, a german Sparkfun reseller.
>
> > Op 7 nov. 2010 om 22:27 heeft Jordan Miller <jrdn...@gmail.com> het
> > volgende geschreven:
>
> > > Koen,
>
> > > Where do you get those single-pin connectors? they are awesome.
>
> > > jordan
>
> > > On Nov 4, 2010, at 4:25 AM, Koen Kooi wrote:
>
> > >> Op 4 nov 2010, om 00:34 heeft Rob Giseburt het volgende geschreven:
>
> > >>> Ok, it’s up and working as far as I can tell:
>
> > >>>https://github.com/koenkooi/G3Firmware/tree/rob-stepper
>
> > >> Thank you very much for that! I rebased and squashed it into a single
> > commit:
> >https://github.com/koenkooi/G3Firmware/commits/feature-externalstepper
>
> > >> If I didn't mess up, this is how to wire it up:
> >http://www.flickr.com/photos/koenkooi/5144834329/
>
> > >> regards,
>
> > >> Koen
>
> > >>> I have a .hex file I just uploaded.
> >http://groups.google.com/group/makergear/web/EC-ecv22-v2.5_external_s...
> > >>>> On Tue, Nov 2, 2010 at 9:16 PM, Rob Giseburt <giseb...@gmail.com>
> > wrote:
> > >>>> I got it! It’s a bug in RepG. I’ll post cleaned up diffs later, as
> > soon as I can!
>
> > >>>> -Rob
> > >>>> —
> > >>>> MakerBot Operator
> > >>>> Member of CCCKC Hackerspace
> > >>>> Member of KC Fabricators Google Group
>
> > >>>> On Nov 2, 2010, at 9:56 AM, Rob Giseburt wrote:
>
> > >>>>> Thank you Koen.
>
> > >>>>> Does anyone know how to debug RepG? I've determined that the bug is
> > >>>>> indeed in where it gets the speed from the computer, in line 130 of
> > >>>>> Host.cc. If I replace the from_host.read32(2) with 1000000, it
> > >>>>> dutifully spins the appropriate direction once per second, if turned
> > >>>>> on, and disables the stepper when off.
>
> > >>>>> I'm kinda stuck. I'll try to look more after work tonight.
>
> > >>>>> -Rob
>
> > >>>>> On Nov 2, 2010, at 8:18 AM, Koen Kooi <k...@beagleboard.org> wrote:
>
> > >>>>>> I took the liberty to git it into github:
> >http://github.com/koenkooi/G3Firmware/tree/rob-stepper
>
> > >>>>>> Op 2 nov 2010, om 06:14 heeft Rob Giseburt het volgende geschreven:
>
> > >>>>>>> Oh wow. Sorry guys. I really got too deep in the code. :-)
>
> > >>>>>>> -Rob
>
> > >>>>>>> On Nov 2, 2010, at 12:13 AM, Rick Pollack <r...@makergear.com>

Koen Kooi

unread,
Nov 9, 2010, 4:17:19 AM11/9/10
to make...@googlegroups.com
Marius Kintel merged it into the official git tree last night! So if you clone https://github.com/makerbot/G3Firmware/ and build it with extstepper=true you will get all the stepper goodness!

Bill Culverhouse

unread,
Nov 9, 2010, 7:56:05 AM11/9/10
to make...@googlegroups.com
It'd be nice of there was an onboard EC setting to change from one to the other.
Is that really hard to implement or something? Could it cause damage to a
board if someone hooks the wrong extruder up to the EC? Just curious.
 
-b

Len Trigg

unread,
Nov 13, 2010, 8:08:17 PM11/13/10
to make...@googlegroups.com
I updated the makerbot wiki page to include information about this new
option, see:

http://wiki.makerbot.com/stepper-driven-extruder#version-2-external

Please have a read through and fix any mistakes I may have made.

I tried it out just now with my breadboarded pololu 1/16th stepping
driver and it works great! Now I'm about to make up a stripboard
version for permanent use.

Cheers,
Len.

Rick Pollack

unread,
Nov 13, 2010, 8:24:00 PM11/13/10
to make...@googlegroups.com
Great, Len!!

Would it make sense to add the step rate as a command line option?

Rick

Rob Giseburt

unread,
Nov 13, 2010, 9:39:15 PM11/13/10
to make...@googlegroups.com
Command line during compile? That would work. Of course the goal is to put that setting in EEPROM. I'll see if I can get that in soon.  

  -Rob

Len Trigg

unread,
Nov 16, 2010, 3:08:19 PM11/16/10
to make...@googlegroups.com
I have noticed what I believe to be a bug. Last night I was doing a
bunch of calibration prints, and during a couple of them I stopped the
build using the regular repg stop button. The extruder continued to
extrude rather than stopping. I'm pretty sure I haven't had this
happen on the non-stepper extruder version of the firmware. Should I
file this as an issue at github now?

Cheers,
Len.

ddurant

unread,
Nov 16, 2010, 3:27:45 PM11/16/10
to MakerGear - Make Today, Change Tomorrow
I've seen this happen before with the MBI firmware. Not often but it
does happen.

On Nov 16, 3:08 pm, Len Trigg <len...@gmail.com> wrote:
> I have noticed what I believe to be a bug.  Last night I was doing a
> bunch of calibration prints, and during a couple of them I stopped the
> build using the regular repg stop button.  The extruder continued to
> extrude rather than stopping. I'm pretty sure I haven't had this
> happen on the non-stepper extruder version of the firmware. Should I
> file this as an issue at github now?
>
> Cheers,
> Len.
>
>
>
> On Sun, Nov 14, 2010 at 3:39 PM, Rob Giseburt <giseb...@gmail.com> wrote:
> > Command line during compile? That would work. Of course the goal is to put
> > that setting in EEPROM. I'll see if I can get that in soon.
>
> >   -Rob
> > On Nov 13, 2010, at 7:24 PM, Rick Pollack <r...@makergear.com> wrote:
>
> > Great, Len!!
>
> > Would it make sense to add the step rate as a command line option?
>
> > Rick
>
> > On Sat, Nov 13, 2010 at 8:08 PM, Len Trigg <len...@gmail.com> wrote:
>
> >> I updated the makerbot wiki page to include information about this new
> >> option, see:
>
> >>http://wiki.makerbot.com/stepper-driven-extruder#version-2-external
>
> >> Please have a read through and fix any mistakes I may have made.
>
> >> I tried it out just now with my breadboarded pololu 1/16th stepping
> >> driver and it works great!  Now I'm about to make up a stripboard
> >> version for permanent use.
>
> >> Cheers,
> >> Len.
>
> >> On Tue, Nov 9, 2010 at 10:17 PM, Koen Kooi <k...@beagleboard.org> wrote:
> >> > Marius Kintel merged it into the official git tree last night! So if you
> >> > clonehttps://github.com/makerbot/G3Firmware/and build it with
> >> > extstepper=true you will get all the stepper goodness!
>
> >> > Op 7 nov 2010, om 15:53 heeft Rob Giseburt het volgende geschreven:
>
> >> >> Excellent. Thank you for testing this and reporting. I'm hoping to get
> >> >> the rest of my Wade's printed today to test/print with myself.
>
> >> >> And thank you Koen for posting it and doing the pull request. I'll try
> >> >> to work on better documentation asap. Updating the wiki, etc. (But if anyone
> >> >> gets there first, I won't be too upset. :-)
>
> >> >>   -Rob
>
> >> >> On Nov 7, 2010, at 2:09 AM, the Mole of Production
> >> >>> On Fri, Nov 5, 2010 at 10:51 PM, Rob Giseburt <giseb...@gmail.com>
> >> >>> wrote:
> >> >>> > Yay! Glad to hear it's working.
>
> >> >>> > About the RPM settings, I've been wondering the same thing. The
> >> >>> > makerbot DC motor is rated at 2 RPM with no load, so I'd guess
> >> >>> > somewhere between 1 and 2 rpm is normal for that motor on an
> >> >>> > extruder.
> >> >>> > I'll have to do sone measurements and see for sure.
>
> >> >>> > I'm thinking of mapping the PWM values to RPM, so that old gcode
> >> >>> > will
> >> >>> > still work, more or less. Any thoughts?
>
> >> >>> > About the stepping backwards, maybe check to make sure reverse works
> >> >>> > ok. If it doesn't, then your dir pin is not hooked up correctly.
> >> >>> > Either way, it's probably at least loose. Please let me know if you
> >> >>> > keep having trouble.
>
> >> >>> >  -Rob
>
> >> >>> > On Nov 5, 2010, at 10:14 PM, the Mole of Production
> >> >>> > <moleofproduct...@gmail.com> wrote:
>
> >> >>> >> Woohoo! It works!
>
> >> >>> >> I'm using Rob's firmware (the hex downloaded from the group page)
> >> >>> >> and
> >> >>> >> John Yang's Pololu carrier board.
>
> >> >>> >> I was wondering if I could get a general poll of RPM settings. What
> >> >>> >> sort of speed should I be expecting to run on a wade with a
> >> >>> >> standard
> >> >>> >> .5 mm nozzle? High/low ranges?
>
> >> >>> >> Also, during my first test extrusion I was getting periodic
> >> >>> >> backward
> >> >>> >> stuttering from the stepper. I'm assuming it's noise from the
> >> >>> >> stepper
> >> >>> >> cable crossing the wire between the stepper driver and the extruder
> >> >>> >> board, and the fact that those wires are right next to the outputs
> >> >>> >> from my relay board. Or it's possible that my motor can't handle
> >> >>> >> the
> >> >>> >> torque. I'm going to shield my signal wires and try a stronger
> >> >>> >> motor
> >> >>> >> than the little Makerbot NEMA 17 I have in now, but I thought I
> >> >>> >> should
> >> >>> >> mention the issue.
>
> >> >>> >> On Fri, Nov 5, 2010 at 5:21 PM, Rob Giseburt <giseb...@gmail.com>
> >> >>> >> wrote:
> >> >>> >>> Yay! I look forward to hearing more!
>
> >> >>> >>>  -Rob
>
> >> >>> >>> On Nov 5, 2010, at 4:47 PM, Koen Kooi <k...@beagleboard.org>
> >> >>> >>> wrote:
>
> >> >>> >>>> Rob,
>
> >> >>> >>>> After adjusting my wiring I attached a stepper, edited
> >> >>> >>>> machines.xml and fired up repG. Using the control panel I can control the
> >> >>> >>>> stepper like a charm! I haven't tested an actual extrusion or gcode, though.
>
> >> >>> >>>> regards,
>
> >> >>> >>>> Koen
>
> >> >>> >>>> Op 5 nov 2010, om 03:41 heeft Rob Giseburt het volgende
> >> >>> >>>> geschreven:
>
> >> >>> >>>>> Oh! It's important to note that this firmware *ignores* the pwm
> >> >>> >>>>> setting and only uses the RPM settings. You'll have to adjust accordingly.
>
> >> >>> >>>>>http://wiki.makerbot.com/stepper-driven-extruder#toc14
>
> >> >>> >>>>>  -Rob
>
> >> >>> >>>>> On Nov 4, 2010, at 11:36 AM, Rob Giseburt <giseb...@gmail.com>
> >> >>> >>>>> wrote:
>
> >> >>> >>>>>>> Thank you very much for that! I rebased and squashed it into a
> >> >>> >>>>>>> single commit:
> >> >>> >>>>>>>https://github.com/koenkooi/G3Firmware/commits/feature-externalstepper
>
> >> >>> >>>>>> My pleasure. Thanks for squashing that. I should have done that
> >> >>> >>>>>> before pushing. I’ll try to remember to do that in the future.
>
> >> >>> >>>>>>> If I didn't mess up, this is how to wire it up:
> >> >>> >>>>>>>http://www.flickr.com/photos/koenkooi/5144834329/
>
> >> >>> >>>>>> It looks like maybe you have the red & grey flipped.
>
> >> >>> >>>>>> I haven’t mentioned this yet, but it doesn’t interfere with the
> >> >>> >>>>>> servo on D9 and the H-Bridges are still available for use as well. This way
> >> >>> >>>>>> if you want to use a servo for something, you still can. I believe the
> >> >>> >>>>>> Unicorn should still work with this firmware, even compiled for external
> >> >>> >>>>>> stepper functionality.
>
> >> >>> >>>>>> I also fixed a few bug that I found. For one, you couldn’t set
> >> >>> >>>>>> the position of servo 2. (You could try, but it would move servo 1 anyway.)
> >> >>> >>>>>> Also, the Packet::read32 function was terribly broken, and it’s shared
> >> >>> >>>>>> between the motherboard and the extruder, so that could help other things as
> >> >>> >>>>>> well.
>
> >> >>> >>>>>> I also cleaned up for support of the EEPROM map functionality.
>
> >> >>> >>>>>> I need to change the internal stepper mode to use the RPM
> >> >>> >>>>>> setting instead of the PWM setting, then work on MakerBot 5D support can
> >> >>> >>>>>> begin. :)
>
> >> >>> >>>>>> -Rob- Hide quoted text -
>
> - Show quoted text -

Rob Giseburt

unread,
Nov 16, 2010, 7:42:32 PM11/16/10
to make...@googlegroups.com
Good catch. (It’s not setting the RPM to 0, just the PWM, which is ignored.) I’ll post the fix and request a githup pull of the fix later.

  -Rob
MakerBot Operator
Member of CCCKC Hackerspace
Member of KC Fabricators Google Group

Wilson

unread,
Nov 20, 2010, 12:16:52 AM11/20/10
to MakerGear - Make Today, Change Tomorrow
Ok so I've got Rob's firmware running with MBI stepper board and it's
working fine, but all of a sudden the thermistor (.35 Big Head) is
reading 77C at room temp while the MBI HBP is reading 18 C. Any
ideas?

On Nov 7, 12:09 am, the Mole of Production
> > On Fri, Nov 5, 2010 at 10:51 PM, Rob Giseburt <giseb...@gmail.com> wrote:
> > > Yay! Glad to hear it's working.
>
> > > About the RPM settings, I've been wondering the same thing. The
> > > makerbot DC motor is rated at 2 RPM with no load, so I'd guess
> > > somewhere between 1 and 2 rpm is normal for that motor on an extruder.
> > > I'll have to do sone measurements and see for sure.
>
> > > I'm thinking of mapping the PWM values to RPM, so that old gcode will
> > > still work, more or less. Any thoughts?
>
> > > About the stepping backwards, maybe check to make sure reverse works
> > > ok. If it doesn't, then your dir pin is not hooked up correctly.
> > > Either way, it's probably at least loose. Please let me know if you
> > > keep having trouble.
>
> > >  -Rob
>
> > > On Nov 5, 2010, at 10:14 PM, the Mole of Production
> > > <moleofproduct...@gmail.com> wrote:
>
> > >> Woohoo! It works!
>
> > >> I'm using Rob's firmware (the hex downloaded from the group page) and
> > >> John Yang's Pololu carrier board.
>
> > >> I was wondering if I could get a general poll of RPM settings. What
> > >> sort of speed should I be expecting to run on a wade with a standard
> > >> .5 mm nozzle? High/low ranges?
>
> > >> Also, during my first test extrusion I was getting periodic backward
> > >> stuttering from the stepper. I'm assuming it's noise from the stepper
> > >> cable crossing the wire between the stepper driver and the extruder
> > >> board, and the fact that those wires are right next to the outputs
> > >> from my relay board. Or it's possible that my motor can't handle the
> > >> torque. I'm going to shield my signal wires and try a stronger motor
> > >> than the little Makerbot NEMA 17 I have in now, but I thought I should
> > >> mention the issue.
>
> > >> On Fri, Nov 5, 2010 at 5:21 PM, Rob Giseburt <giseb...@gmail.com>
> > wrote:
> > >>> Yay! I look forward to hearing more!
>
> > >>>  -Rob
>
> > >>> On Nov 5, 2010, at 4:47 PM, Koen Kooi <k...@beagleboard.org> wrote:
>
> > >>>> Rob,
>
> > >>>> After adjusting my wiring I attached a stepper, edited machines.xml
> > and fired up repG. Using the control panel I can control the stepper like a
> > charm! I haven't tested an actual extrusion or gcode, though.
>
> > >>>> regards,
>
> > >>>> Koen
>
> > >>>> Op 5 nov 2010, om 03:41 heeft Rob Giseburt het volgende geschreven:
>
> > >>>>> Oh! It's important to note that this firmware *ignores* the pwm
> > setting and only uses the RPM settings. You'll have to adjust accordingly.
>
> > >>>>>http://wiki.makerbot.com/stepper-driven-extruder#toc14
>
> > >>>>>  -Rob
>
> > >>>>> On Nov 4, 2010, at 11:36 AM, Rob Giseburt <giseb...@gmail.com>
> > wrote:
>
> > >>>>>>> Thank you very much for that! I rebased and squashed it into a
> > single commit:
> >https://github.com/koenkooi/G3Firmware/commits/feature-externalstepper
>
> > >>>>>> My pleasure. Thanks for squashing that. I should have done that
> > before pushing. I’ll try to remember to do that in the future.
>
> > >>>>>>> If I didn't mess up, this is how to wire it up:
> >http://www.flickr.com/photos/koenkooi/5144834329/
>
> > >>>>>> It looks like maybe you have the red & grey flipped.
>
> > >>>>>> I haven’t mentioned this yet, but it doesn’t interfere with the
> > servo on D9 and the H-Bridges are still available for use as well. This way
> > if you want to use a servo for something, you still can. I believe the
> > Unicorn should still work with this firmware, even compiled for external
> > stepper functionality.
>
> > >>>>>> I also fixed a few bug that I found. For one, you couldn’t set the
> > position of servo 2. (You could try, but it would move servo 1 anyway.)
> > Also, the Packet::read32 function was terribly broken, and it’s shared
> > between the motherboard and the extruder, so that could help other things as
> > well.
>
> > >>>>>> I also cleaned up for support of the EEPROM map functionality.
>
> > >>>>>> I need to change the internal stepper mode to use the RPM setting
> > instead of the PWM setting, then work on MakerBot 5D support can begin. :)
>

Rick Pollack

unread,
Nov 20, 2010, 12:19:52 AM11/20/10
to make...@googlegroups.com
first check the thermistor resistance with a meter to make sure it is ok...check at the end of the hook-up wires...to make sure the molex connection is good...

Wilson

unread,
Nov 20, 2010, 12:47:49 AM11/20/10
to MakerGear - Make Today, Change Tomorrow
Ok thanks Rick I'll check and get back...
> > > - Show quoted text -- Hide quoted text -

Wilson

unread,
Nov 20, 2010, 1:33:16 AM11/20/10
to MakerGear - Make Today, Change Tomorrow
I took my old MK4 extruder and screwed the thermistor wires directly
into the terminals on the EC and get the exact same reading, 77 C with
the HBP still at 18 C.

On Nov 19, 9:19 pm, Rick Pollack <r...@makergear.com> wrote:
> > > - Show quoted text -- Hide quoted text -

Rick Pollack

unread,
Nov 20, 2010, 2:14:29 AM11/20/10
to make...@googlegroups.com
Reconnect the molex to see if you have a bad connection.

Wilson

unread,
Nov 20, 2010, 7:37:21 PM11/20/10
to MakerGear - Make Today, Change Tomorrow
I re-burned Rick's v1.8 firmware and the extruder thermistor is
reading correctly again. Anyone else had this problem with Rob's
v2.5?

Wilson

unread,
Nov 20, 2010, 7:46:15 PM11/20/10
to MakerGear - Make Today, Change Tomorrow
Now I just burned Rob's v2.5 and again the extruder says 77 C and the
HBP is 16 C, but both are at room temp. Guess I'll go back to using
the v1.8 for now...

Rob Giseburt

unread,
Nov 20, 2010, 11:00:51 PM11/20/10
to make...@googlegroups.com
I'll look at this as soon as I can. See if I can figure out why it
would do this.

-Rob

Koen Kooi

unread,
Nov 21, 2010, 3:46:23 AM11/21/10
to make...@googlegroups.com, MakerGear - Make Today, Change Tomorrow
are the beta values correct for both?

Rob Giseburt

unread,
Nov 21, 2010, 3:52:50 AM11/21/10
to make...@googlegroups.com
Oh, right!

When upgrading from 1.8 the EEPROM possibly won't be configured correctly.

If you reset/edit the extruder onboard settings, that might fix your problem.

http://wiki.makerbot.com/adjusting-the-thermistor-settings

-Rob

Message has been deleted

Rob Giseburt

unread,
Nov 21, 2010, 8:54:31 PM11/21/10
to make...@googlegroups.com
Have you re-committed these since upgrading? There's a version number
stored in the EEPROM of what version of the firmware last saved, and
will ignore the EEPROM and use defaults if that doesn't match.

-Rob

On Nov 21, 2010, at 6:55 PM, Wilson <nickwi...@gmail.com> wrote:

> I'm using 4066
> 1000000
> 25
> Same as the HBP. These settings have always worked fine for me and I
> haven't changed thermistors. If I use the same settings in v1.8 the
> temps are correct.


>
> On Nov 21, 12:52 am, Rob Giseburt <giseb...@gmail.com> wrote:
>> Oh, right!
>>
>> When upgrading from 1.8 the EEPROM possibly won't be configured correctly.
>>
>> If you reset/edit the extruder onboard settings, that might fix your problem.
>>
>> http://wiki.makerbot.com/adjusting-the-thermistor-settings
>>
>> -Rob
>>

>> On Nov 21, 2010, at 2:47 AM, Koen Kooi <k...@beagleboard.org> wrote:
>>
>>
>>
>>> are the beta values correct for both?
>>

Wilson

unread,
Nov 22, 2010, 12:27:43 AM11/22/10
to MakerGear - Make Today, Change Tomorrow
Yes I think I got it. Thanks for the help!

On Nov 21, 5:54 pm, Rob Giseburt <giseb...@gmail.com> wrote:
> Have you re-committed these since upgrading? There's a version number
> stored in the EEPROM of what version of the firmware last saved, and
> will ignore the EEPROM and use defaults if that doesn't match.
>
>   -Rob
>
> ...
>
> read more »- Hide quoted text -
Reply all
Reply to author
Forward
0 new messages