Advice for BBB breakout for Taig Micromill

242 views
Skip to first unread message

Siggi

unread,
Apr 18, 2017, 6:26:51 PM4/18/17
to Machinekit
Hey y'all,

I recently had a 4 axis Taig Micromill DSLS 3000 follow me home. I'm currently driving it with Mach3 and a ThinkPad laptop, through the USB->Parallel port module provided by Taig/Microproto, but this is ... sub-optimal. The driver box takes what looks to me (a rank n00b) standard DB25 parallel signals for XYZA step/dir control and spindle/coolant switching. The DLSL allegedly has 1600 CPR encoders that hook into the control box and are supposed to "servo" the steppers. From what I read the stepper drivers are half step only, however, so I don't know. The only user-visible benefit to this that I've seen is that if (when - *sigh*) I crash, the encoders detect it and flag on the respective axis "limit" inputs on the DB25. Sometimes it seems the USB module takes ... a while ... to bring this to Mach3's attention, however.
I guess it may also help to have an acceleration/speed control loop around the steppers?

In any case, I want to kit my mill out with homing switches at least, and perhaps limit switches. There are suitable inputs on the control box, but they get ORed with the servo loop "limit" gunk, which means the control software wouldn't be able to tell home from "limit". I'd also like to liberate the ThinkPad from machine control duty.

