Hi, isochronous transfers are imho currently not supported by libusb. So it needs a new kernel driver (which isn't that much of a problem, agreed) and wouldn't be portable (also not a problem since emc isn't portable at all). So yes, this would be possible.
On the other hand i am not quite sure of isochronous provides a low enough latency. Low latency typically is what usb interrupt transfers were made for, especially if you want to report something back from the device to the host. This is probably what you want to report end switches. Till ----- original Nachricht -------- Betreff: Re: [Emc-developers] DIY USB interface Gesendet: Mo, 23. Apr 2007 Von: Kenneth Lerman<[EMAIL PROTECTED]> > Mario, > > It is my understanding that usb supports isochronous transfers with > guaranteed access to usb bandwidth and bounded latency. That would clearly > support realtime actions. > > The bandwidth is clearly high enough to support our requirements. It is not > clear (to me) whether usb would meet our latency requirements. > > Ken > > [EMAIL PROTECTED] > Mark Kenny Products Company, LLC > 55 Main Street Voice: (888)ISO-SEVO (888)476-7386 > Newtown, CT 06470 Fax: (203)426-9138 > http://www.MarkKenny.com > > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] Behalf Of Mario. > Sent: Monday, April 23, 2007 8:25 AM > To: EMC developers > Subject: Re: [Emc-developers] DIY USB interface > > > Kenneth... USB does not support realtime actions, so it is no direct > replacement. > > But I still see some advantages in the realtime core. And that is > precise timing. > > Easiest way how to find out how EMC works is to install it and find > out. Maybe only running live CD might help. Source codes and some > documentation is in there. There are many products - PCI and IDE cards > supported and used in EMC. How this might be edited/changed to use > with some USB device I don't know precisely. I will be returning to > work with EMC in a month or so, until then I have to do much less > interesting work/job. > > On 4/23/07, Kenneth Lerman <[EMAIL PROTECTED]> wrote: > > The place I see for USB in EMC is to replace the printer port solutions. > The > > advantage of USB would be that it is available on most machines, > including > > laptops, while printer ports are becoming less available. > > > > I understand that it is not what you had in mind. > > > > Ken > > > > [EMAIL PROTECTED] > > Mark Kenny Products Company, LLC > > 55 Main Street Voice: (888)ISO-SEVO (888)476-7386 > > Newtown, CT 06470 Fax: (203)426-9138 > > http://www.MarkKenny.com > > > > > > -----Original Message----- > > From: [EMAIL PROTECTED] > > [mailto:[EMAIL PROTECTED] Behalf Of Till > > Harbaum > > Sent: Monday, April 23, 2007 4:17 AM > > To: Mario.; EMC developers > > Subject: Re: [Emc-developers] DIY USB interface > > > > > > Hi, > > > > what do you mean by "enumerate a few times"? USB enumeration > > takes place only once. > > > > I don't think we need to discuss the basics of USB as i have built > several > > USB devices and have also written kernel drivers and libusb based user > space > > drivers for linux, windows and macos. So this all isn't a problem. > > > > The problem is that EMC just doesn't seem to be built to drive something > > like > > this. If i understand you correctly, EMC is tightly coupled to the real > time > > kernel > > which basically means that EMC isn't very modular. I was hoping that > there's > > some tiny real-time hardware layer under EMC and that i could just > replace > > this. > > > > EMC seems to be designed tightly around its main control functionality. > The > > PC incl. EMC and the motor controller forms one big control loop. And now > > you > > and the others are suggesting to integrate the USB into this loop and > keep > > the > > real time setup the way it currently is. > > > > IMHO this doesn't make sense at all. If you want to keep the real time > > kernel you > > can also stick to the printer port solutions. There's no real use for USB > > here, > > it will just add another layer of complexity and will cause additional > > trouble. I was > > hoping for a solution where i can move the entire main processing loop > into > > the usb device ... but i think you already understood that. > > > > Are there other linux cnc driver programs? Perhaps more simple ones? I > > really > > don't think that USB would be an advantage for the current EMC design you > > describe. Using USB would in fact make things worse. > > > > Regards, > > Till > > > > ----- original Nachricht -------- > > > > Betreff: Re: [Emc-developers] DIY USB interface > > Gesendet: Mo, 23. Apr 2007 > > Von: Mario.<[EMAIL PROTECTED]> > > > > > I dont't think it is entirely impossible and that hard. > > > You just need to enumerate a few times with the USB device and write > > > an interlayer software that will be the hardware part for the EMC. > > > Commands sent to the USB device have to be true commands, not just > > > single steps, and the feedback to the EMC needs some tuning too. > > > Depending on how much you aggregate the microfunctions into the sent > > > commands and how responsible your USB communication will be - the same > > > will be the success rate - the USB needs to respond quickly, so that > > > the software driver on PC will be able to correct its behavior. > > > > > > Since there are external controller boards and demuliplexers available > > > for use with EMC, it should too be possible to do with USB device with > > > some minor limitations - the USB is for toy devices, so I expect your > > > machine will be of the class, not a 5kW, 5 ton mill. > > > > > > I forgot the name of the few external controller boards that are > > > supported on EMC, but if you look at their drivers, you might get a > > > hint how to do that. > > > Learn more about the timers that are used in EMC2 and think about how > > > much time do you need between communication steps, etc. Typically, if > > > you would be putting out analog values, like the output of PID loop to > > > motor current control and have input of precisely measured motion > > > feedback, etc, you would only need the outer loop control, for say, > > > 100-200Hz interrupt rate. > > > > > > All you need is to know how to make an USB microcontroller program > > > with proper stack management and enumeration without an error. Also > > > you have to design it very responsible, quick to execute. PIC 18F or > > > the new PIC 24-bit code class with USB might be suitable for this due > > > to strict timing and exact time execution. > > > On the PC side you have to make some corrections to the output driver > > > in the EMC2 - it has to be able to tell how many steps to make, the > > > same for input. > > > > > > Mario. > > > > > > On 4/23/07, Till Harbaum / Lists <[EMAIL PROTECTED]> wrote: > > > > Hi, > > > > > > > > Am Montag 23 April 2007 schrieb John Kasunich: > > > > > But there are still issues. When you hit stop, does it stop NOW, > or > > > > > after it works its way thru the queued motion? If you are doing > > > > You have at least two choices here: a) send some special emergency > stop > > > > command that overrides the buffers or b) Have the interface handle > these > > > > directly and just report to the PC that this happened. > > > > > > > > > While that is possible, what you would end up with would not be > EMC. > > > It > > > > > would be a CNC controller based on a totally different > architecture. > > > > Sounds like too much work. > > > > > > > > Till > > > > > > > > > > > ------------------------------------------------------------------------- > > > > This SF.net email is sponsored by DB2 Express > > > > Download DB2 Express C - the FREE version of DB2 express and take > > > > control of your XML. No limits. Just data. Click to get it now. > > > > http://sourceforge.net/powerbar/db2/ > > > > _______________________________________________ > > > > Emc-developers mailing list > > > > Emc-developers@lists.sourceforge.net > > > > https://lists.sourceforge.net/lists/listinfo/emc-developers > > > > > > > > > > > ------------------------------------------------------------------------- > > > This SF.net email is sponsored by DB2 Express > > > Download DB2 Express C - the FREE version of DB2 express and take > > > control of your XML. No limits. Just data. Click to get it now. > > > http://sourceforge.net/powerbar/db2/ > > > _______________________________________________ > > > Emc-developers mailing list > > > Emc-developers@lists.sourceforge.net > > > https://lists.sourceforge.net/lists/listinfo/emc-developers > > > > > > > --- original Nachricht Ende ---- > > > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by DB2 Express > > Download DB2 Express C - the FREE version of DB2 express and take > > control of your XML. No limits. Just data. Click to get it now. > > http://sourceforge.net/powerbar/db2/ > > _______________________________________________ > > Emc-developers mailing list > > Emc-developers@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/emc-developers > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by DB2 Express > > Download DB2 Express C - the FREE version of DB2 express and take > > control of your XML. No limits. Just data. Click to get it now. > > http://sourceforge.net/powerbar/db2/ > > _______________________________________________ > > Emc-developers mailing list > > Emc-developers@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/emc-developers > > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > Emc-developers mailing list > Emc-developers@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/emc-developers > > ------------------------------------------------------------------------- > This SF.net email is sponsored by DB2 Express > Download DB2 Express C - the FREE version of DB2 express and take > control of your XML. No limits. Just data. Click to get it now. > http://sourceforge.net/powerbar/db2/ > _______________________________________________ > Emc-developers mailing list > Emc-developers@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/emc-developers > --- original Nachricht Ende ---- ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Emc-developers mailing list Emc-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-developers