Smoothieboard and OpenPNP2 upgrade

1,280 views
Skip to first unread message

Renato Conca

unread,
Jan 3, 2021, 2:00:48 PM1/3/21
to OpenPnP
Hi to all , my name is Renato from Italy.  First of all,  thank you very much for your job regarding openpnp. I am new to pnp machines. Taking advantage of the Christmas holidays, I have upgraded my machine to openpnp2 and also smoothieboard firmaware firmware-2020-10-22-PAXIS-5 . After these changes the C axis stopped working. My question is: do I have to make changes to the Config. file also? The camera pointer also stopped working( with mouse input). 
Attached you can find  Config.txt and machine.xml
Thanks in advance for your help.
Renato  
machine.xml
config.txt

ma...@makr.zone

unread,
Jan 3, 2021, 3:36:23 PM1/3/21
to ope...@googlegroups.com

Hi Renato

I looked at the machine.xml and it seems you are using letter "C" for your rotation axis.

But with Smoothieware you usually need to use axis A as the rotational axis. You can still name it "C" (it is conceptually the right name) but you need to assign the proper controller side letter name e.g. "A".

Rotation Axis

Then use the Issues & Solutions system again to generate the new Gcode.

https://github.com/openpnp/openpnp/wiki/Issues-and-Solutions

Also looking at your config.txt, you should not use extruders, but the proper 6axis syntax, as documented here :

http://smoothieware.org/6axis

But ignore the part about recompiling, just use my firmware (you wrote, you already do).

https://makr.zone/smoothieware-new-firmware-for-pnp/500/

_Mark

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/c87fb864-73d7-4cac-b363-de1cd118eecbn%40googlegroups.com.

Trinh Dinh Huu

unread,
Jan 3, 2021, 7:54:33 PM1/3/21
to ope...@googlegroups.com
Hi ma...@makr.zone my machine have 4 nozzle. Rotation name is C for 4 nozzles and axis letter is A,B,C,D for 4 nozzle? 

Vào 3:36, Th 2, 4 thg 1, 2021 ma...@makr.zone <ma...@makr.zone> đã viết:

bert shivaan

unread,
Jan 3, 2021, 9:10:41 PM1/3/21
to OpenPnP
Hi Mark, and all others that may be able to help.
I would like to figure out a verbose step by step to get a motion control running with Marks version of Smoothie. The audience for this should be someone not at all familiar with motion control boards for 3d printing and such. So basically me. I have reached out before and as always you folks answer my questions, but I never seem to ask the right questions.
So here goes, please correct or confirm.
1) download firmware.bin for 5 or 6 axis from Marks page.
2) save this on a microSD card.
3) download a config.txt file from somewhere(I think also on marks page)
4) edit the config with all the correct answers to the questions.
5) save this on the same microSD as above
6) put microSD in the control board and boot up.
7) Now we are ready to configure openPNP and run the machine?


If I have the steps correct above, maybe it is just the config part I have been missing. I am not really sure. And when I say missing, I mean in my mind.

bert shivaan

unread,
Jan 3, 2021, 9:12:30 PM1/3/21
to OpenPnP
If I can get the "for dummies" version sorted out, I would be happy to figure out how to add it to the wiki. I feel like this is really missing. It seems like the assumption is people already know how to do this, but somehow I missed the boat I suppose.

ma...@makr.zone

unread,
Jan 4, 2021, 4:37:25 AM1/4/21
to ope...@googlegroups.com

Hi Bert

You mean "from scratch" i.e. no old machine.xml and config.txt around (that worked), right?

The problem is that every machine is different. Usually we have to assume that users acquire the knowledge to wire and setup the controller of their choice. And they usually need to have the machine running by using hand formulated Gcode in Printrun or similar.

It is only for ready-built or (unmodified) kit machines like the CHMT / Liteplacer that much of this can be skipped. I guess that for those you could get ready-made config and even a machine.xml from the group here.

You got it almost right:

1) download firmware.bin for 5 or 6 axis from Marks page. Or more generally:
All the known good firmwares are linked here, including for your Smoothie:
2) BACKUP everything that was on the SD card. Save this on a microSD card. Rename it to firmware.bin.
3) download a config.txt file from somewhere. There are various configs around, mine is here (towards end of post):
        https://makr.zone/choosing-a-motion-controller-the-panucatt-azteeg-x5-gt-32bit/455/
4) edit the config with all the correct answers to the questions (Axes, Endstops etc. need to be configured machine specific)
5) save this on the same microSD as above
6) put microSD in the control board and boot up.
7) Learn how to move around the machine using Gcode in Printrun or similar.  Make sure you got your steps/mm right.
8) Make Endstops, Homing, Vacuum pump/valve switching work in Gcode.
9) Now we are ready to configure OpenPnP and run the machine.
10) Add the GcodeDriver driver to OpenPnP, delete the NullDriver
10) Add the axes, nozzles etc. to match your physical machine.
11) Run the Issues & Solutions system to check everything and generate the most difficult Gcode for you.

Again, unless you have a ready-built or kit machine (or are a machine-builder genius), this is usually an iterative process where you learn new stuff and find conceptual flaws and then need to go back and fix them.

> If I can get the "for dummies" version sorted out, I would be happy to figure out how to add it to the wiki

Yes, please!


_Mark

bert shivaan

unread,
Jan 4, 2021, 6:55:38 AM1/4/21
to OpenPnP
Thank you Mark, Yes I mean "from scratch"
I left out the bits involved in getting openPNP configured, I think that is covered well in the Wiki, at least it is getting MUCH better.
I am trying to get the gap filled between - I bought a new xxx board" and now to configure openPNP. Does that make sense?

I think you have done a great job pointing me in the above steps, I will try this out and move forward.

:)


bert shivaan

unread,
Jan 4, 2021, 6:58:55 AM1/4/21
to OpenPnP
On your page where it calls out testing version, that is now develop correct?

bert shivaan

unread,
Jan 4, 2021, 7:40:14 AM1/4/21
to OpenPnP
I have tried to google this, but have not found the answer.
Does Smoothie support TMC2208 UART mode?

Arthur Wolf

unread,
Jan 4, 2021, 7:46:50 AM1/4/21
to ope...@googlegroups.com
On Mon, Jan 4, 2021 at 3:10 AM bert shivaan <bert.s...@gmail.com> wrote:
Hi Mark, and all others that may be able to help.
I would like to figure out a verbose step by step to get a motion control running with Marks version of Smoothie. The audience for this should be someone not at all familiar with motion control boards for 3d printing and such. So basically me. I have reached out before and as always you folks answer my questions, but I never seem to ask the right questions.
So here goes, please correct or confirm.
1) download firmware.bin for 5 or 6 axis from Marks page.
2) save this on a microSD card.
3) download a config.txt file from somewhere(I think also on marks page)
4) edit the config with all the correct answers to the questions.
5) save this on the same microSD as above
6) put microSD in the control board and boot up.
7) Now we are ready to configure openPNP and run the machine?


If I have the steps correct above, maybe it is just the config part I have been missing. I am not really sure.

I feel like even with the OpenPNP documentation as complete as it is, and even if "for dummies" guides are produced for any setup, if you are going to use the Smoothie system, you *have* to read the Smoothie documentation.
You can't skip that step.
I have helped *thousands* of people setting up machines, maybe a hundred pick and place machines in there, and the *main* reason for frustration is not having gone through all of the documentation.
"Flying over" the pages, or just searching for what you need at a particular time, is not a good idea. You really should go through all/most of the documentation, it takes a few hours, and it *will* make you much much more comfortable with the system ( to the point where questions like those above will be obvious to you ).

Note if you are going to produce documentation for setting up Smoothie for Pick and Place machine, there is a beginning of a guide on the Smoothie site: https://www.smoothieware.org/pick-and-place
Ideally, anyone working on this would add at least *some* information on that page, or at least links to their work, so others can find the information and use it.
If you are not ready to edit the Smoothie wiki yourself, at the very least email me personally and tell me where you wrote information, so I can myself work on porting it to the Smoothie documentation.


ma...@makr.zone

unread,
Jan 4, 2021, 8:04:48 AM1/4/21
to ope...@googlegroups.com

Develop, yes, correct!

> On your page where it calls out testing version

Could you please point out which page? I'd like to fix it.

_Mark

bert shivaan

unread,
Jan 4, 2021, 10:42:29 AM1/4/21
to OpenPnP

ma...@makr.zone

unread,
Jan 4, 2021, 10:47:17 AM1/4/21
to ope...@googlegroups.com

bert shivaan

unread,
Jan 4, 2021, 10:47:37 AM1/4/21
to OpenPnP
Aurthor, I agree it would be more than the simple task I outlined. I have read mostly all there is on your site that I found. Never once did I notice the plain fact that place the firmware.bin and config.txt on the microSD al all will magically work. It may in fact be there and say that, I just did not see it.

bert shivaan

unread,
Jan 4, 2021, 10:52:25 AM1/4/21
to OpenPnP
I also agree that my step 4, edit the config and answer all the questions there is the real meat of setting it up. For me, coming from a background or programming the uP either by use of a programmer or using a bootloader to upload the firmware, I was missing the idea of using the microSD as a bootloader.

ma...@makr.zone

unread,
Jan 4, 2021, 11:30:03 AM1/4/21
to ope...@googlegroups.com

Well...

Maybe... in the future, people will start with OpenPnP, even before ordering parts. They would model axes, drivers, actuators etc., right in the GUI, no rocket science required.

We would only need a few extra data points on the axis (like end-stops, homing direction/priority, steps/mm etc.). Plus a drop-down on the actuators to allocate suitable sensor inputs or FET outputs available on the controller (perhaps with some amps/voltage spec displayed for informed choice).

Et voilà! Once everything is modeled, we will be able to generate the config.txt (Smoothie) or sys/config.g (Duet) plus some sort of simple step-by-step wiring guide automatically from OpenPnP's Issues & Solutions system. We already check whether the right firmware is installed and we point to downloads & flashing instructions (info button). We could then also generate complete Gcode including actuators (these are missing today).

People really don't need to learn all that controller-proprietary stuff just to build an OpenPnP machine. In fact you don't even need to learn G-code. I'm sure most 3D printing enthusiasts don't know nothing about G-code, why should OpenPnP-users?

Like always with the Issues & Solutions system, each such solution would only be a suggestion, a starting point, that can be dismissed for a more advanced and ambitious configuration.

_Mark

bert shivaan

unread,
Jan 4, 2021, 12:07:50 PM1/4/21
to OpenPnP
I agree with all you have said Mark.

I am curious as to why one would need to understand everything on the smoothie site, but also agree it is good and relevant information. It is extremely hard for me to see the actual setup of the machine as a complete noobie, so hard for me to say.

But it really does seem like the internet is missing the dumb stupid part that I am referring to above.

A config wizard would be AWESOME IMHO. even linuxCNC has it for simple configuration.

Arthur Wolf

unread,
Jan 4, 2021, 12:09:37 PM1/4/21
to ope...@googlegroups.com
On Mon, Jan 4, 2021 at 5:30 PM ma...@makr.zone <ma...@makr.zone> wrote:

Well...

Maybe... in the future, people will start with OpenPnP, even before ordering parts. They would model axes, drivers, actuators etc., right in the GUI, no rocket science required.

We would only need a few extra data points on the axis (like end-stops, homing direction/priority, steps/mm etc.). Plus a drop-down on the actuators to allocate suitable sensor inputs or FET outputs available on the controller (perhaps with some amps/voltage spec displayed for informed choice).

Et voilà! Once everything is modeled, we will be able to generate the config.txt (Smoothie) or sys/config.g (Duet) plus some sort of simple step-by-step wiring guide automatically from OpenPnP's Issues & Solutions system. We already check whether the right firmware is installed and we point to downloads & flashing instructions (info button). We could then also generate complete Gcode including actuators (these are missing today).

People really don't need to learn all that controller-proprietary stuff just to build an OpenPnP machine. In fact you don't even need to learn G-code. I'm sure most 3D printing enthusiasts don't know nothing about G-code, why should OpenPnP-users?

Sure, it'd be ideal if users didn't have to learn any of this. I think we're all working hard to make it so this becomes a reality someday.
I don't think that's where OpenPNP / Open-Source fabrication machines are at right now though.
If you're designing a machine with a Smoothieboard in it, you have to read the Smoothieboard documentation. You can't use the system safely or effectively without doing that.
If somebody makes an "OEM" machine, where everything has been done for the user in advance, that's great, but I don't think that's what is happening in the conversation here: this user does need to flash his firmware and config himself, nobody did it for them, so it follows, they do need to read the documentation to learn to use the system.



--
勇気とユーモア

Arthur Wolf

unread,
Jan 4, 2021, 12:12:09 PM1/4/21
to ope...@googlegroups.com
On Mon, Jan 4, 2021 at 6:07 PM bert shivaan <bert.s...@gmail.com> wrote:
I agree with all you have said Mark.

I am curious as to why one would need to understand everything on the smoothie site,

*Somebody* needs to understand everything there.
If you are building a machine from scratch, you definitely need to understand everything there to build/use the machine safely.
If somebody is designing and building a machine for you, then you don't need to learn *any* of this, but you can be sure the person selling you the machine has in turn learned all this before designing the machine, and it's very likely that person ŵill still want you to read *some* documentation about their machine :)

Renato Conca

unread,
Jan 5, 2021, 11:11:20 AM1/5/21
to OpenPnP
Ok tks to all, and now going back to the head of this topic...........the problem still present.
Just to complete the trouble shooting, i have swapped the external driver ( X vs. C): C axis still motionless;
as per second step, complete set of motor  and external C driver moved to X axis: all works fine.
At this point,  confirmed that the problem derives from an incorrect configuration, I followed Mark's instructions, but the problem still present. Attached config and machine files. I just remember that with the old version of open pnp all axes ran fine. At the moment " Issues and Solutions " is empty.
Were i am wrong ... HELP!!!
tks again 
Renato
config.txt
machine.xml

ma...@makr.zone

unread,
Jan 5, 2021, 12:32:47 PM1/5/21
to ope...@googlegroups.com

Hi Renato

unlike other controllers (Duet), Smoothie does not allow to skip axes. So if you have 4 axes you need to use X Y Z A (however, see below).

Geometrically "C" would be the right axis letter, and you can use the Name "C" in OpenPnP but you need to use the Axis Letter "A" on the axis.

Once set, again use the Issues & Solutions system to regenerate all the relevant Gcode.


Having said that... it might be possible to define all six axes in Smoothieware, but only connect X Y Z and C with pins and leave out A and B as "nc".

UNTESTED:

delta_step_pin                  nc                # Step in for A stepper step signal
delta_dir_pin                   nc                # Pin for A stepper direction
...

epsilon_step_pin                nc                # Pin for B stepper step signal
epsilon_dir_pin                 nc                # Pin for B stepper direction

...

zeta_step_pin                   2.3              # Pin for C stepper step signal
zeta_dir_pin                    0.22             # Pin for C stepper direction

If this works, It would actually be great ;-)

maybe @Arthur can shed some light.

_Mark

Renato Conca

unread,
Jan 5, 2021, 2:23:09 PM1/5/21
to OpenPnP
YESSSSSSS!!! Problem solved!!
After config. file reconfiguration as you indicated the problem was still on.
But I didn't get any misconfiguration messages from the "Issues & Solution" page.
After an hour of frustration I discovered that the problem was due to incorrect configuration of the point indicated in the image attached.

tks Mark for you help 
Renato
20210105_195832.jpg

Arthur Wolf

unread,
Jan 5, 2021, 2:43:21 PM1/5/21
to ope...@googlegroups.com
On Tue, Jan 5, 2021 at 6:32 PM ma...@makr.zone <ma...@makr.zone> wrote:

Hi Renato

unlike other controllers (Duet), Smoothie does not allow to skip axes. So if you have 4 axes you need to use X Y Z A (however, see below).

Geometrically "C" would be the right axis letter, and you can use the Name "C" in OpenPnP but you need to use the Axis Letter "A" on the axis.

Once set, again use the Issues & Solutions system to regenerate all the relevant Gcode.


Having said that... it might be possible to define all six axes in Smoothieware, but only connect X Y Z and C with pins and leave out A and B as "nc".

That should work. If it doesn't, setting them to 0.0 instead is likely to fix it.
I'll check the code, and if you run into trouble I'll be able to provide further info.



--
勇気とユーモア

Renato Conca

unread,
Jan 13, 2021, 2:02:53 PM1/13/21
to OpenPnP
Hi to all
Tks to your help at the moment all the mechanical problems seem to have been solved.
Now:
1) Mechanical homing - ok;
2) Steps/mm setup - ok;
3) Top camera "units per pixel" - ok;
4) Nozzle Offset - ok;
5) Homing fiducial - NOT OK!  :(

I noticed two conditions:

a) After the setup of the "homing fiducial" ( Apply ok ;) ), at the next homing request, the fiducial is correctly displayed, but I get the "visual homing fail" message.

b) When I turn the system  off then on , the camera turns around the table looking for a point. When it stops, I don't get the error message , but the stop point is never the same and never on the  fiducial point.

Where is the wrong setup?

Note: 
All of the above if the kinematic settings are disabled otherwise I only get the "soft limit low" alarm. This is ( I suppose),because smoothieboard take an homing to XYZ at 0.000 ( M114), and OpenPNP set the nozzle offset value to a negative position ........ but this solves it later.
All files attached
Tks in advance
Renato
config.txt
machine.xml
LOG.txt

tony...@att.net

unread,
Jan 13, 2021, 2:51:42 PM1/13/21
to OpenPnP
Can you post the debug images?  The should be named something like fidloc_original_*.png.

Tony

Renato Conca

unread,
Jan 13, 2021, 3:48:39 PM1/13/21
to OpenPnP
Of course

Renato
fidloc_original_1887703204221533982.png

tony...@att.net

unread,
Jan 13, 2021, 4:58:14 PM1/13/21
to OpenPnP
Unless you have setup a very special package for that homing fiducial, I think you need to change it to a simple black dot about 1 mm in diameter (and for the package used by the FIDUCIAL-HOME part,  under the Vision tab, set the width and length of the pad to the actual diameter of the dot.  BTW - I use a 1 mm home drilled into my aluminum support for the homing fiducial and it works great.

Tony

Renato Conca

unread,
Jan 14, 2021, 11:45:01 AM1/14/21
to OpenPnP
Another check  to tick as ok.
Thanks Tony for the good advice. In addition to your indications I also invert the reference colors in the pipeline template (white background and black pad). Attached photo of the fiducial used successfully.
1 mm hole on the table and nearby area painted in matt white.
Tks again
Renato
20210114_165345.jpg
Reply all
Reply to author
Forward
0 new messages