In any case, I'd like to hook up a BBB with Machinekit to the control box I have already, and to hook up the home and perhaps limit switches to it.
Ideally I'd want a breakout with a DB25 feeding the XYZA axis and the the spindle/coolant outputs, as well as the XYZA limit inputs. Screw terminals would be ideal for the rest.
I wonder which cape or breakout board would be best/reasonable for me to buy for this (I'm in Canada, in case that makes any difference)?

Siggi
Message has been deleted

schoo...@btinternet.com

unread,
Apr 19, 2017, 4:09:52 AM4/19/17
to machi...@googlegroups.com

On 18/04/17 23:26, Siggi wrote:
Hey y'all,

I recently had a 4 axis Taig Micromill DSLS 3000 follow me home. I'm currently driving it with Mach3 and a ThinkPad laptop, through the USB->Parallel port module provided by Taig/Microproto, but this is ... sub-optimal. The driver box takes what looks to me (a rank n00b) standard DB25 parallel signals for XYZA step/dir control and spindle/coolant switching. The DLSL allegedly has 1600 CPR encoders that hook into the control box and are supposed to "servo" the steppers. From what I read the stepper drivers are half step only, however, so I don't know. The only user-visible benefit to this that I've seen is that if (when - *sigh*) I crash, the encoders detect it and flag on the respective axis "limit" inputs on the DB25. Sometimes it seems the USB module takes ... a while ... to bring this to Mach3's attention, however.
I guess it may also help to have an acceleration/speed control loop around the steppers?

USB does not work, there is no certainty as to poll interval, there are repeated in depth explanations of this on the Linuxcnc forum if you are interested


In any case, I want to kit my mill out with homing switches at least, and perhaps limit switches. There are suitable inputs on the control box, but they get ORed with the servo loop "limit" gunk, which means the control software wouldn't be able to tell home from "limit". I'd also like to liberate the ThinkPad from machine control duty.

In any case, I'd like to hook up a BBB with Machinekit to the control box I have already, and to hook up the home and perhaps limit switches to it.
Ideally I'd want a breakout with a DB25 feeding the XYZA axis and the the spindle/coolant outputs, as well as the XYZA limit inputs. Screw terminals would be ideal for the rest.
I wonder which cape or breakout board would be best/reasonable for me to buy for this (I'm in Canada, in case that makes any difference)?

Why do you want to use a BBB?

All you need is a small form factor ex corporate x86 desktop with a parport, available for £30 on ebay.
You can run the whole machine from one parport, if you chain the limits to one pin
(which limit tripped will be obvious from the table position, so you don't need to waste 3 pins on them)
Or fit a £10 PCI parport card and have loads of extra IO.

You will need to run Linuxcnc with a rtai kernel probably, to get decent latency, but lots of people there are already using Taig mills quite happily,
so you will have lots of advice available.

Alternately the DE0-NANO-Soc is about £80 and with a DB25 header board you can have 4 hardware stepgens, hardware encoder and 16 pins of GPIO,
running Machinekit.
I have a small mill (albeit about 10x the size of a Taig) running very happily just using one header for steppers etc. and the other for IO.

The downside with BBB or DE0-NANO is you still require another computer to access the board and provide graphics.
So any 'space saving' is often notional.

I am not evangelical about Machinekit, it is a case of whatever works best.

Machinekit is nothing to do with BBB, despite the impression the number of people using them gives.


Siggi
--
website: http://www.machinekit.io blog: http://blog.machinekit.io github: https://github.com/machinekit
---
You received this message because you are subscribed to the Google Groups "Machinekit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to machinekit+...@googlegroups.com.
Visit this group at https://groups.google.com/group/machinekit.
For more options, visit https://groups.google.com/d/optout.

Sigurður Ásgeirsson

unread,
Apr 19, 2017, 9:20:03 AM4/19/17
to schoo...@btinternet.com, machi...@googlegroups.com
On Wed, 19 Apr 2017 at 04:09 schoo...@btinternet.com <schoo...@btinternet.com> wrote:

USB does not work, there is no certainty as to poll interval, there are repeated in depth explanations of this on the Linuxcnc forum if you are interested

Yups. Note thought that the USB module is not a USB/Parallel converter, it contains a microcontroller that takes over the pulse generation and has local buffering. There's a Mach3 plugin that hooks in there to offload the work, somehow.

Probing for home/limit switches and such I could see suffering, though.
 
Why do you want to use a BBB?

From what I understand, LinuxCNC can use the PRU hardware on the BBB to generate the pulse trains,which sounds like a cheap and painless way to get timing accuracy. Aside from that, it's small and fanless.


All you need is a small form factor ex corporate x86 desktop with a parport, available for £30 on ebay.
You can run the whole machine from one parport, if you chain the limits to one pin
(which limit tripped will be obvious from the table position, so you don't need to waste 3 pins on them)
Or fit a £10 PCI parport card and have loads of extra IO.

If I never see another beige box x86 PC, it'll be too soon :). From what I understand, you also want a fairly dated computer, that doesn't have IMT, turn down APM and whatnot to get decent timing accuracy. I'm no expert, and I'm hoping not to become one.
 
The downside with BBB or DE0-NANO is you still require another computer to access the board and provide graphics.

The BBB has HDMI out and a USB port. I'm pretty sure I've seen monitors & keyboards hooked up to them with LinuxCNC/Machinekit running on them?

Looks like perhaps the Xylotex BBB_IDC26_26 would do for me, though I'd need to break the second IDC26 connector out to something more comfortable? 

Charles Steinkuehler

unread,
Apr 19, 2017, 11:11:13 AM4/19/17
to machi...@googlegroups.com
On 4/19/2017 8:19 AM, Sigurður Ásgeirsson wrote:
>
> The BBB has HDMI out and a USB port. I'm pretty sure I've seen monitors &
> keyboards hooked up to them with LinuxCNC/Machinekit running on them?

I use the BBB as a "standard" computer with KB/Mouse via USB and HDMI
out to a normal computer monitor (or sometimes a small LCD panel, but
they are hard on my old eyes).

The problem is the BBB doesn't have (working) GPU support, so the
display performance is pretty dismal. If you disable the 3D preview
window it works much better, and performance is acceptable (to me,
anyway).

IMHO if you go with a PC, get something newer and throw in a Mesa card
for the step pulse generation. You get awesome performance and you
can run on modern hardware with either a Xenomai or PREEMPT-RT kernel.
RTAI and "legacy" hardware is really only needed if you want to do
software step generation and need the absolute lowest IRQ latency and
jitter.

> Looks like perhaps the Xylotex BBB_IDC26_26
> <http://xylotex.netfirms.com/OSCommerce/catalog/product_info.php?products_id=117&osCsid=02d8976524cba9afc29279c2026395ad> would
> do for me, though I'd need to break the second IDC26 connector out to something
> more comfortable?

That would be a good board. All the boards I know about are listed on
this page:

http://blog.machinekit.io/p/hardware-capes.html

--
Charles Steinkuehler
cha...@steinkuehler.net

schoo...@btinternet.com

unread,
Apr 19, 2017, 11:20:28 AM4/19/17
to machi...@googlegroups.com

On 19/04/17 14:19, Sigurður Ásgeirsson wrote:


If I never see another beige box x86 PC, it'll be too soon :). From what I understand, you also want a fairly dated computer..................
Other colours are available,and that is why they are cheap :-)
The market is awash with dual core pentiums from the corporate upgrade cycles, which cost less than a bare BBB.

Throw in a Mesa 5i25 and you have unbeatable hardware stepping and encoders, plus a machine with good graphics and a lot of memory
(standard is about 4GB RAM and 80 - 250 GB HDD compared to 512MB RAM and 4GB eMMC on a BBB)

>> I'm no expert, and I'm hoping not to become one.

If you go down the BBB route you will need to learn stuff too :-)
 
The BBB has HDMI out and a USB port. I'm pretty sure I've seen monitors & keyboards hooked up to them with LinuxCNC/Machinekit running on them?

That is true for the BBB at least, if you don't expect to much.

However when you start connecting a monitor and keyboard and DB25 cable to it, you lose the only usefulness I can see,
its small size and ability to build it in to a machine.

Just pointing out other options exist.

Sigurður Ásgeirsson

unread,
Apr 19, 2017, 11:47:28 AM4/19/17
to schoo...@btinternet.com, machi...@googlegroups.com
On Wed, 19 Apr 2017 at 11:20 schoo...@btinternet.com <schoo...@btinternet.com> wrote:
Other colours are available,and that is why they are cheap :-)
:). 

Throw in a Mesa 5i25 and you have unbeatable hardware stepping and encoders, plus a machine with good graphics and a lot of memory
(standard is about 4GB RAM and 80 - 250 GB HDD compared to 512MB RAM and 4GB eMMC on a BBB)

This looks like an interesting alternative to the BBB - I may even have a suitable old beige box (sadly it's truly beige) that might work well enough with one of those onboard.
 
If you go down the BBB route you will need to learn stuff too :-) 

Yeah, I guess every which way there's some learnin' waiting to happen. 
 
Just pointing out other options exist.

Thanks - I'm going to read up on the Mesa card.

schoo...@btinternet.com

unread,
Apr 20, 2017, 9:48:56 AM4/20/17
to Machinekit Mailing List
Copied from post to Siggi

This is a resume of some of the the non BBB options.

The 5i25 is PCI and the 6i25 is PCIe.
It is available with low profile brackets, for slim cases, but the card
is the same height, its just the mount that is different.
If you get that wrong you can always make a new one from one of the
spares in the case or from an old card.

The PC you show has a PCIe x 16 slot, which is intended for a graphics
card. In theory you can run a PCIe x 1 (or x4) in that slot
but some cards won't and I don't know about the Mesa compatibility, you
would have to ask them.

If you get a 5i25 and run it from a standard PCI slot, it is guaranteed
to work.

If later you upgrade computer to something with just PCIe slots (as I
did on one of mine) you can get a PCI to PCIe converter , for example
https://www.novatech.co.uk/products/startech-com-pci-to-pci-express-adapter-card-1-x-pci-express/pci1pex1.html?gclid=CNOcvI7FstMCFdxWDQodhasLLg#utm_source=google&utm_medium=base&utm_campaign=products
(If you order from China direct through Ebay and wait 2 -3 weeks, you
can knock the price down hugely)
You would just need to make sure the new computer had a large enough
case to allow a piggy-back card like this.

Then is the question of whether you buy a 7i76 daughter card too. That
is actually more expensive than the 5i25, but greatly simplifies
connection, as it gives access to a lot of the IO on a multiplexed
connection.

The alternative to this is flashing the 5i25 so that header P3 is '7i76
equivalent' giving 4 stepgens and an encoder and header P2 is GPIO and
can be taken out to a normal BOB and used. The PROB_RFX2 config is
probably nearest general purpose config for that.

Just to confuse matters, I mentioned the DE0-NANO-Soc

This is a FPGA board with a 'system on chip', basically a complete
computer with FPGA built in.
Charles and others have programmed this to emulate a 5i25 and he has
designed a DB25 interface board, which allows it to completely replace a
computer plus 5i25
I have 2 of these in use currently.
The only downside is that it will only run headless as there is no GPU,
but you already have the Thinkpad.

~~~~~~~~~

It all depends on your budget and preferences.

Parallel port / rtai kernel / Linuxcnc : just the cost of the
computer and BOB and some installation, BIOS set up etc

Mesa 5125 $89 plus cost of BOB and computer
Mesa 7i76 $119 plus cost of 5i25 and computer

DE0-NANo-Soc $103, replaces computer and 5i25, can be used with 7i76 or
just a BOB and use second header for GPIO alone

~~~~~~~~


On 19/04/17 22:44, Sigurður Ásgeirsson wrote:
>
> I can get a Dell Optiplex 380 SFF with 3Gb RAM and 160Gb disk for $46
> just up the road, it looks like. I guess I'll kit it out with
> something like a USB WiFi card for networking, and start off by
> driving with the parallel port. A Core II Duo at ~3GHz ought to work
> OK for that, and should swing it out of the park with one of those
> Mesa cards.
>
> The thing that confuses me is the PCI/PCIe slots in the thing
> <http://www.dell.com/downloads/global/products/optix/en/optiplex-380-tech-guide.pdf>.
> I see the Mesa card is available with low-profile and regular(?)
> brackets.
> I'm not on the up'n'up on the mechanical standards of PCI nor PCI/PCIe
> compatibility - are you? Do you think/know the Mesa card would fit in
> one of them?
>
> It's not the end of the world either way - but it'd be nicer to get a
> suitable beige box the first time out, if I can.
>
> Siggi
>

Sigurður Ásgeirsson

unread,
Apr 21, 2017, 5:48:41 PM4/21/17
to Jeff Pollard, Machinekit
Thanks Jeff,

I've more or less resolved to go the way of a "beige box" with perhaps a Mesa card if get too antsy at the thought of timing jitter. To this end I went to a nearby recycler and acquired a Dell Optiplex 780 with 4G of RAM sans hard drive for the tender sum of 75 Canukstan pesos. It runs LinuxCNC just swell, though of course once I brought it home I can't find the parallel cable I'd have sworn I got with the mill. Seems nobody local carries those anymore, so it might be a couple of days until I can hook things up :/.

Siggi

On Fri, 21 Apr 2017 at 16:27 Jeff Pollard <xylot...@gmail.com> wrote:

Hi,

  If you want to use a BBB as the main CNC processor (including video/keyboard/mouse I/O), then you might want to take a look at one of the boards I sell:

http://xylotex.netfirms.com/OSCommerce/catalog/product_info.php?products_id=114

  It has two DB25 ports, with one made for PC CNC control, and the other with general I/O.  Both can be connected to DB25 breakout boards (BOBs).  The xylotex config file sets up the main port for X, Y, Z and A stepper with 4 inputs for limit switches and 3 outputs for relay signal control.  It has no provisions for the encoders that your system currently has.   Having said all of that, I have absolutely NO idea what the TAIG control you have requires as far as control signals.

Jeff
www.xylotex.com
--
You received this message because you are subscribed to a topic in the Google Groups "Machinekit" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/machinekit/bZI0e2eceQY/unsubscribe.
To unsubscribe from this group and all its topics, send an email to machinekit+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages