v2.0 (21/12) Picking parts on a Liteplacer and TinyG

835 views
Skip to first unread message

Inf Asked

unread,
Dec 30, 2019, 11:37:38 AM12/30/19
to OpenPnP
Dear all,

I have installed the latest OpenPNP v2 (21/dec) and try to set it up with a Liteplacer and a TinyG.

I'm now lost in what's deprecated or special for the Liteplacer. So I hope you can help.

What is not working is picking a part. What I did:

- Made one actuator H1VAC under the head
- Made another actuator H1PUMP under the head
- In the GCodeDriver I set ACTUATE_BOOLEAN_COMMAND  (M{True:8}{False:9} for the VAC and M{True:4}{False:5} for the Pump). I can turn them on or off.
- In the ContactProbeNozzle I selected the H1VAC under Vacuum.

What I don't know:

1) What is the ACTUATOR_READ_COMMAND for Pump or/and VAC? ($adc0 does not work)
2) What are the TinyG GCode commands for the ContactProbeNozzle actuator? I have setup the ContactProbeNozzle
3) When picking a part. It goes to the location (X/Y). But why doesn't it go down (Z not moving) and then turning the vacuum on?

Kind regards,

Nick


ma...@makr.zone

unread,
Dec 31, 2019, 4:45:10 AM12/31/19
to OpenPnP
Hi Nick

I've got a Liteplacer but I use Smoothieware, so I can't help with specific G-Code.

On Monday, December 30, 2019 at 5:37:38 PM UTC+1, Inf Asked wrote:

What I don't know:

1) What is the ACTUATOR_READ_COMMAND for Pump or/and VAC? ($adc0 does not work)

Afraid, I don't know, but this should be around somewhere, because the G-Code hasn't changed, just the place where to put it (i.e. the Actuator instead of the Driver).
 
2) What are the TinyG GCode commands for the ContactProbeNozzle actuator? I have setup the ContactProbeNozzle

Again, I don't know, but you might have a look at the Liteplacer Software for guidance. I've given some pointers here:



3) When picking a part. It goes to the location (X/Y). But why doesn't it go down (Z not moving) and then turning the vacuum on?

You need the probing command. See 2).

Once yo figure it out, please share.

_Mark

Inf Asked

unread,
Jan 4, 2020, 6:08:15 AM1/4/20
to OpenPnP
Can someone give some more information about this. I'm quite lost. Especially because I don't know whats deprecated (since v2.0) or not when I read the forums. E.g. what I undershoot is that the pick and place commands are not used anymore.

1) Where can I find the probing command and how should I use it? I don't know where to fill in all those commands.
2) I'm I right that the ACTUATOR_READ_COMMAND by default (on the liteplacer) will not work because you cannot readout the value at all (no hardware for that on the default Liteplacer setup)?
3) Where can I fill in the Z position in v2.0? I only see the "Reference Hole Location" and the "Next Hole Location" and not Z for part location in the feeder setup.
4) Is that Z position needed when using the probe command?

ma...@makr.zone

unread,
Jan 5, 2020, 8:21:39 AM1/5/20
to ope...@googlegroups.com

Hi

1) You should first setup the machine without the ContactProbingNozzle. That's how 99.9% of the machines work under OpenPNP and you can still add that later. 

2) Yes, the Liteplacer has no vacuum sensors. You can add them later, see how I did it on my Liteplacer here:
https://makr.zone/vacuum-sensor/192/

3) The Z is part of the feeder locations. Make sure to set to the same value:


Note that using the TinyG is actually not recommended for OpenPNP. See why here

https://github.com/openpnp/openpnp/wiki/Motion-Controllers#tinyg

and here

https://github.com/openpnp/openpnp/wiki/TinyG#quirks

Not many users will therefore use TinyG with OpenPNP, so for best community support, I recommend buying a Smoothieware based controller. Either the original Smoothieboard or  - my personal recommendation - an Azteeg X5 GT 32bit Motion Controller with the Bigfoot BSD2660 - Based on TMC2660 stepper drivers:

https://www.panucatt.com/azteeg_X5_GT_reprap_3d_printer_controller_p/ax5gt.htm

Advantages: has an USB isolator (a MUST IMHO), a modular driver concept and (most importantly) SPI control of stepper drivers. It has many features and still very compact size.

I can give you detailed configuration templates for that setup.

If you don't buy the original Smoothieboard, I suggest giving a donation to Smoothieware for continued firmware development.

_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/00ed4fad-fc8d-4ba7-b3f7-32f3441182b0%40googlegroups.com.

Inf Asked

unread,
Jan 5, 2020, 10:27:55 AM1/5/20
to OpenPnP
Hi _Mark,

Thank you very much for you details! I'm going for the board you recommended.

1) I only need to order the
- Azteeg X5 GT
- 3x Bigfoot BSD2660 (not 4 or 5)
NO other options like stepper driver.

2) Where can I find the wiring and can all wires on the TinyG be transferred to the Azteeg (easily)? E.g. I see Zmin +/- on the Azteeg but not Zmin and Zmax as on the TinyG.
3) How can I get your configuration templates?
4) Will things like ContactProbingNozzle also work with your setup?

I have no experience with motion controllers, Smoothieware or GCode so I hope it's easy to replace the TinyG.

Kind regards,

Nick
To unsubscribe from this group and stop receiving emails from it, send an email to ope...@googlegroups.com.

ma...@makr.zone

unread,
Jan 5, 2020, 2:01:35 PM1/5/20
to ope...@googlegroups.com

Hi Nick

1) I think you need at least 4 drivers, X, Y, Z and C (rotation). I would order 5 drivers, one spare can never hurt. Be sure to never insert them 180°. I did that once :-(

2) There is some documentation available for the Azteeg, it is not so difficult. You can use my config.txt (map the pin x.yyy codes) to see which connections I used. If unclear, ask. 

3) My config.txt and on_boot.gcode are attached. The machine.xml is somewhat hand-edited and only thought as a look-up guide.
Note, that I use a vacuum reservoir and run the pump on a hysteresis. If you don't want to do that, you need to use different GCode.

4) Yes.

See my blog for some additional infos.

https://makr.zone/tag/openpnp/

_Mark

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/8aeefbcd-a93d-4983-b7ac-77054ebf37de%40googlegroups.com.
config.txt
on_boot.gcode
machine.xml

Steven Doyle

unread,
Jan 10, 2020, 12:10:04 PM1/10/20
to OpenPnP
Hi Mark,

I finally received my Azteeg X5GT and Bigfoot drivers.  So I can now replace TinyG on my Liteplacer.

So do you happen to have a wiring diagram?  Curious to see where the Solenoids and vacum pump gets wired to. 

Thanks

Steven

ma...@makr.zone

unread,
Jan 10, 2020, 12:30:26 PM1/10/20
to ope...@googlegroups.com

Hi Steve

No, I'm afraid I have none.

I recommend looking into my config.txt and map the pin numbers to the Wiring Diagram given for the Azteeg:

http://panucattdevices.freshdesk.com/support/solutions/articles/1000245711-x5-gt-install-guide

So for example, in my config.txt it says:

temperature_control.pump.enable               true             #
temperature_control.pump.thermistor_pin       0.23             #
temperature_control.pump.heater_pin           2.7              #
temperature_control.pump.designator           B                #
temperature_control.pump.min_temp             -10              #
temperature_control.pump.max_temp             300              #
temperature_control.pump.thermistor           EPCOS100K        # see http://smoothieware.org/temperaturecontrol#toc5
temperature_control.pump.bang_bang            true             # set to true to use bang bang control rather than PID
temperature_control.pump.hysteresis           5.0              # set to the temperature in degrees C to use as hysteresis 
temperature_control.pump.runaway_heating_timeout   0           # it seems to crash
temperature_control.pump.runaway_range        0                # a rapid delta in temp triggers a halt - 0 disables it
temperature_control.pump.set_m_code           140              #
temperature_control.pump.set_and_wait_m_code  190              #



You can now track the pump.thermistor_pin 0.23 and pump.heater_pin 2.7 to this:

Etc.

_Mark

Steven Doyle

unread,
Jan 10, 2020, 2:02:53 PM1/10/20
to ope...@googlegroups.com
Ah I think I get it. So in your example:

temperature_control.pump.heater_pin           2.7   
connects the heat bed 2.7 on the AZteeg and this is mapped to M140 which is used to switch the vac pump on and off ? 
and the solenoid valve is mapped to 2.5 which on the Azteeg is hotend2 
is that right ?

thanks

Steven


--
You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/nPQ0-k0P6ec/unsubscribe.
To unsubscribe from this group and all its topics, send an email to openpnp+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/8ff9b2ba-baab-9e6d-f809-8acc80fe452c%40makr.zone.

ma...@makr.zone

unread,
Jan 10, 2020, 3:38:35 PM1/10/20
to ope...@googlegroups.com

Exactly, you got it!

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/CANTYCEua7BK%3DBjmZ%2BOM8DLuEJdzk2iBYULyc6pCydLG3TFT8Gw%40mail.gmail.com.

ma...@makr.zone

unread,
Jan 10, 2020, 3:44:25 PM1/10/20
to OpenPnP
One thing:

I got this PCB "conveyor" axis extra:

So you can ignore everything that is "B" or "epsilon" axis and corresponding end stops.

BTW, I haven't made that PCB "conveyor" idea working yet.

The underlying future idea is here:

_Mark

Inf Asked

unread,
Jan 10, 2020, 4:31:22 PM1/10/20
to OpenPnP
Hi Steven,

Can you post your mappings / result from TinyG to Azteeg? That would be helpful to the once who want to migrate.

Kind regards,

Nick

Steven Doyle

unread,
Jan 11, 2020, 4:29:35 AM1/11/20
to ope...@googlegroups.com
Sure I was planning to write it all up and post it.

Kind regards

Steven

--
You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/nPQ0-k0P6ec/unsubscribe.
To unsubscribe from this group and all its topics, send an email to openpnp+u...@googlegroups.com.

Inf Asked

unread,
Jan 31, 2020, 6:48:26 AM1/31/20
to OpenPnP
Hi Steven,

Did you manage to migrate from TinyG to Azteeg? When do you expect to post your migration steps?

I hope to receive my controller this or next week (after many weeks). Do you need some help?

Kind regards,

Nick



On Saturday, January 11, 2020 at 10:29:35 AM UTC+1, Steven Doyle wrote:
Sure I was planning to write it all up and post it.

Kind regards

Steven

On Fri, 10 Jan 2020 at 21:31, Inf Asked <inf....@gmail.com> wrote:
Hi Steven,

Can you post your mappings / result from TinyG to Azteeg? That would be helpful to the once who want to migrate.

Kind regards,

Nick

--
You received this message because you are subscribed to a topic in the Google Groups "OpenPnP" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/openpnp/nPQ0-k0P6ec/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ope...@googlegroups.com.

Wilco

unread,
Jan 31, 2020, 2:33:00 PM1/31/20
to 'Steven Doyle' via OpenPnP
Hi Steven,

Did you manage to migrate from TinyG to Azteeg? When do you expect to post your migration steps?

I hope to receive my controller this or next week (after many weeks). Do you need some help?

Kind regards,

Nick

Steven Doyle

unread,
Feb 3, 2020, 5:08:59 AM2/3/20
to OpenPnP
Hi,

I have now almost completed my migration to AzteegGT & Smoothieware and the below are the steps that I have taken. Attached is a wiring diagram & my smoothie config and machine.xml.

I have a standard Liteplacer as shipped to me last year, so unlike Mark I have no vacume sensors yet. I was running OpenPnP2 successfully with TinyG but as things changed in OpenPnP it was becoming difficult to keep things working and I also wanted to add another motor so TinyG was no longer viable. I decide to convert to a smoothie board as this seemed the most common & recommended option. First problem I noticed is that it is currently impossible to purchase an original smoothie board (guess those guys are working on smoothie v2 now) and I didn't want to buy a Chinese clone. Mark recommended the Azteeg X5 GT with Bigfoot drivers and that was fine so I ordered that same configuration.

Step 1 I needed an enclosure for the new board. Downloaded a suitable 3D model from Thingiverse and printed it out.

Step 2 Wire the board. As I had already wired the motors to TinyG it was simple to re-wire to the Azteeg but just note that the pinout is different i.e. note where A1,B1,A2,B2 are on the azteeg connectors. I re-wired the limit switches as the TinyG configuration had NC connect to 3.3V and not GND which is how most people recommend. I later realized that is was not necessary to do this as the the logic can be inverted by applying and "!" to the pin in the smoothieware config file. In my config file attached you will see I have done this for the Z probe switch which I hadn't changed the wiring for. For the rest of the wiring please see attached wiring diagram.


Step 3 Configure the smoothieware config file. Thanks to Mark here as I based my configuration on his. I should say that the smoothieware documentation is actually very good, I recommend you read it. Below are the two pages that I frequently consulted

Step 4 Basic testing. I used Pronterface to test basic x, y z movement and proper functioning of the limit switches The M119 code to return the limit switch status was invaluable. see

I still have some things to do  like re-calibrate everything get the visual homing working etc. For the visual homing I actually cut out a fiducial from and old PCB and stuck it to the head of a screw which is in the top cameras field of view after mechanical homing. It works really well.

Hope this helps.

Kind regards

Steve
on_boot.gcode
AzteegWiring.JPG
config.txt
machine.xml

Inf Asked

unread,
Apr 12, 2020, 4:43:43 PM4/12/20
to OpenPnP

@Steve: Thank you very much for your great help! I really appreciate that!

@Mark and others: Do you have any other boards as tip so I can use yours and Steven’s configuration? So it's easy to migrate. E.g. I see that the other smoothieboards doesn't have the TMC2660 controller with 256 micro steps. So I can imagine that the configuration is quite different. Because:

Begin January I ordered the Azteeg. But the postmen send it back without informing me at all. Then it turns out that there is no contact possible with panucatt (very bad!). I needed the credit card company to get my money back in April. Therefore I don't like to order again with such an unreliable company.

So I'm kind of stuck on what is wise to do to get the OpenPNP to work as reliable as possible with my Liteplacer. 

Kind regards,

Nick

ma...@makr.zone

unread,
Apr 13, 2020, 4:53:40 AM4/13/20
to ope...@googlegroups.com

Hi Nick

yeah, it's hard to get in contact with Panucatt. I'm not convinced its an unreliable company per se, but it definitely has a deep problem with personal communications. I always got my orders quickly, but I had a hard time getting the schematic (Open Source Hardware).

I don't know another solution with where you can reuse my configuration.

There are certainly other controllers with modern drivers, but then you have to figure them out by yourself, I guess. Perhaps look into this thread about Duet 2 and perhaps Hanski can help, at least with the controller side of things. The other stuff in machine.xml should remain valid from our Liteplacer config:

https://groups.google.com/d/msg/openpnp/M9VY-GcFP2o/BuAtiwXfBAAJ

Just from its specs, the Duet 2 does not look bad at all:

https://duet3d.com/DuetWifi

There is one thing that is special about the Liteplacer (that I am aware of), and that is the ContactProbeNozzle.

https://github.com/openpnp/openpnp/pull/859 (search for "ContactProbeNozzle").

I guess it will work on Duet 2 with

G30 S-1

https://duet3d.dozuki.com/Wiki/Gcode#Section_G30_Single_Z_Probe

_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/b9c7fd5c-b35e-45f1-ba48-690731d2eb0c%40googlegroups.com.

Panos

unread,
Apr 13, 2020, 1:53:29 PM4/13/20
to OpenPnP
3) When picking a part. It goes to the location (X/Y). But why doesn't it go down (Z not moving) and then turning the vacuum on?

You must set the height value in two points. 
First in "Parts" tag set the part height. For example for 0603 smd put 0.400 mm.
Second and most important in "Job" tag set the "Z" of your board. You have to measure the height which need the nozzle tip till to touch the surface of your pcb.

Still I looking how to turn on vacuum (solenoid and pump) during the pick a part!?

Inf Asked

unread,
Jun 29, 2020, 5:50:31 PM6/29/20
to OpenPnP
Hi Steve,

I'm comparing Mark's and your config.txt. Now I see that you changed steps per mm for the X axis and Y axis (and currents). What's the reason for that?

Is it because you changed to stepper motors on your LitePlacer? Or are Mark's values not right for the LitePlacer? Or ...

I'm trying to figure out which values are correct for the original (stock) LitePlacer without any modifications.

Kind regards

ma...@makr.zone

unread,
Jun 30, 2020, 7:47:18 AM6/30/20
to ope...@googlegroups.com

Hi Inf

mine are not right for the stock Liteplacer. I have exchanged my steppers for 1.8° step (200 steps/rev) models because I couldn't get the 0.9° original Liteplacer models up to reasonable speed. Also I exchanged the Y axis stepper for a stronger NEMA23, as the axis is much heavier and the stepper is stationary so its weight has no down-side.

https://makr.zone/thinking-machine/82/

https://makr.zone/pick-place-machine-first-simulated-small-test-run/66/

_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/18902ceb-6916-4c96-a844-df3563af0ac5o%40googlegroups.com.

Inf Asked

unread,
Jun 30, 2020, 2:31:30 PM6/30/20
to OpenPnP
Hi _Mark,

Thanks! Does this only hold for the X and Y axis or for the Z and A also?

Do you know where can I find the values of the stepper for the stock LitePlacer? I don't know if the LitePlacer of Steve is still a stock LitePlacer.

I'm now taking the settings from you and/or Steve and put those in the Duet 2 config.g file. I assume the values like mm/min are the same for a Smoothieboard or a Duet 2 (both mm/min ....).

Kind regards,

Nick
To unsubscribe from this group and stop receiving emails from it, send an email to ope...@googlegroups.com.

ma...@makr.zone

unread,
Jun 30, 2020, 2:52:56 PM6/30/20
to ope...@googlegroups.com

No, Z and A are stock/original Liteplacer kit. :)

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/768f1540-5a79-4946-a1da-d11eba075c30o%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages