[Emc-users] Setting subroutine path
Hi all, I am trying to put o-word subroutines in a different folder from nc_files. In the ini file (I tried testing on sim/axis.ini and sim/tkemc.ini) I have: PROGRAM_PREFIX = /home/emcuser/emc2/nc_files So under [RS274NGC] I entered: SUBROUTINE_PATH = /home/emcuser/emc2/subroutines And call it with: Oheadup CALL For example. If the subroutines (headup.ngc and headdown.ngc) are in nc_files, it works fine, but if I move them to subroutines, I get a file not found error either immediately under axis or when trying to run under tkemc. It is probably just a silly mistake on my part, but I sure don't see it. Thanks, Eric -- Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Setting subroutine path
Gene, et al, Is SUBROUTINE_PATH new to 2.5? I just noticed the reference I found was in the 2.5 version of the Integrator manual, but it does not appear in the 2.4 version. I am currently using 2.4.6 (or is it 2.4.7 reporting that it is 2.4.6). At any rate, I found it through a search, but see that the link on the main wiki page (http://wiki.linuxcnc.org/cgi-bin/wiki.pl) seems to be broken. In fact, the links to the Getting Started Guide, User Manual, Integrator Manual and French User Manual all appear to be broken. Is this a known issue? At any rate, for the time being I think I can just change the file attributes to require a sudo to change or delete the subroutine files. The main purpose of putting them into another file is to make sure they don't get deleted in the event someone goes through and starts cleaning up files in the nc_files folder. Thanks, Eric Unless that extra path you spec now works (it didn't as of about 2 days ago's 2.6.0 pre) any o word files you call, must be in the specified nc_files directory. Note that's only a semi-qualified 'must' as I have not attempted to make it use a complete /path/list/to/file.ngc, which may work if you don't make too many typu's with all that typing. :) -- Virtualization Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] PROGRAM_PREFIX
Erik, Thanks for the tip, but ultimately that has the same problem. For now I will just change the file attributes to require a sudo to edit or delete subroutines. The main purpose was to put them some place where they would not get accidentally deleted if someone was over zealous in cleaning up the nc_files folder. Thanks, Eric Until LinuxCNC supports separate directories directly, there is a workaround for both these use cases. Simply put the subroutine or other files in any desired directory, then place a link to each file in the $PROGRAM_PREFIX directory. e.g. for the latter use case: $ ln /home/emcuser/emc2/subroutines/mysub001.ngc /home/emcuser/emc2/nc_files (That's one line, but your mail client has probably wrapped it.) That hard link makes the file appear equally in both directories, though only one copy exists on disk. If one link is deleted, the one copy will still be in the other. If the two directories are on separate devices, you'll need a symlink instead, i.e. add -s after the ln. That link will remain afterwards, if the file it points to is deleted, and so is a little more work to maintain in that case. Hopefully there's something new in the above, for Lars or Eric. At least it is a way to do what they want, for now. The $PROGRAM_PREFIX directory is now only a funnel connecting to a thousand file directories, if desired. -- Virtualization Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Making my own custom gui or controlling software to command emc
Bart, Emcrsh is particularly suited for instances where you want to interface with LinuxCNC from non-Linux platforms or at least where you do not want to install other parts of LinuxCNC. It is a good option if you are prepared to write an interface from scratch. If your interface is to run on Linux, then it may be significantly less effort to simply modify one of the existing interfaces. Regards, Eric Hi, I'm quite new to emc but not tot cnc in general. For a new machine we build I'd like to write my own frontend to control the machine. Is emcrsh the recommended way to do this? I see a lot of nice commands over telnet which could surely help me out. Or is there another preferred way for programmers to access emc2 ? How does axis interface for example? -- Virtualization Cloud Management Using Capacity Planning Cloud computing makes use of virtualization - but cloud computing also focuses on allowing computing to be delivered as a service. http://www.accelacomm.com/jaw/sfnl/114/51521223/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] LAMP stack for robotics
Just an FYI, This article was recently posted via slashdot: http://www.xconomy.com/san-francisco/2012/03/29/can-willow-garages-linux-for -robots-spur-internet-scale-growth/?single_page=true quote That's one of the main arguments you'll hear from the engineers at Willow Garage, a unique startup in Menlo Park, CA, that's developing hardware and software for a new generation of personal robots. You can't name a single Internet company, they say, that would have succeeded if it had been forced to recreate all the basic tools underlying the Web, from the Linux operating system to the Apache HTTP server to the MySQL database system to the Python, Perl, and PHP programming languages-the ingredients of the so-called LAMP stack. Yet most robot companies still try to reinvent the wheel every time, building robots that require putting together a tangled mess of proprietary, one-off software systems. /quote Slashdot link: http://developers.slashdot.org/story/12/03/29/1325256/needed-a-lamp-stack-fo r-robotics?utm_source=rss1.0moreanonutm_medium=feed Linuxcnc was already mentioned in one of the early comments. Also interesting and perhaps applicable is the discussion about STEP-NC on the developers mailing list. Regards, Eric -- This SF email is sponsosred by: Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d-msazure ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Time delay on resume
Hi all, I have a tangential tool application with a pneumatically controlled 2 position Z axis. Thus I control the head up / head down, directly with digital I/O. I also have the head coming up and turning off automatically on a pause, stop or fault. That is all working fine. The one thing I have not figured out is how to introduce a delay (i.e. timedelay) on resume to give the head sufficient time to lower and turn on before motion resumes. I do not see pins on halui or motion for example, which would be usable for this function. Any suggestions? Thanks, Eric -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] linux 10.04 install from usb
Dave, How about this: https://help.ubuntu.com/community/Installation/FromUSBStick You should be able to use the Linuxcnc LiveCD as the ISO image. Failing that, install generic Ubuntu 10.04 to the USB, use it to install, then run the Linuxcnc install script as described here under If you prefer to start with the distributed Ubuntu CD: http://linuxcnc.org/index.php/english/download/21?task=view HTH, Eric Google is sometimes not my friend. Grump for an older guy. ;-) The idea is to install a linux from a live cd to at usb so I can get it on a D510MO. Since this board has no ide the route I think makes sense is: Download live iso from .ro site (done) Transfer iso to bootable usb. Boot from usb and install on a SATA drive. The usb is a 4G Lexar. Fdisk doesn't like it. I have managed to drag and drop at least most of the CD to the usb but that certainly doesn't make it bootable. There must be a reasonable way to do this from the command line. Here is the first stumbling block. dave@dsk:~$ cd /media dave@dsk:/media$ chmod 0777 -v -R -f Lexar mode of `Lexar' changed to 0777 (rwxrwxrwx) dave@dsk:/media$ fdisk /media/Lexar last_lba(): I don't know how to handle files with mode 40700 You will not be able to write the partition table. cfdisk simply reports no write perms. -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Setting coordinate systems
Hi all, The setting of the coordinate system (G53-g59.3) is not working the way I expected, and I am trying to figure out what I am doing wrong. I am running linuxcnc 2.5, BTW. After initialization and homing, if I issue: G53 G0 X0 Y0 It will correctly move to absolute machine 0, 0. This happens to be starting from machine zero, but no matter where it starts I also issue: G92 X0 Y0 I then set my coordinate systems programatically, for example: G10 L2 P2 X10 Y10 G10 L2 P3 X20 Y20 G10 L2 P4 X30 Y30 And then have an initial move as such: G56 G0 X0 Y0 It will correctly move to the offset for coordinate system 2 (10, 10). If I then run the program to completion, I can re-run it and it will run correctly with the appropriate offsets. However, if I stop the program in the middle and the issue: G53 G0 X0 Y0 It will again go to absolute machine 0, 0. However, if I restart the program above with the three G10 commands, it seems to ignore those offsets when it gets to: G56 G0 X0 Y0 Further, even rehoming and rerunning will not re-establish the offsets, although a complete reinitialization will. I have also tried playing with various permutations of G92 (G92.1, G92.2), in the event the G92 I did at the beginning is contributing to the problem, but that seems to make no difference either. Does anyone see anything obvious I am doing wrong. Thanks, Eric -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Setting coordinate systems
Hi all, Oops, I think I found it (haven't tested yet). I think I am off by one in P value. I don't understand why it worked the first time however. Regards, Eric Hi all, The setting of the coordinate system (G53-g59.3) is not working the way I expected, and I am trying to figure out what I am doing wrong. I am running linuxcnc 2.5, BTW. After initialization and homing, if I issue: G53 G0 X0 Y0 It will correctly move to absolute machine 0, 0. This happens to be starting from machine zero, but no matter where it starts I also issue: G92 X0 Y0 I then set my coordinate systems programatically, for example: G10 L2 P2 X10 Y10 G10 L2 P3 X20 Y20 G10 L2 P4 X30 Y30 And then have an initial move as such: G56 G0 X0 Y0 It will correctly move to the offset for coordinate system 2 (10, 10). If I then run the program to completion, I can re-run it and it will run correctly with the appropriate offsets. However, if I stop the program in the middle and the issue: G53 G0 X0 Y0 It will again go to absolute machine 0, 0. However, if I restart the program above with the three G10 commands, it seems to ignore those offsets when it gets to: G56 G0 X0 Y0 Further, even rehoming and rerunning will not re-establish the offsets, although a complete reinitialization will. I have also tried playing with various permutations of G92 (G92.1, G92.2), in the event the G92 I did at the beginning is contributing to the problem, but that seems to make no difference either. Does anyone see anything obvious I am doing wrong. Thanks, Eric -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Setting coordinate systems
Hi all, Oops again, just a typo on my part. I was using coordinate system 3, but erroneously referred to it is 2. So the P values are being used correctly and the problem remains. Regards, Eric Hi all, Oops, I think I found it (haven't tested yet). I think I am off by one in P value. I don't understand why it worked the first time however. Regards, Eric -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Setting coordinate systems
Jon, I am using the coordinate systems as a means of getting multiple tools offset in X and Y from each other so they can land on top of each other. IOW, do a pass with one tool, then apply the offsets of another tool but otherwise follow the same tool path. For example: G54 - Null Tool G55 - Basically a Stylus (no tangential axis) G56 - Tangential tool #1 G57 - Tangential tool #2 There are also home, sharpen and out of the way positions which are absolute, and these are the positions using machine coordinates, i.e. using commands of the form G53 G0 X0 Y0 or G54 G0 X0 Y0 Also the initial start point is generally set with machine absolute positions, so as not to be confused by the tool offset in effect. When the pattern is run, a G92 X0 Y0 is issued prior to a G54-G57, and even if the current location is absolute machine 0. I can understand the offsets (G54-57) getting cleared, etc. on a stop, but I do not understand why I cannot re-establish them with another G10 L2 ... Additionally, I am running a headless system with my own user interface, so I am not using Axis. The section of the manual you reference is exactly what I was working from. Thanks, Eric Why are you working in the machine coordinate system? I never do that, it is for LinuxCNC to know what the machine limits of travel are. I use the Axis touchoff button to set coords. There are what I consider to be quirks in the way LinuxCNC treats the workpiece coord systems, but if you use touchoff instead of G92 L2 Px then Axis handles these quirks. Otherwise, when a program is aborted or ends, the G92 L2 Px offsets are cleared. Axis resets these offsets as soon as LinuxCNC clears them, so you are unaware of this behavior. To my thinking, when I set a workpiece offset, I expect it to STAY set until I change it explicitly. There is a command that restores the cleared offsets, G92.3. You should read the user manual, around page 86 in : http://linuxcnc.org/docs/LinuxCNC_User_Manual.pdf -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Setting coordinate systems
Andy, You _could_ do that with tool offsets in the tool table. (I think). All tools have spaces for offsets in XYZUVW. Are you talking about tool.tbl in the config directory? It looks to me like you can only set tool length and diameter. Am I missing something? If I could do that this would be resolved very easily. Thanks, Eric -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Setting coordinate systems
Andy, No, that does seem wrong and strange. I wonder if it is a synch problem, one part of the code not updating because it thinks nothing has changed on the basis of an internal value but another part of the code getting the information from the not-updated section? I have used this basic technique to offset tools in the past without problem, which is why this is so strange. The biggest difference I can see is that this application makes extensive use of external named subroutines. I have controllable X,Y,A, and B axes, however Z is just a two position pneumatic air cylinder. Asserting the output, waiting for the head-up or head-down input, adding a dwell, etc. adds up to 5 or 6 lines of G-Code for every head up or head down, so I implemented them as named subroutines. It seems that no matter where I am in the execution of the main program, at the time of a stop, pause, etc. the line reporting back as the current line is invariably in one of these subroutines. This has caused some problems in my custom user interface, which I have mostly worked around, but have not dug into the EMC code to see what is really going on. I posted a question about this and how Axis dealt with it on the developers list a few weeks back but never saw a reply. Regards, Eric -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Setting coordinate systems
Andy, I do need to pay more attention to the change log. I waited for 2.5 for this application specifically for the ability to put named subroutines in their own folder. I did not realize the tool table functionality had changed in the previous version. Thanks, Eric Yes. Which LinuxCNC version are you using? The tool table format changed. http://wiki.linuxcnc.org/cgi-bin/wiki.pl?ToolTable -- atp If you can't fix it, you don't own it. http://www.ifixit.com/Manifesto -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Tool Offsets
Hi all, Per the Setting Coordinate Systems thread, I converted from using coordinate systems (G54-G59.3) and setting the offsets with G10 L2, to using the offsets specified in the tool table. Mostly it worked without a problem. The exception is when re-running a program without reloading it. The beginning of the program will have two lines similar to the following: T3 M6 G43 H3 If I just rerun, the tool offsets seem to be ignored, but if I do a reload of the same program it runs fine. Do I need to add a G43 H0 to the end of the program, is there another explanation for why the offsets are ignored when rerunning? Thanks, Eric -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Tool Offsets
Terry, I am strongly suspecting that it has something to do with named external subroutines. I have used coordinate systems (G54-59, G10 L2, etc.) extensively in the past without any problems. This is the first time I have used the tool table for X, Y, etc. offsets, but the problems I am encountering are similar enough to what I was seeing with coordinate systems that it seems it must be related. The main difference with this application is the extensive use of name subroutines. However there are no motion commands in any of these subroutines, they are mainly for asserting digital outputs, checking inputs, applying dwells, etc. This is on a production machine, so I have limited ability to run tests on it, but I have just put a box together for simulation purposes. I should be able to do some better problem isolation on it over the next couple days. I am open to ideas as to what to look for. Thanks, Eric G49 cancels G43 Se just nd the machine home at the end of the prog using: G28G91Z0.0 Y0.0 X0.0 You should not need to use G49 You must be doing something else wrong Start of every one of my progs look like this: T1M6 G54G90G0XxxYxxS500M3 G43H1Z.1M8 moves the tool down to .1 above the workpiece blah blah ends look like this: G28G91 Z0.0 send the Z home G28G91Y0.0 send the y home to put in a new part M30 -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Tool Offsets
Andy, I am not writing to the tool table with gcode, and I can post some code, but I have a question first. I modified the Sim Axis-9 configuration to simulate what I am doing on the real machine. When I run a program using external named subroutines I get one of two errors if I stop the program in the middle, do a motion like G53 G0 X0 Y0 And then run again without reloading. My question is, do named external subroutine files need to end with '%'. If I include a '%' at the end of the file, on rerunning I get an error: Bad character '%' used. If I delete the '%' from the end of the file, I get: File ended with no percent sign or program end. If I do a reload, I do not get this error. Thanks, Eric Can you show us the G-code? Are you writing to the tool table in G-code? I wonder if the software only writes to the tool file on exit? -- Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Setting up Hal and ini files for the parport
Alex, So you are back to EMC2? :) As I said earlier, a good place to start is the hal tutorial in the user's manual. See: http://www.linuxcnc.org/docs/EMC2_User_Manual.pdf You really need to go through the tutorial to understand how hal works, and in the process how to configure your system. While configuration is not as simple nor much like many other CNC systems, it is extremely powerful and flexible, hence allows you to do things which very few other systems can. I have not done much with EMC and steppers, so there may be a better reference, however look at the univstep configuration (config/univstep/univstep_io.hal). You will see commands such as newsig and linksp. Those are the commands which are creating signals, assigning signals to pins, etc. in this case for the Pico systems board. Specifically: newsig Xminlim bit newsig Xmaxlim bit newsig Xhome bit Which is assigning signals for the home and end of travel limits for the X axis. linksp Xminlim = ppmc.0.din.01.in linksp Xmaxlim = ppmc.0.din.02.in linksp Xhome = ppmc.0.din.00.in Which links physical inputs to the above signals. linksp Xminlim = axis.0.neg-lim-sw-in linksp Xmaxlim = axis.0.pos-lim-sw-in linksp Xhome = axis.0.home-sw-in Which links those signals to the respective axis pins. IOW, ppmc.0.din.01.in = Xminlim = axis.0.neg-lim-sw-in The same basic principles apply for any system, but the I/O has to be assigned based on what drivers, etc. are loaded. In the univstep configuration, they are found in the file univstep_load.hal. The most important one to notice is loadrt hal_ppmc which is loading the pico system driver. For the parallel port there will be a similar command such as loadrt hal_parport. Once the driver is loaded you can start assigning signals, etc. to it. This is where halcmd comes in handy, because you can run a configuration such as stepper_inch, then run halcmd to show the available signals, pins and parameters, and hence what is available, which determines what you can assign and link to. Regards, Eric I tried to read all the relevant information regarding setting up Hal and ini files for configuring the parport in ouput mode according to the manual. For examle I couldn't find any reference for setting up home switches. Configuring appears very complex to me, though in another cnc control programs I tried for Dos and Windows, it was a snap (excluding TCNC). In the manual there are 2 modes of operations of the parport - input and output. In the output mode it will take in 5 inputs - 4 can be designated for homing axices and 1 for limit switch. Why don't you provide a sample Hal and INI configurations for these 2 modes of the parport, to make life easier for people like me who are having a hard time trying to figure it out? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Command-line interface to EMC2
Glenn, See if this is of any value. I haven't checked the released version lately, so this may only be in head at this time. But do a CVS check out and compile of 'HEAD'. In there you will find a program called emcrsh (in bin). It basically supports the same functions as emcsh only over a telnet session. To use it with an existing configuration and GUI, in the configuration you are using, simply add loadusr emcrsh to the end of core_servo.hal or core_stepper.hal for example. To use it in place of any GUI, copy bin/emcrsh over bin/emcsh, and in the ini file set display to tkemc. Then emcrsh will run in place of any GUI. Once it is running you can open a telnet session from the local machine as follows: telnet localhost 5007 Or from a remote machine by: telnet EMC computer IP or DNS address 5007 This will establish a telnet session with EMC. Enter 'help' or 'help command' to show all of the commands which are supported. Some important ones are: Hello password client name version Example: hello EMC emcuser 1.0 The default password is 'EMC', the client name can be anything, but I typically use the network name of the computer establishing the telnet session, and the only version which currently exists is '1.0'. A successful hello exchange is required before emcrsh will respond to any commands other than help and quit. This will allow you to get (see help get) information from EMC. By default, 'echo' is on, so the first thing you will probably want to do is: set echo off Also, when manually entering commands through telnet, you can get more meaningful error messages by turning verbose on, as follows: set verbose on If you want to change any EMC values, then you must enable the session as the session in control as follows: set enable password Example: set enable EMCTOO Where 'EMCTOO' is the default enable password. Emcrsh supports multiple simultaneous connections, but only allows one to be enabled for control at any given time. A successful enable will disable any other session having control. Note: It does not affect any of the GUIs specified by display in the ini files and does not take control away from them, only other telnet sessions. Let me know if that is of any help. Regards, Eric Several months ago I asked a question about remote control of EMC. I received many excellent responses - thank you all. As the system architecture progresses, it has become clear (or clearer) that what I need is the ability run EMC2 from within a Python shell program (or supervisory program) running on the same computer as EMC2. The shell program will start/stop EMC2 (not necessary, but nice-to-have), deliver an *.ngc file to EMC2 and have EMC2 execute that file (necessary) and get status reports from EMC2 (necessary). I have researched emcsh and emcsvr , but have come to dead-ends on both topics. Does anyone have any ideas on where to start my research? Thanks! I sense that I am just emulating a GUI (or precluding the use of one), of which there are many excellent ones that have been developed for EMC2. - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Command-line interface to EMC2
Glenn, There are a number of commands which will give you meaningful status information. They include: get estop Returns On | Off for whether the machine is in estop get machine Returns On | Off for whether the machine state is on or off. get program Returns the name of the currently loaded program get mode Returns manual | auto | mdi for the current operating mode get program_status Returns idle | running | paused for program run state get step Returns the current step (line of G-Code) executing. Again enter: help get To see a complete list of all commands supported by get. Regards, Eric While EMC is processing a file, how do I get its status. I am looking for Busy, Done, etc. EMCRSH and AXIS-REMOTE do not seem to have any appropriate commands, unless I am overlooking something. - Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Hardware step generator for 5I20
Peter, Great news. Will you be able to intermix steppers and PWMs on a single board? If I understand correctly your statement on PWM, that should be adequate for my needs. For my immediate project, I need three axes of steppers and one unidirectional PWM (no encoder) with a frequency between 5Khz and 25Khz. I also recently received a development m5i20 board for this project, and would be glad to help out with the EMC driver, testing, or anywhere else I can assist. Regards, Eric Finally had a bit of free time to work on this. Still needs testing and more features but here whats there so far: 12 step gens. Each stepgen is 28 bit DDS + FIFO + preset/residue clear logic Step gens overlaid on basic I/O port, Step generators can be individually enabled, or I/O pins left as simple I/O. So for example if the stepgens are all disabled you have a 72 bit I/O port. Step/DIR or quadature output selectable per generator. Step gens are buffered (16 deep x 32 bit wide FIFOs each). This means that real time is not required (at least for step generation), For example at a basic clock of 8 MHz and a frame size (frame size is how many additions are done to step generator DDS per FIFO entry) of 8000, the step gen will consume one FIFO entry per mSec. Since the FIFOs are 16 deep, if we use interrupts or just poll the FIFOhalf full register the interrupt latency or minimum polling time would ge 8 mSec (125 Hz). Also the basic local bus interface has been changed to be 32 bit memory only, and has support for burst transfer mode. Things to do: Add quadrature counters (probably just graft in existing one) Add simplified PWM gens (no fancy signed/unsigned modes) Add SPI channels (for general use plus for our I/O expander and 7I41 stepper interface use SPI) - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Information Display Panel
Jack, Can you provide a link to the monitor you are referring to. I looked at the Sharp web site (http://www.sharpusa.com) and was not able to find an 8.4 monitor other than those using standard VGA, etc. inputs, for which no additional drivers are necessary. Alternately, I recently checked into head an interface which supports 4 line x 20 character displays such as those available from matrix orbital (http://www.matrixorbital.com/index.php?cName=lcd-mx4-series) and Crystalfontz (http://www.crystalfontz.com/products/index-usb.html). The interface is dependent upon lcdproc, which provides drivers for these and many other LCD displays. It is certainly not ready for prime time, but you can look at it by using the ncurses interface (I can send you the configuration if necessary). You will need to do a checkout and compile of head, since that is the only place it currently exists. Then either start LCDd (LCDProc Daemon, see lcdproc instructions) manually or put it into the startup script. Lastly, in one of your hal files, add the following line: loadusr emclcd And then run EMC normally. It is still in its early stages, so there is some other information I would need to supply, like key mappings. In a 4 line x 20 character display it provides information such as the current program loaded, dynamic X, Y, Z positions, progress bar, run, pause / resume, stop, step, etc. functions, as well as a menuing system for accessing other parameters and settings. Let me know if this is of interest to you and I can provide additional information. Regards, Eric I've been looking for a small flat panel monitor for mounting on my machine control panel for my EMC Bridgeport controller. Sharp has an 8.4 inch LCD panel that would be perfect except a driver or interface board would be needed to interface with it. I haven't been able to find any boards. Does anyone know of any or have any suggestions for finding a small flat panel at a reasonable cost? - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Information Display Panel
The interface is dependent upon lcdproc, which provides drivers for these and many other LCD displays. Oops, I forgot the link, http://www.lcdproc.org/ Regards, Eric - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Hexapod questions
Hi all, What is the maturity of the Hexapod configuration under EMC2? I have never done anything with hexapods, but I was asked about the feasibility of using EMC2 for implementing a control system for a hexapod. I have not seen the actual unit, but what I have been told is that it is from a university lab, is basically electrically and mechanically sound, but that they have never managed to get the control system working. Is the Hexapod configuration and kinematics (genhexkins) fairly universal, or would there still be quite a bit to do to adapt to a specific configuration / orientation? The readme in the hexapod sim configuration references a Minitetra type. What is a minitetra type, and what other types are there? The only orientation I am familiar with has three pairs of axes centered 120 degrees from each-other. I was not aware of any other orientations. Also, from the standpoint of drivers, I believe the six motors are servo motors. Can I use two Mesa m5i20 controllers with the servo FPGA configuration for controlling the six axes? Is there any limitation in the mesa driver which would not permit the use of two boards simultaneously? Regards, Eric - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Hexapod questions
John, I'm sure it would not be a turnkey install but clever enough people could certainly get it working. Things like homing will be the fun parts. Basic hexapod kinematics are in there, and were used back in the NIST days. They'd need some porting effort to interface with the newer motion controller, but the tough math parts should be fine. Do you have any idea of what and how involved porting of kinematics will be? And ported from where, EMC1 or the original NIST code? Do you know if anyone has actually tried to do a hexapod with EMC2? I am just trying to get a feel for what I may be getting myself into here. :) I'm not entirely sure about the current driver, but I think it will handle multiple cards. The new driver that I'm (slowly) working on will definitely handle more than one card. It will also allow for a wider variety of stuff. I'm sure a 6 axis servo configuration could be done with a single board and two 7i33 breakouts. Depends on your time frame though, I got sidetracked into a bunch of emc2.1 stuff, and am only now getting back to the 5i20. (I have some docs to write up tonight, then I hope to resume 5i20 work this evening.) Yea, I am really interested in that too, and if it is ready would probably be the way to go, because otherwise I think I there is sufficient I/O on a single m5i20. If I can give you a hand either with testing the driver, or if there is some part you would like to split off, please let me know. I currently have a system configured with an m5i20 available. I also have the Xilinx software loaded on another machine, although I have not gotten very far in playing with it. Regards, Eric - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.phpp=sourceforgeCID=DEVDEV ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Effects of mode changes
Hi all, I have a couple of questions related to changing modes for various functions in my user interface. These use basically the calls within emcsh. 1 If in MDI mode I issue G92 X0 Y0 Z0, then open a new Gcode file, which also calls TaskPlanInit and sets the mode to Auto, any GCode entered thereafter reverts to absolute coordinates, rather than as zeroed by the G92. Is it the TaskPlanInit which does this, or setting mode to Auto? It seems I have to call TaskPlanInit anytime I load a new Gcode file. There isn't anything really wrong with this, only what the appropriate sequence is in opening a new Gcode file and what the expected behavior should be. 2 Similarly, if I issue S3000 M3 in MDI mode, and then jog an axis which requires setting the mode to manual, the spindle turns off as soon as I start to jog. I assume that is from changing the mode from MDI to manual. Is there a way to issue the jog command which does not stop the spindle. 3 If I have an estop while running a program and the tool is in the material when the estop occurs, when I try to reapply power the axis will jump to some commanded position following the estop. Since there is a brake on Z, which gets set on estop, I cannot manually lift the Z axis from the material. I have, however, an Estop sense input. Is there a HAL pin I can assign the estop sense input to so that following a machine on, no motion will occur. While I have not implemented halui, I see it has pins halui.estop.activate and halui.estop.reset. Would these be the appropriate pins, or is there a means of achieving the same thing without using halui? Regards, Eric - 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-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Probing
Hi all, In reading about the probe function it looks to do something close to what I would like to do with a touch plate. This touch plate is put on top of the material and Z is lowered until the tool touches the plate, which completes the circuit and turns on an input. When this occurs, I would like to do the equivalent of a G92 Z0.375 (the pad is 3/8) or some other means of establishing this point as the top of the material. Is there a way to use the probe function, or any other means of performing this? Regards, Eric - 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-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Probing
John, Yes, I already have a home, and I am trying to do exactly as you say, establish an offset coordinate system using the touch plate. Regards, Eric It sounds like you are trying to home to the touch plate... In that case, what if you wired the touch plate up as a home switch for the Z axis? Or do you already have a real home switch, and simply want to establish an offset coordinate system using the touch plate? - 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-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Proper implementation of Estop - was Effects of mode changes
Chris (and John), Thanks for the replies, I have rather limited internet access at the moment, so I am a little slow in responding. I don't quite understand what you're saying. When in machine off state, the commanded position tracks the actual position so you can (for instance) use handwheels and not get a jump when you go to machine on state. If this is not working correctly for you please say how we can reproduce it (and in what version of emc). The EMC version is EMC2 2.2 pre-release. Here is the sequence of events I am getting. I am using a banner estop module which requires two inputs within 100ms to arm, and then a one-shot to enable (clear estop condition). Once this is done, the only thing remaining to run the machine is a machine on. Thus, once I am at machine on, I start a program, which initially does a plunge followed by XY motion doing the routing. If I hit the estop at this point, the machine of course stops. The program step is also set to the end of the program. I then repeat the arming sequence by releasing the estop push button, arming the banner module, and sending the one-shot. Again all that is remaining is the machine on. When I do a machine on, the head will jump to a new position, often significant away from where it stopped. I have not figured out yet what position it is going to. But if I actually had a tool and material, it would likely break the tool or damage the material. This should be the relevant parts of the hal file handling the estop: # This activates the banner estop module newsig EstopWrite bit linksp EstopWrite = m5i20.0.out-13 linksp EstopWrite = m5i20.0.out-14 linkps iocontrol.0.user-enable-out = EstopWrite # This is the estop sense logic newsig EstopSense bit linkpp debounce.0.3.in = m5i20.0.in-04-not linksp EstopSense = debounce.0.3.out linksp EstopSense = iocontrol.0.emc-enable-in Regards, Eric - 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-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] hexapod
Dirk, As far as I know hexapod code is in EMC2, but does it (still) work? Back in march there where some mails about it. Unfontunately there was no succes story follow up. Is there any way to test the hexapod code without building the real thing? How is the machinecode handled? I couldn't find anything about a hexapod postprocessor. Does EMC2 translate normal, 3, 4 or 5 axis code to something the hexapod can work with? I asked about that a short time ago. I know someone that got a hexapod out of a university lab and is looking for a control system, since they never managed to get that part working sufficiently well. I have not heard anything further as to whether he intended to proceed. Thus I don't have any further hands on experience. At any rate, John K. responded as follows when I asked about hexapod support: I'm sure it would not be a turnkey install but clever enough people could certainly get it working. Things like homing will be the fun parts. Basic hexapod kinematics are in there, and were used back in the NIST days. They'd need some porting effort to interface with the newer motion controller, but the tough math parts should be fine. As for the machine code, a hexapod uses the same G-Code as any other system. What the G-Code coordinate system specifies is a point in space (Z, Y, Z) and a tool orientation to get to that point in space (A, B, C). In simple systems, the kinematics module trivkins (trivial kinematics) just does a one to one assignment between those coordinates and the associated axes. There is a special kinematics module for hexapods named genhexkins which does the translation between the spatial / orientation coordinates and the axis orientation for a hexapod. For a simpler example of the principle, look at rotatekins, which simply takes a traditional 90 degree X/Y system and rotates it 45 degrees. Thus in response to a command such as: G1 X10 F50 Both the X axis and Y axis will move in equal amounts, resulting in a tool path rotated 45 degrees from the direction of travel of the X and Y axes. A hexapod is just a more complicated version of this same principle. Regards, Eric - 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-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Soft Limits
John, Prior to and during homing, the soft limits are set to current position +/- total length of axis (length of axis is the difference between the soft limits in the ini file. That means the home sequence should run into the physical ends of the axis before it hits the soft limit, unless the values in the ini file are grossly wrong. Once an axis is homed, the soft limits are absolute, based on the ini file values. You mentioned below that EMC will prevent you from getting within 0.1% of either limit. My X axis length is 76 and Y is 120, thus 0.076 and 0.120 respectively. Those would seem to be about the points the soft limit is being triggered when homing. I had played with several ways of setting the soft limits, like setting the homes for X and Y at 0.2 off the limit switches, and setting that position as 0.0, hence the soft limits would go from 0 - 75.6 and 0 to 119.6 respectively, but to simplify things, I set the soft limits to the hard limits. In all but the latest CVS, EMC will prevent you from getting closer than 0.1% of the total axis length of either limit. That doesn't sound like your situation, since nowhere near the limit seems like a lot more than 0.1%. (0.1% of a 20 long axis is only 0.020.) Last night after a discussion on IRC, I recoded the soft limits. You can now go all the way to the limits, but not beyond. Reaching the limits is not treated as a fault, it just stops moving. Going beyond the limits is a fault, but that is hard to do because jogs and other motion commands are checked before they are issued. At the moment the only way I know of to get that fault is to issue an arc command with both endpoints inside the limit but some part of the arc outside the limit. (Eventually we will improve the checking, and even that arc command will be caught before the move starts.) That makes a lot of sense, but I thought I had figured that out, in that it was happening with the Z axis. I would generally encounter this problem after issuing A G92 or similar command, so it is possible I am still getting fooled by Z, and thinking it was X or Y which was tripping the soft limit (hence, nowhere near the soft limits). I think I know what to look for on the second part, still not quite sure what is going on with homing, but I will do some more testing. Thanks, Eric - 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-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Installing emc2 on Compact Flash drive
Chris, I have EMC2 running under Kubuntu and in just under 2 GB, although I used a 4GB flash IDE drive. Very easy install actually. All I did was to temporarily install an IDE CD-ROM drive, do a standard CD install of Kubuntu, then install EMC2 from the network connection (Internet). The only differences from the standard EMC2 install is to do a manual chmod on the install script, and then run it manually from a terminal session. Without uninstalling anything it comes in a little under 2GB. Regards, Eric This is an informative thread only, but I got an installation of emc2 on a 2GB compact flash drive which plugs into my IDE on my motherboard. I have an all solid state emc2 controller with wireless network and card reader. Pretty slick. I plan on getting a small touch screen and keyboard to mount on the machine too so its all self countained. To get emc2 ubuntu live cd to install on the flash took some work. The min installation is just under 3GB. I first installed on a 10GB HD, then uninstalled openoffice and other unneeded apps. Then shrunk the partition, direct copied (dd) the partition to the CF card. The CF card already had a partitioned swap and identical sized linux part that I created. Reinstalled GRUB to the MBR on the CF and it worked! Chances are, you could probably do the same thing on a 2GB USB Flash Drive if your motherboard supports USB Flash Boot (most modern ones do). You would definitely need 2GB tho, my linux part is 93% used right now! Not much space left. (There are probably lots more useless stuff that I can remove but interdepedancy with gnome makes it tough, such as the sounds.) - Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Installing emc2 on Compact Flash drive
Colin, Oops, sorry, I of course meant Colin not Chris. Regards, Eric Chris, snip - Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Running EMC2 from another, local app
Glenn, Do you have the following in one of the hal files for the configuration you are running: loadusr emcrsh If you do not include that, then you will get the indicated error since the application to respond to your telnet session is not running. I don't recall whether the latest thing I have run is v2.2.2 or v2.2.3, but I just downloaded the latest version a couple of weeks back, and it was working then. I will try it tonight and make sure it is working. I also know that Chris is about to release a new version, but I have not seen that it has actually been released yet. I need to add some online documentation for that utility, it is still mainly within the c source files. Regards, Eric Awhile back, EMC2 v2.1.1, I was successful in commanding EMC2 from a terminal window using commands such as 'telnet localhost 5007' and 'axis-remote'. 'Telnet' opens a variety of commands to EMC2 (through emcrsh) and 'axis-remote' allows shutdown (and a just few others). Now, with v2.2.3, telnet is not working. Here is what I get (I first start 'emc' in another terminal): ~$ telnet localhost 5007 Trying 127.0.0.1... telnet: Unable to connect to remote host: Connection refused ~$ I have searched wiki and linuxcnc for 'telnet' and 'emcrsh', but to no avail. Also, I thought, AXIS communicates with EMC2 via telnet? Any help is appreciated. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] EMC list troubles, and thanks, Gene Heskett!
Gary, Some band width providers will block socket 25 as a measure to cut down on spam. When you receive mail, that goes through another service (POP3 is the most common) which is on a different port (110 for POP). This can explain why you are able to receive, but not send. The way to test this is to do the following in a terminal session (command prompt on Windoze): telnet SMTP server name 25 The SMTP server name is the one you set up for outgoing mail on your [EMAIL PROTECTED] email account and '25' specifies the SMTP socket. If the connection times out, then socket 25 is being blocked. If you get a telnet session (it should start 220 SMTP Server name...) then you have a different problem. Additionally, if this is the problem, then you should not be able to send to any email address, not just this list. Having said that, I also have Verizon at home and it is not blocking socket 25 for me. Regards, Eric I set up an account for this list - [EMAIL PROTECTED] - through my host, but couldn't reply to the confirmation email from Thunderbird on Linux at home. It would send, and go into my outbox, but nothing would ever come of it. I had to click through to the site (from Thunderbird), and confirm it there. I then couldn't send, nor reply to any message ever from Thunderbird, though I tried several times to do both over the past few weeks, hoping it would finally take. It would, however, always let me send, and reply from the web interface. I'm not sure why, as it's the same account - just a different interface on my end, and a different outbound server (verizon at home / probably my host - hostrocket - at work). Thunderbird was receiving every list message, including the ones I'd sent through the web interface. Every message sent through the web version always made it, and promptly. Clearly, the Verizon server's version of my mail was just being dropped, probably by the list, as I've not had that problem sending mail anywhere else, and have for years now, including to about 5 other list serves. Anyway, I just thought I'd mention this, with details, in case anyone in here has power over these things. Maybe it's just a flipped switch, or someone's chair is on the internet cable ;) Also, a big thanks to Gene Heskett for answering my RTAPI error question from last night. I forgot about my mail troubles, and downloaded the messages into Thunderbird this morning, and of course, can't reply to that one now from in there. It would seem I can use this new Gmail address from now on, so I'm moving to this account, and dumping the cnc@ address from my host. I use Gmail daily anyway, so it's not a big deal, but it's frustrating that I can't use any personal email through my own server. I may have more questions about RTAPI issues, but I'll start a new thread with this address should it come to that. Thanks again. -Gary - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] EMC with Galil Ethernet motion controller
Eduardo, EMC will not work with hardware such as the Galil controller because EMC needs to directly handle the real-time control, including I/O, stepper pulse generation, closed loop servo control, etc. The Galil controller, OTOH wants to handle the real time control to offload it from non-real time operating systems such as Windows, and does not expose a low level interface as needed by EMC. Additionally, the Galil controller is fairly expensive (relative to the hardware typically used with EMC) because it has a lot of on board intelligence and features, however EMC has no means for taking advantage of these features. If you want to use EMC, the best approach would be to use any of the currently supported hardware, a list of which can be found here: http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?EMC2_Supported_Hardware Regards, Eric Anyone using EMC with Galil DMC40xx series controllers ? I'm building a five axis mill and would like to use EMC with Galil's DMC 4080. Any info will be helpful. - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Differental Input to PWM
Hi all, Note: Reposted with smaller attachment. I am trying to read an RS422 differential input and convert it to an analog based on the duty cycle, using a Mesa m5i20 Anything I/O board. Provided this post is under the maximum size allowed, the schematic is attached. I really only have access to the section labeled CABLE TO RF AMP INTERFACE CONNECTOR, so I can't at this point directly access the Pulse Generator. I wrote a simple component to convert PWM duty cycle to an analog (pwmtoa) which can be represented as follows: Bias Gain | | |__|___ | | Enable | | | | Out In | | |_| Where Enable and In are bits, and Bias, Gain and Out are floats. Under the current implementation, it just maintains a running average of the last 100 samples and outputs the average on time (0.0 to 1.0). When using a signal generator this component seems to be working quite well, at least for my purposes (error +/- 1% and latency of a couple msecs, which is more than adequate for my purposes). I set the base period and servo period out of phase with the signal (2kz) to make sure it does not keep sampling at the same point in the wave form. What I don't understand is how to covert this differential signal to single ended. I can see the differential signal on a scope (real one, not halscope), but when I try to reference the signal, or the not signal to ground I get nothing, either on the scope or as an input to the m5i20. Can anyone enlighten me on how to read this type of signal. Thanks, Eric attachment: RS422.jpg- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Mesa 7I33 Aux Power
Hi all, I am getting a large voltage drop when I connect the analog outputs from the 7I33 to the load. With no load they show the correct voltages. The Mesa manual states Due to power supply limitations, The 7I33 has limited DC output drive capability and should not have loads of less than 5K Ohms on its analog outputs. The load is 10K, which seems to indicate that it should work. In fact I have had this hooked up to a supposedly identical system and it does work. My question is, if I add an Aux 5V supply (to 4 pin header P1) will that help with the DC output drive capacity of the Analogs? Thanks, Eric - Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Mesa 7I33 Aux Power
Peter, I think that agrees with what I am seeing. I measured the load and in fact it is 20K ohm. I also tried an AUX 5 V supply, and as John said, it made almost no difference (went up by about 1/2 mA). The 5V looks to be good, there is other general I/O which all are working fine. I also connected a 9V battery directly to the load, and that does work. So it appears to be related to the current, although there is a big difference between 20 the mA available from the Mesa board and that available in a 9V battery. Thanks, Eric With all full scale outputs into 10K thats only 4 mA max from the +-OP amp supply. The +- OP amp power supply is capable of about 20 mA. Either its a bad 7I33, Your load is more than expected, or you do have a 5V power droop. I would check the 5V at the 7I33 card first. - Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Another Mesa question
Steve, How would an external pull up and pull down resisters work? What differentiates the startup state from a controlled assertion of the output? Thanks, Eric You can use external pull-up and pull-down resistors to set pin state. I'm pretty sure that is the only way to set outputs the way you want during early boot. You can also use a relay or charge pump in the E-Stop chain - that should prevent anything from happening on the machine before EMC is running. - Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Vital System Error
Glenn, The VTI configuration is for the Vigilant Technologies Inc (Vigilant Products) board. I believe you will find the Vital systems configuration under motenc. Regards, Eric I have loaded my box with Ubuntu and EMC2 following the instructions provided on the download page. I was able to get into the Sim config with no problems. I have a Vital Systems Motenc-lite board and when I pick the VTI config, I get the following error. Debug file information: insmod: error inserting '/usr/realtime-2.6.15-magma/modules/emc2/hal_vti.ko': -1 No such device vti_motion.hal:5: exit value: 1 vti_motion.hal:5: insmod failed, returned -1 PID TTY STAT TIME COMMAND Stopping realtime threads Unloading hal components I looked for the obvious, but I am a total EMC2 and Linux noob, can someone point me in the right direction? - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Manually loading motmod
Alex, John, Ok, it is obvious now. The missing symbols were kinematicsType, kinematicsInverse, and kinematicsForward, which all are defined on the subsequent line when exported with halcmd save. Specifically: loadrt trivkins Thus one can't do a halcmd save and then load the saved text with halcmd source, without checking the ordering, although some basic ordering is performed by the way it groups things into sections. Thanks, Eric You can check dmesg for the symbol missing.. the source for motmod is in emc2/src/emc/motion/*.c|h It gets built from a couple of files.. Anyways, if it works by running emc2 then the module is fine, and you're missing something (dmesg will shed lights there) - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Mini-itx Control
Kirk, I have had trouble getting Linux to run on my C3 ITX board, but that was quite a while ago. I would be interested in knowing if anyone has gotten EMC2 or Linux to run on one of these. It would make a nice low power router/gateway or EMC2 remote. I have had good success using the Via C7 mini-itx boards (see: http://www.mini-box.com/Hybrid-C7-1-5G?sc=8category=99). The main problem I had was between some power supplies and the IDE Flash module (4 GB) I was using. Changing either the power supply or the flash module has remedied the problem. I talked to the PS manufacturer, and the problem seems to be with the rise time of the 5V (IDE bus) relative to the 12V which powers the flash module. The result was that the system did not boot reliably. The PS manufacturer suggested putting a cap on the 5V (I tried once without success), but changing to a different flash module fixed the problem for me, so I have not re-investigated. I use a riser card for the Mesa 5i20 board. The first enclosure I used was from mini-box, but the Mesa board did not mount very well, so I went to a Travla enclosure which does a better job of accommodating the Mesa board and comes with panel mount brackets. I was also able to get EMC to run under the smaller footprint Xubuntu on this board. Real simple actually, all that was really required was to run the install script manually. Regards, Eric - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Pendant with LCD display
Andrew, It does basically work, but there are some issues with the lcdproc software which it uses. What is checked in works with the curses driver. I have just recently worked out the bugs with the Matrix-Orbital driver, but it requires patching the MO driver in the lcdproc software. The main problem is with seeing the key up events, which the driver does not seem to support. Further, the ini file which provides the key definitions does not appear to be case sensitive. The Matrix-Orbital display uses upper case and lower case keys to indicate key press and key release (i.e. 'A' will be returned for key 1 pressed, and 'a' will be returned for key 1 released). Since the ini file is not case sensitive, 'A' and 'a' are treated exactly the same, thus key press is indistinguishable from key release. The key up events are used for functions like continuous mode jogging, where jog starts on key press, and stops on key release. The responsiveness is actually pretty good. I patched the MO driver so that it returns a different value for key press than key release, but did not look into a more generic solution across all drivers which would involve making the key definitions case sensitive (but I suspect that would have other side effects, and therefore the reason it was not done in the first place). I have not at this point contacted the lcdproc developers regarding this problem. If you intend to use something other than MO, then that driver will need some looking into, because it is likely to have the same problem with key up events. There is also a potential issue with other drivers as far as throttling the communications rate with lcdproc (communication occurs over a standard TCP/IP socket). With the curses driver, no throttling was required. But when connected to the MO I had to introduce small delays, particularly at initialization when all of the screens load, to eliminate overrun errors. This delay is currently hard coded, and I do not know if this will be sufficient when using different processor speeds or different drivers. At the least I need to make the delay a user definable parameter. The latest code has not been checked in simply because I have not been able to do a developer check-in. I thought this was the same computer I had used previously, but apparently that is not the case. I need to ask Chris to see if he would be kind enough to update cvs with this computers id_dsa.pub file. Getting it working should be fairly straight forward, except you will need to work from trunk, and the possibility of needing to patch the LCD display driver. No patch is required if you just want to use the curses driver. There is also an ini file which needs a small amount of editing. Again very little if using the curses driver, but you must at least add the key definitions when using any other driver. Another annoyance of the lcdproc implementation is that the curses driver will do a straight pass-through for any undefined keys (entered from the keyboard). The other drivers (as far as I know) only pass through the keys explicitly defined in the ini file. At any rate, download and install lcdproc from here: http://www.lcdproc.com/download.php3 There are several options on how to get it running. For development purposes, I start and stop it manually, but it can also be installed as a daemon starting on boot. Once the appropriate driver is configured and lcdproc is running, to get it running you need to add a single line to your hal file as follows: loadusr emclcd Regards, Eric Hello, I have been looking through the archives and have found a brief discussion on 'emclcd' - An informational display, on an external small lcd. Did anyone get this to work??? I would love to build a remote pendant (serial) with all the buttons and mpg's etc etc but have a LCD display with axis positions and any other info that I can dream up. Regards Andrew - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] SheetCam TNG V0.0.24 for Linux released
Les, Sorry to report, but loading sheetcam seems to have severely affected packaging functions (apt-get, synaptic, etc). Both the packages sheetcamlibs and sheetcam installed with errors, but sheetcam itself seems to be working. The problem is, synaptic, apt-get, etc. now do not. I am running a fresh install of Ubuntu 6.06 workstation. The only other application installed since the install of the OS was EMC. If I run synaptic, or apt-get, I continually get the error E: The package sheetcamlibs needs to be reinstalled, but I cannot find an archive for it. It then prevents the installing, removing etc. of any other packages. Synaptic further gives an error of E: Internal error opening cache(1). Please report. Thereafter synaptic lists no packages and in the status bar shows: 0 packages listed, -1 installed, 0 broken. I have also been equally unsuccessful in removing sheetcamlibs and sheetcam, which again fail on the same message. Any advice appreciated. Regards, Eric I have just uploaded the Linux version of 0.0.24 to www.sheetcam.com. This release now comes as a Debian package (.deb). This covers all of the Debian derivatives such as Ubuntu, Knoppix etc. If you can't use .debs then let me know and I'll see what I can sort out. I do intend to support RPMs in the near future. In many distros, simply clicking on the package in your browser will install it. The Linux version comes as two packages, the libraries and the application files. The libraries (sheetcamlibs-2.8.7.deb) need to be installed first. Once they are installed you should not have to install them again for quite a while. The application, SheetCamTNG-0.0.24.deb will change with every release. If you already have the Autopackage version installed, here is how to uninstall it: Open a terminal. In Ubunto it is in Applications-Accessories-Terminal. Enter the following: package remove SheetCamTNG package remove wxlualibs package remove wxgtk If you want to remove Autopackage itself then enter: package remove autopackage package remove autopackage The first time removes the graphical front end, the second time removes Autopackage itself. - Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] SheetCam TNG V0.0.24 for Linux released
Les, The new sheetcamlibs package did the trick. Both sheetcam and the packaging system seem to be working fine. Thanks, Eric I replied before but it didn't seem to get through. I think I have found a problem with the sheetcamlibs package. Try downloading and installing the sheetcamlibs package again. If you still get the error, open a terminal and enter the following: sudo dpkg --force-remove-reinstreq sheetcamlibs You will probably have to enter your password. Hopefully that should force dpkg to delete the package. - Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] SheetCam TNG V0.0.24 for Linux released
John, It is my development system which is used for more things than just EMC. In fact I don't run EMC from this machine other than testing, it is only used to compile from source. Regards, Eric Why did you install the workstation version vs the standard one that comes packaged with EMC2? - Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] EMC Telnet Troubles
Andrew, The telnet interface protects against multiple clients having control at the same time. You must be the 'enabled' session in order to use the set command. Use: set enable EMCTOO To enable the current session, and: set enable off To release the current session. Setting enable will automatically take control if another session is already enabled. Regards, Eric Hi Everyone. I have just started playing around with the Telnet interface to EMC and a Windows GUI, and I am 50% there. I have a windows machine displaying the coordinates for all axis as I jog or run a program, and I can use the GET statement to retrieve anything I need about the state of EMC, BUT... I can't get the SET statement to work, so I can't get my windows machine to actually turn anything on. I have included loadusr emcrsh in my ini file, and I am calling SET estop on' (as an example) but I get the response SET NAK back, I have tried with the AXIS and the TKEMC gui. Any ideas what I am doing wrong? Regards Andrew - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Stepper configuration
Hi all, I am trying my first stepper configuration, but also need a 5khz pwm, so I am using the m5i20 controller rather than the other more typical stepper configurations. I created a hybrid configuration which mostly works, except the stepper motors are running much to slowly and stop moving entirely above a certain speed. The stepper motors are 200 steps per revolution with 16 micro-steps per step, or 3200 micro-steps per revolution. One revolution moves the axis 2.5 inches, so I set scale for AXIS_0 in the ini file to 1280 (units is inch). I also ran the latency test which showed that I could set BASE_PERIOD to 22000. I looked at the step signal on halscope and adjusted the jog speed to where I was getting one step per msec, which should move the axis at a rate of 2.5 per second. In fact it just crawls (2-4 RPM for example). I also ran stepconf and transferred some of the step parameters it calculated, including: steplen 1 stepspace 0 dirhold 27000 dirsetup 27000 On halscope, the steps look like very quick spikes when using 1msec per division. Is it possible the step duration is too short and if so, which parameter lengthens the step duration? I expect the step signal to stay below 10khz (25 ips), so I just linked stepgen to ordinary m5i20 outputs. I saw there was a hostmot2 configuration that might do this too, but did not try it. Any ideas? Thanks, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Stepper configuration
John, Something does not compute here. If scale is 1280 (that means 1280 counts per inch), then at one step per millisecond, you should get 1000/1280 = about 0.8 inches per second, not 2.5. Yes, I realized it as soon as I posted it, but the error wasn't big enough to matter so I did not post a correction. I think that m5i20 outputs by default are updated in the servo thread at 1KHz. If you will be using them for steps, you need to move the digital output update function to the base thread. You will need to consult the m5i20 driver docs for this - I'm not even sure at the moment if the digital I/O portion of the driver can be separated from the rest of the code (which you'll want to leave in the servo thread). Oh of course. It seems obvious now. I am not sure if it will matter, but on my home system I was able to crank up the servo period to 66000 with base period of 22000. I won't be able to test it with real hardware until Monday. I suspect that this could be the cause of your problem - if EMC is generating short step pulses in the base thread, but you are only driving the hardware in the much slower servo thread, the hardware probably never sees many of the step pulses. Do you know anything about hostmot2? I see it has step and pwm, but did not see a sample configuration on how to use it. Is it completed or still a work in progress? Regards, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Stepper configuration
Sebastian, Thanks. A couple more questions. 1 I assume I will have to build from source to use hostmot2? 2 On an m5i20, how do you use the general purpose I/O? I don't see, for instance, the equivalents of: addf m5i20.0.misc-update servo-thread 1 addf m5i20.0.digital-in-read servo-thread 1 addf m5i20.0.digital-out-write servo-thread -1 3 What are the pinouts? Do they remain the same for P3 and P4 as with the standard m5i20 configuration. Regards, Eric Do you know anything about hostmot2? I see it has step and pwm, but did not see a sample configuration on how to use it. Is it completed or still a work in progress? hostmot2 is still a work in progress, but i think it's ready for more widespread testing. I've added a very simple incomplete sample config, it's in CVS (TRUNK and the 2.2 branch) but it's not in the released 2.2.5 package. It will be in 2.2.6 which is dues out real soon now. You can see the sample configs here: http://cvs.linuxcnc.org/cvs/emc2/configs/hostmot2/ or here: http://bazaar.launchpad.net/~seb-highlab/emc/hostmot2/files/470?file_id=hos tmot2-20080704040329-dmc6hkstgm2r40ep-1 - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Stepper configuration
Sebastian, I updated to the latest release, and started playing with hostmot2. I ran the following commands under halcmd: loadrt hostmot2 loadrt hm2_5i20 config=firmware=hm_5i20 num_stepgens=2 num_pwmgens=1 num_encoders=0 I then did a show pin, which returned no pins. Shouldn't I be seeing pins at that point? Thanks, Eric I've tried to describe how all this works in the hostmot2 manpage, take a look at it and let me know what parts of it are unclear or incomplete. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Stepper configuration
Sebastian, I am getting close. I generated a single hal file for a two stepper and one pwm configuration. Currently in the ini file I have it configured for only 2 axes and references only the single hal file. The error I am getting is a following error any time I try to move an axis. I have included the minimal hal file below. What am I still missing? --HAL FILE-- loadrt trivkins loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD traj_period_nsec=[EMCMOT]TRAJ_PERIOD key=[EMCMOT]SHMEM_KEY num_joints=[TRAJ]AXES loadrt hostmot2 debug_idrom=1 debug_module_descriptors=1 debug_pin_descriptors=1 debug_modules=1 loadrt hm2_5i20 config=firmware=hm2/5i20/SVST8_4.BIT num_stepgens=2 num_pwmgens=1 num_encoders=0 addf motion-command-handler servo-thread addf motion-controller servo-thread addf hm2_5i20.0.pet_watchdog servo-thread addf hm2_5i20.0.read servo-thread addf hm2_5i20.0.write servo-thread # set up the watchdog # setp hm2_5i20.0.watchdog.timeout_ns 1000 # create a signal for the estop loopback net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in # create signals for tool loading loopback net tool-prep-loop iocontrol.0.tool-prepare iocontrol.0.tool-prepared net tool-change-loop iocontrol.0.tool-change iocontrol.0.tool-changed # connect position commands from motion module to step generator net Xpos-cmd axis.0.motor-pos-cmd = hm2_5i20.0.stepgen.00.position-cmd net Ypos-cmd axis.1.motor-pos-cmd = hm2_5i20.0.stepgen.01.position-cmd # net Zpos-cmd axis.2.motor-pos-cmd = stepgen.2.position-cmd # connect position feedback from step generators # to motion module net Xpos-fb hm2_5i20.0.stepgen.00.position-fb = axis.0.motor-pos-fb net Ypos-fb hm2_5i20.0.stepgen.01.position-fb = axis.1.motor-pos-fb # net Zpos-fb stepgen.2.position-fb = axis.2.motor-pos-fb # connect enable signals for step generators # net Xen axis.0.amp-enable-out = stepgen.0.enable # net Yen axis.1.amp-enable-out = stepgen.1.enable # net Zen axis.2.amp-enable-out = stepgen.2.enable # set stepgen module scaling - get values from ini file setp hm2_5i20.0.stepgen.00.position-scale [AXIS_0]SCALE setp hm2_5i20.0.stepgen.01.position-scale [AXIS_1]SCALE # setp stepgen.2.position-scale [AXIS_2]SCALE # set stepgen module accel limits - get values from ini file # setp hm2_5i20.0.stepgen.00.maxaccel [AXIS_0]STEPGEN_MAXACCEL # setp hm2_5i20.0.stepgen.01.maxaccel [AXIS_1]STEPGEN_MAXACCEL # setp stepgen.2.maxaccel [AXIS_2]STEPGEN_MAXACCEL setp hm2_5i20.0.stepgen.00.dirsetup0.002 setp hm2_5i20.0.stepgen.00.dirhold 0.002 setp hm2_5i20.0.stepgen.00.steplen 0.40 setp hm2_5i20.0.stepgen.00.stepspace 0.40 setp hm2_5i20.0.stepgen.01.dirsetup0.002 setp hm2_5i20.0.stepgen.01.dirhold 0.002 setp hm2_5i20.0.stepgen.01.steplen 0.40 setp hm2_5i20.0.stepgen.01.stepspace 0.40 --END HAL FILE-- Regards, Eric Excellent, thanks for trying it out! What you did looks almost right, the only problem I see there is the firmware part of the config argument. There are several hostmot2 firmwares available for the 5i20, and the firmware= part needs to name a specific one, located where the driver can find it. The hostmot2 driver uses the standard kernel firmware loading mechanism, which means the firmware must be accessible in /lib/firmware. The first step is putting the firmwares where the loader can find them: If you installed EMC2 from the Debian package, the firmwares are already there and you dont need to do anything. If instead you checked out the CVS tree and are using run-in-place, you need to symlink the hostmot2 firmware directory to /lib/firmware with a command like this: sudo ln -s $HOME/my/emc2/sandbox/src/hal/drivers/mesa-hostmot2/firmware /lib/firmware/hm2 (change the source path to point to your actual sandbox) Once that's done we can pick a firmware file to load. You can see the available files by looking in /lib/firmware/hm2/5i20; each .BIT file is a firmware file you can tell the driver to load. The firmwares available in 2.2.6 are: 0 [EMAIL PROTECTED] /home/seb ls -1 /lib/firmware/hm2/5i20/*.BIT /lib/firmware/hm2/5i20/SV12.BIT /lib/firmware/hm2/5i20/SVST2_8.BIT /lib/firmware/hm2/5i20/SVST8_4.BIT SV12 means 12 servo channels. SVST2_8 means 2 servos and 8 steppers. SVST8_4 means 8 servos and 4 steppers. Either of the last two would work with the rest of the config line you specified; let's say you want SVST8_4.BIT. You'd use a loadrt line like this: loadrt hm2_5i20 config=firmware=hm2/5i20/SVST8_4.BIT num_stepgens=2 num_pwmgens=1 num_encoders=0 Give that a try and let me know how it goes. :-) Oh yeah, and if it doesnt work, please attach the file /var/log/syslog to the next email. -- Sebastian Kuzminsky Cryogenic travel has improved since then... I woke
Re: [Emc-users] Stepper configuration
John, I commented them out because it generated an error. I do not see pins for maxaccel with hostmot2. # set stepgen module accel limits - get values from ini file # setp hm2_5i20.0.stepgen.00.maxaccel [AXIS_0]STEPGEN_MAXACCEL # setp hm2_5i20.0.stepgen.01.maxaccel [AXIS_1]STEPGEN_MAXACCEL # setp stepgen.2.maxaccel [AXIS_2]STEPGEN_MAXACCEL Regards, Eric I didn't read everything, so maybe I overlooked something else, but I did notice that you have the lines that set the step generator accel limits commented out. I bet you meant to remove the # signs ;-) Regards, John Kasunich - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Hostmot2 configuration - was Stepper Configuration
Hi all, I am getting following errors on my axes testing the hostmot2 driver in a 2 axis stepper configuration, and am trying to determine if it is a problem in the configuration, or a problem with the hostmot2 driver. The hostmot2 configuration is specified as: loadrt hostmot2 debug_idrom=1 debug_module_descriptors=1 debug_pin_descriptors=1 debug_modules=1 loadrt hm2_5i20 config=firmware=hm2/5i20/SVST8_4.BIT num_stepgens=2 num_pwmgens=1 num_encoders=0 I have the position command connect to axis 0 and 1 as: net Xpos-cmd axis.0.motor-pos-cmd = hm2_5i20.0.stepgen.00.position-cmd net Ypos-cmd axis.1.motor-pos-cmd = hm2_5i20.0.stepgen.01.position-cmd Position feedback as: net Xpos-fb hm2_5i20.0.stepgen.00.position-fb = axis.0.motor-pos-fb net Ypos-fb hm2_5i20.0.stepgen.01.position-fb = axis.1.motor-pos-fb The scaling set as (and shows as 1280 for the respective pins): # set stepgen module scaling - get values from ini file setp hm2_5i20.0.stepgen.00.position-scale [AXIS_0]SCALE setp hm2_5i20.0.stepgen.01.position-scale [AXIS_1]SCALE And stepgen parameters as: setp hm2_5i20.0.stepgen.00.dirsetup0.002 setp hm2_5i20.0.stepgen.00.dirhold 0.002 setp hm2_5i20.0.stepgen.00.steplen 0.40 setp hm2_5i20.0.stepgen.00.stepspace 0.40 setp hm2_5i20.0.stepgen.01.dirsetup0.002 setp hm2_5i20.0.stepgen.01.dirhold 0.002 setp hm2_5i20.0.stepgen.01.steplen 0.40 setp hm2_5i20.0.stepgen.01.stepspace 0.40 I don't see and enable for either stepgen or axis, but all stepgen and axis pins related to position remain at zero when I try to move an axis, and get following errors on that axis. Is there still something which needs to be enabled to get these axes to work? What else do I need to check? Thanks, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Hostmot2 configuration - was Stepper Configuration
John, Hmm, I am not showing them (Sebastian's post or Peter's reply). The last post I see from Sebastian was at 1:10 AM EST. I also don't see them in the deleted items tagged as spam, which happens occasionally too. Thanks for the information. Thanks, Eric Didn't you see Sebastian Kuzminsky's response to your message? He wrote (a few hours ago): Yes, I can reproduce this here - stepgen doesnt work on the 5i20. Sorry guys... How embarassing. :-( (additional info snipped - go read his message) Peter Wallace responded to that, and both of them are working on a fix. Regards, John Kasunich - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Hostmot2 configuration - was Stepper Configuration
John, It must have been filtered out upstream. All of my stuff is registered through GoDaddy so I guess I need to check my spam filter settings and make sure posts from this list are on the white list. Regards, Eric Hmm, I am not showing them (Sebastian's post or Peter's reply). The last post I see from Sebastian was at 1:10 AM EST. I also don't see them in the deleted items tagged as spam, which happens occasionally too. Thanks for the information. Thanks, Eric Didn't you see Sebastian Kuzminsky's response to your message? He wrote (a few hours ago): Yes, I can reproduce this here - stepgen doesnt work on the 5i20. Sorry guys... How embarassing. :-( (additional info snipped - go read his message) Peter Wallace responded to that, and both of them are working on a fix. Regards, John Kasunich - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Hostmot2 configuration - was Stepper Configuration
Sebastian, That is interesting. I just checked my settings. The spam setting is set to allow everything through, but to tag what it thinks is spam. I already added sourceforge.net to the white list. I don't see how to get your email address from the posts, but I can try added yours to the white list as well. I have a system all wired up, so if you need anything tested on the 5i20, please send it my way. Regards, Eric I guess GoDaddy thinks I'm a virus or spam, I just tried sending an email to Eric directly and it bounced: - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Hostmot2 configuration - was Stepper Configuration
Sebastian, One more quick question. When you say the pinout is written to the system log, which log is that? I don't see it through dmesg or by setting debug to the maximum value. Regards, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Hostmot2 configuration - was Stepper Configuration
Sebastian, I replied off list because the log files were too large for this list. At any rate, I captured the dmesg log by running dmesg dmesg.txt Right after running EMC. The syslog file looks like everything since I first booted the system this morning. The last entry is at 13:10 (1:10 PM). Regards, Eric (Eric sent me the files off-list and I replied, but i haven't heard back so i dont know if the spamfilter ate it again...) Eric, I dont see any hostmot2 messages at all in the logs you sent me... Your syslog starts at 9:53 this morning, did you try to load hostmot2 and hm2_5i20 since then? - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Hostmot2 configuration - was Stepper Configuration
Sebastian, I will send it to you in a couple of hours. I have another commitment for the next hour or two. Regards, Eric Hm, and the hostmot2 pins functions stuff were all available in EMC when you ran it? There really should have been something in the logs. Or wait, is RTAPI_MSG_INFO disabled by default? Most of my messages are at that level, because the next higher level is WARNING, and they're not warnings Try this: run echo 4 | sudo dd of=/proc/rtapi/debug after realtime start but before loading the hostmot2 driver. Then run dmesg again and send it to me (not to the list). - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Hostmot2 configuration - was Stepper Configuration
Sebastian, So the PWMs appear on the P2 connector, but the Step generators appear on P4? I have the P4 connector going to a 7i37 to handle the high voltage I/O. So I guess I have to move that cable to P3 and remap the I/O. It looks like the TTL I/O can map to either P2 or P4, but it does mean I need three cables. I was hoping to be able to do it in two. What is the limitation as far as putting the step generators and PWMs on the same connector? Regards, Eric That's more like it :-) Now that the driver's loaded, it can tell us what its pinout is. (This should show up even without setting /proc/rtapi/debug.) Here's the relevant bits from the dmesg2.txt file you sent me: [ 2485.811368] hm2/hm2_5i20.0: 72 I/O Pins used: [ 2485.811374] hm2/hm2_5i20.0: I/O Pin P2.000: IOPort [ 2485.811381] hm2/hm2_5i20.0: I/O Pin P2.001: IOPort [ 2485.811387] hm2/hm2_5i20.0: I/O Pin P2.002: IOPort [ 2485.811393] hm2/hm2_5i20.0: I/O Pin P2.003: IOPort [ 2485.811399] hm2/hm2_5i20.0: I/O Pin P2.004: IOPort [ 2485.811405] hm2/hm2_5i20.0: I/O Pin P2.005: IOPort [ 2485.811411] hm2/hm2_5i20.0: I/O Pin P2.006: IOPort [ 2485.811420] hm2/hm2_5i20.0: I/O Pin P2.007: PWMGen #0, pin Out0 (PWM or Up) (Output) [ 2485.811427] hm2/hm2_5i20.0: I/O Pin P2.008: IOPort [ 2485.811435] hm2/hm2_5i20.0: I/O Pin P2.009: PWMGen #0, pin Out1 (Dir or Down) (Output) [ 2485.811442] hm2/hm2_5i20.0: I/O Pin P2.010: IOPort [ 2485.811450] hm2/hm2_5i20.0: I/O Pin P2.011: PWMGen #0, pin Not-Enable (Output) [ 2485.811457] hm2/hm2_5i20.0: I/O Pin P2.012: IOPort [ 2485.811464] hm2/hm2_5i20.0: I/O Pin P2.013: IOPort [ 2485.811470] hm2/hm2_5i20.0: I/O Pin P2.014: IOPort [ 2485.811476] hm2/hm2_5i20.0: I/O Pin P2.015: IOPort [ 2485.811482] hm2/hm2_5i20.0: I/O Pin P2.016: IOPort [ 2485.811488] hm2/hm2_5i20.0: I/O Pin P2.017: IOPort [ 2485.811495] hm2/hm2_5i20.0: I/O Pin P2.018: IOPort [ 2485.811501] hm2/hm2_5i20.0: I/O Pin P2.019: IOPort [ 2485.811507] hm2/hm2_5i20.0: I/O Pin P2.020: IOPort [ 2485.811513] hm2/hm2_5i20.0: I/O Pin P2.021: IOPort [ 2485.811519] hm2/hm2_5i20.0: I/O Pin P2.022: IOPort [ 2485.811526] hm2/hm2_5i20.0: I/O Pin P2.023: IOPort [ 2485.811532] hm2/hm2_5i20.0: I/O Pin P3.024: IOPort [ 2485.811538] hm2/hm2_5i20.0: I/O Pin P3.025: IOPort [ 2485.811544] hm2/hm2_5i20.0: I/O Pin P3.026: IOPort [ 2485.811550] hm2/hm2_5i20.0: I/O Pin P3.027: IOPort [ 2485.811557] hm2/hm2_5i20.0: I/O Pin P3.028: IOPort [ 2485.811563] hm2/hm2_5i20.0: I/O Pin P3.029: IOPort [ 2485.811569] hm2/hm2_5i20.0: I/O Pin P3.030: IOPort [ 2485.811575] hm2/hm2_5i20.0: I/O Pin P3.031: IOPort [ 2485.811581] hm2/hm2_5i20.0: I/O Pin P3.032: IOPort [ 2485.811588] hm2/hm2_5i20.0: I/O Pin P3.033: IOPort [ 2485.811594] hm2/hm2_5i20.0: I/O Pin P3.034: IOPort [ 2485.811600] hm2/hm2_5i20.0: I/O Pin P3.035: IOPort [ 2485.811606] hm2/hm2_5i20.0: I/O Pin P3.036: IOPort [ 2485.811612] hm2/hm2_5i20.0: I/O Pin P3.037: IOPort [ 2485.811619] hm2/hm2_5i20.0: I/O Pin P3.038: IOPort [ 2485.811625] hm2/hm2_5i20.0: I/O Pin P3.039: IOPort [ 2485.811631] hm2/hm2_5i20.0: I/O Pin P3.040: IOPort [ 2485.811637] hm2/hm2_5i20.0: I/O Pin P3.041: IOPort [ 2485.811643] hm2/hm2_5i20.0: I/O Pin P3.042: IOPort [ 2485.811654] hm2/hm2_5i20.0: I/O Pin P3.043: IOPort [ 2485.811660] hm2/hm2_5i20.0: I/O Pin P3.044: IOPort [ 2485.811667] hm2/hm2_5i20.0: I/O Pin P3.045: IOPort [ 2485.811673] hm2/hm2_5i20.0: I/O Pin P3.046: IOPort [ 2485.811679] hm2/hm2_5i20.0: I/O Pin P3.047: IOPort [ 2485.811686] hm2/hm2_5i20.0: I/O Pin P4.048: StepGen #0, pin Step (Output) [ 2485.811695] hm2/hm2_5i20.0: I/O Pin P4.049: StepGen #0, pin Direction (Output) [ 2485.811704] hm2/hm2_5i20.0: I/O Pin P4.050: StepGen #0, pin (unused) (Output) [ 2485.811712] hm2/hm2_5i20.0: I/O Pin P4.051: StepGen #0, pin (unused) (Output) [ 2485.811721] hm2/hm2_5i20.0: I/O Pin P4.052: StepGen #0, pin (unused) (Output) [ 2485.811729] hm2/hm2_5i20.0: I/O Pin P4.053: StepGen #0, pin (unused) (Output) [ 2485.811738] hm2/hm2_5i20.0: I/O Pin P4.054: StepGen #1, pin Step (Output) [ 2485.811746] hm2/hm2_5i20.0: I/O Pin P4.055: StepGen #1, pin Direction (Output) [ 2485.811755] hm2/hm2_5i20.0: I/O Pin P4.056: StepGen #1, pin (unused) (Output) [ 2485.811763] hm2/hm2_5i20.0: I/O Pin P4.057: StepGen #1, pin (unused) (Output) [ 2485.811772] hm2/hm2_5i20.0: I/O Pin P4.058: StepGen #1, pin (unused) (Output) [ 2485.811780] hm2/hm2_5i20.0: I/O Pin P4.059: StepGen #1, pin (unused) (Output) [ 2485.811788] hm2/hm2_5i20.0: I/O Pin P4.060: IOPort [ 2485.811794] hm2/hm2_5i20.0: I/O Pin P4.061: IOPort [ 2485.811800] hm2/hm2_5i20.0: I/O Pin P4.062: IOPort [ 2485.811806] hm2/hm2_5i20.0: I/O Pin P4.063: IOPort [ 2485.811812] hm2/hm2_5i20.0: I/O Pin P4.064: IOPort [
Re: [Emc-users] Hostmot2 configuration - was Stepper Configuration
Peter, For this project, using all three connectors is fine, it was already wired that way because of the pinout of the standard m5i20 driver. I was just hoping to eliminate one cable and the associated termination. For my next project it would be really nice if I could get all of the I/O onto a single connector both for cost and the fact that real estate is limited. This would require 2 or 3 steppers, 1 pwm and roughly 8 inputs and 4 outputs. Everything in this case is at TTL levels so it could all come off a single connector very simply. Regards, Eric The pinout is fixed by the configuration(SVST8_4 has the pinout you see) Hostmot2 does not allow pin remapping as this uses a lot of FPGA resources The current firmware source is easy to change however, If you tell me what pinout you want, I can whip up a new bitfile in a few minutes - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] emc2 2.2.6 hostmot2 stepgen bug workaround
Sebastian, Thanks. I will test it with hardware on Monday. Please see post in emc-developers. Regards, Eric EMC2 2.2.6 included the new hostmot2 device driver, with support for the Mesa 5i20 and 7i43 boards. Unfortunately, due to a bug in the driver, stepgen didn't work on the 5i20 (though it works on the 7i43). The problem has been fixed in TRUNK and in the 2.2 branch, but that only helps people who are compiling from source. Users who install emc2 via the debian package (.deb) can get stepgen working on 2.2.6 by following this recipe: 1. Add enable_raw to the load-time config string for the 5i20. 2. Set hm2_5i20.0.raw.write_address to 0x2900. 3. Set hm2_5i20.0.raw.write_data to -1. 4. Set hm2_5i20.0.raw.write_strobe to 1. When the hm2_5i20.0.write function next runs, the steppers will start working. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] emc2 2.2.6 hostmot2 stepgen bug workaround
Sebastian, et al, The good news is, the patch seems to work. The bad news is that at other than very slow speeds (25-50 IPM) I keep getting following errors. I have played with the MAX_ACCELERATION and STEPGEN_MAXACCEL (which I suspect does not apply with Hostmot2), but that seems to have almost no effect. What does have an effect is the setting of the Servo period in the ini file. If I set it for 1ms, I get following errors almost no matter how slow I try to move the axis. If I drop it to 100 microsecs then I can get up to 25 or so IPM, and at 66 microseconds (the fastest I can set the servo loop on this board) to about 55 IPM. Is it possible I am not doing the position feedback properly. This is what I have for position feedback in my HAL file: net Xpos-fb hm2_5i20.0.stepgen.00.position-fb = axis.0.motor-pos-fb net Ypos-fb hm2_5i20.0.stepgen.01.position-fb = axis.1.motor-pos-fb Alternately, do I have to set a deadband as in a servo configuration? I tried setting the deadband to 0.002 which should be just larger than one micro-step for the motor. It did not seem to have any effect either. Thanks, Eric EMC2 2.2.6 included the new hostmot2 device driver, with support for the Mesa 5i20 and 7i43 boards. Unfortunately, due to a bug in the driver, stepgen didn't work on the 5i20 (though it works on the 7i43). The problem has been fixed in TRUNK and in the 2.2 branch, but that only helps people who are compiling from source. Users who install emc2 via the debian package (.deb) can get stepgen working on 2.2.6 by following this recipe: 1. Add enable_raw to the load-time config string for the 5i20. 2. Set hm2_5i20.0.raw.write_address to 0x2900. 3. Set hm2_5i20.0.raw.write_data to -1. 4. Set hm2_5i20.0.raw.write_strobe to 1. When the hm2_5i20.0.write function next runs, the steppers will start working. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] emc2 2.2.6 hostmot2 stepgen bug workaround
Sebastian, Any idea what is causing the following errors? I suspect it is the feedback, because as I make the servo period faster, I can then have the motor go faster. I am probably missing something obvious, but it seems like it needs a dead band or something like that, except I tried setting a dead band and that doesn't work. Any ideas? Regards, Eric The hostmot2 stepgen driver does not yet support maxaccel or maxvel. The stepgen code is very simplistic, I'm planning to fix it up and make it feature-complete (for step/dir and up/down) in the next few days. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] emc2 2.2.6 hostmot2 stepgen bug workaround
John, I think I got it, at least it is working much better now. I was trying to adjust FERROR, and when that did not work, thought DEADBAND or something like that might apply. What I did not adjust was MIN_FERROR, which the doc says applies only for very slow speeds. I was not having a problem at very slow speeds, only when I tried to speed up. But increasing MIN_FERROR now has it basically working (my accel and max velocity are still set low so I still have a little tuning to do). I guess MIN_FERROR doesn't do quite what I thought it did. Regards, Eric Following errors happen when the position feedback fails to track the command within a tolerance. That tolerance is specified in your ini file - what values do you have? Seb has acknowledged that there are issues and is working on it. Further speculation, especially without hard data, is pointless. If you are curious about what is going on, break out halscope and take a look. The command, the feedback, the error, and the error limits are all available as HAL pins or parameters, and there is also a faulted parameter that can be used to trigger the scope. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Another problem with Hostmot2 and m5i20
Sebastian et al, I had just got the stepper outputs working before I went on vacation and am just now getting back to it. I am using Hostmot2, the m5i20 board and SVST8_4 configuration, configured for 2 steppers, 1 pwm and no encoders. I am also using just the patch applied to the most recent binary packages, I have not rebuilt from the latest source. It looks like I am now having a problem with the PWM output and hope I am just doing something stupid. With the standard m5i20 configuration, all I had to do was to assert the enable and set the value for the selected PWM. When I do this with the hostmot2 configuration, I get no output on the associated pin (pin 15 for PWM 0). If I use the standard m5i20 configuration the output works correctly. Any ideas? Thanks, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Another problem with Hostmot2 and m5i20
Peter, I presumed the selecting of one PWM in the configuration set the direction of the GPIO, as it does for the step and direction outputs for the two steppers in the configuration. Regards, Eric Sebastian is probably the one to ask, but, did you have the driver enable the PWM0? Not the HAL enable but the driver PWM generator count If the PWM pin is still an input (ground with a 300 ohm or so resistor to test), then the drive did not enable the GPIO pin as a PWM output - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Another problem with Hostmot2 and m5i20
Sebastian, The enable pin for the PWM is getting set. If I set the enable to true, and then set the value to say 5.0, when I do a show pin I do in fact see that the enable pin is true and that the pwm value pin is 5.0. Per your other email, I would think that this also proves that the scale is set correctly. It is set to 1.0 in the ini file. I don't have access to the machine at the moment, but I will check these again as soon as I can get back to the machine. Regards, Eric The PWM DDR register is set to 65535 on module load and then left alone. The PWM output type defaults to 1 (PWM + Dir), though the user can change it to 2 (Up + Down) by setting the output-type parameter. The pwmgen.XX.enable HAL pin gets initialized to 0 and sent to the FPGA on module load. When the user changes the HAL pin, the new value is sent to the FPGA. Eric, can you verify that the HAL enable pin for the PWM in question does get set to 1? - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Another problem with Hostmot2 and m5i20
Sebastian, Yep, sounds like all the HAL pins params are set right. Just to make sure, you've added the hm2_5i20.read() and .write() functions to a realtime thread, and you've started the realtime kernel, right? Yes. If I had not, then I don't think anything would work. As it is, my steppers are working as well as both GP inputs and GP outputs. The only thing not working is the PWM. Next I'd want to check the electrical state of the IO pins. With SVST8_4, pwmgen.00 appears on pins 15 (PWM), 19 (Dir), and 23 (Not Enable). Bust out a voltmeter and carefully hook it to pin 23. Then twiddle pwmgen.00.enable high and low and see if the voltage on pin 23 varies as expected (0V when .enable is 1). I will do that when I next get a chance. Thanks, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Another problem with Hostmot2 and m5i20
Sebastian, Next I'd want to check the electrical state of the IO pins. With SVST8_4, pwmgen.00 appears on pins 15 (PWM), 19 (Dir), and 23 (Not Enable). Bust out a voltmeter and carefully hook it to pin 23. Then twiddle pwmgen.00.enable high and low and see if the voltage on pin 23 varies as expected (0V when .enable is 1). The enable pin appears to work properly. When enable is set to false pin 23 is high, when enable is true pin 23 is low. Regards, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Another problem with Hostmot2 and m5i20
Sebastian, The dir signal appears to be working properly as well. If .value is 0 or positive, pin 19 is low, if .value is negative then pin 19 is high. As for the PWM, I am measuring it with a meter, not a scope, but it does not change (the voltage measured will typically be proportional to duty cycle). In addition, if I load the standard m5i20 configuration, I do get the appropriate values on pin 15. Regards, Eric Great! How about the PWM Dir pins? Do you see a signal there if you set .enable to 1 and .value to, say 999? - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Another problem with Hostmot2 and m5i20
Sebastian, You can find the dmesg output posted here: http://pastebin.com/mfae4a88 Regards, Eric Well that's very odd... Try loading the hostmot2 driver will all debugging enabled: loadrt hostmot2 debug_idrom=1 debug_module_descriptors=1 debug_pin_descriptors=1 debug_modules=1 Then pastebin the dmesg output and mail us the link. I'll hop on irc, come chat there if you want. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Another problem with Hostmot2 and m5i20
Sebastian, Can you tell me what run-time file or files changed? My target machine was built from precompiled packages so it doesn't have the development tools loaded. I will need to compile on my development machine and then transfer the binaries. Thanks, Eric I squished a silly bug with the hostmot2 pwmgen driver. It bit other people but not me because I had an old forgotten work-around in the hal config file I test with... If you had problems with pwmgen before, please give CVS TRUNK a try again. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Latest hostmot2 drivers for m5i20
Sebastian, Thanks, this really helps. It shows that the stepgen.enable pins are set to FALSE, thus disabling the stepgen outputs. I added the .enable pin fairly recently. Try adding them to your Xen and Yen nets. Ok, that makes a lot of sense. I guess I need to check the pins after every update to see what has been added. I have left for the day, but I will check it first thing tomorrow. Thanks again, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] stepgen pwmgen fixes
Sebastian, I am not sure what you mean by the FPGA register. Do you mean the interface register between the driver and the m5i20, or the register actually handling the PWM within the FPGA? As I said in an earlier email (off list), I concur that the value being sent to the FPGA through the interface register is correct (providing the bit shift to bits 16-27 is where the value is supposed to go), which would confirm that my pwmgen.scale is set to 1.0. I was able to measure the duty cycle on a pain old multi-meter. At values of 0.125 and below, the voltage would start dropping from the almost 100% duty cycle voltage of just under 3.3V, and very linearly for the range of 0.125 down to 0.0. The voltage reading from my meter was in fact very accurate. Here are the voltage readings I got: ValueVoltage =0.126 3.278 0.125 3.272 0.120 3.144 0.110 2.884 0.100 2.623 0.090 2.362 0.080 2.102 0.070 1.841 0.060 1.580 0.050 1.320 0.040 1.059 0.030 0.798 0.020 0.538 0.010 0.278 Regards, Eric How are you measuring duty cycle? I'm confident that (at least in my test setup) setting pwmgen.XX.value causes the correct number to be set in the FPGA register. Take a look at http://pastebin.ca/1208030. I updated pwmgen.c to decode the number in the PWM Value Register, then used raw.dump-state to show the register when pwmgen.value was -1.0 to +0.3 in increments of 0.1. Lines 1-22 show the relevant dmesg output for .value=0, then I just show the PWM Value Register for the other .value settings. In addition to the correct numbers being set in the register, the corresponding LED on the 7i31 LED Debug board varies in intensity as expected, and the small DC servo (driven by a 7i30 servo amp) changes its speed as expected. I'm not sure why you're seeing what you're seeing. Is maybe your pwmgen.scale not set to 1.0? - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] stepgen pwmgen fixes
Sebastian, It is specified as a parameter to the driver, up to 33Khz IIRC. I was setting it to 5Khz. Regards, Eric Does anyone know what the PWM frequency of the old m5i20 driver is? - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] stepgen pwmgen fixes
Sebastian, Can you check to see that the pwmgen.enable is working properly. I was running samples all day (which looked great, btw, after resolving a very odd problem) so I did not have a chance to do much testing. I am now dropping the enable when the shutter closes, however the pwmgen.value is still getting values. The laser was still coming on even when the enable was low. I will try setting the frequency of the pwm from the latest update and hopefully test that tomorrow. Regards, Eric I bet that's it then. The hm2_5i20 pwmgen currently goes at 25 KHz with no way to change it. I'll add a HAL parameter and let's see if that helps. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] How does axis communicate with emc?
Alan, Are you trying to directly send motion commands to EMC or just want to write your own .NET based custom user interface? If the latter, there are much easier ways than going through NML. Regards, Eric I am interested in understanding how Axis communicates with emc because I want to try sending NML messages to emc from a c# application running under mono (we all have strange interests of one sort or another!!). Can someone suggest a starting point for me. I am new to linux but have been a programmer for many years. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] How does axis communicate with emc?
Alan, In addition to what Stephen said, see if emcrsh does what you want. Take any one of the sim configurations (tkemc is a good one) and add: loadusr emcrsh to one of the hal files (servo_sim.hal for example) Run EMC, then open a terminal session and enter: telnet localhost 5007 After it connects, type help. To establish a session with EMC, enter: Hello EMC client 1.0 To get rid of the command echo, enter: Set echo off To command the machine, enable the session with: Set enable EMCTOO Alternatively, you can run from another computer over the network by entering: telnet DNS or IP address 5007 Your program just needs to send and process the same commands as you type into the telnet session. So long as you write your application from the interface specification, i.e. specifically by not borrowing any of the code from the server side, there should not be any GPL implications. Well on this specific interface anyway. You can also find the interface definition here in the source code: http://cvs.linuxcnc.org/cvs/emc2/src/emc/usr_intf/emcrsh.cc?rev=1.10;content -type=text%2Fplain Scroll down one page. I need to put this into a wiki page. BTW, I just checked in an update enhancing options that can be specified on the command line. To use these, you will need to build from source until the next release. HTH, Eric I want to connect directly to emc from some software I am developing. So far my software generates G codes but I want to cut out that stage. This is out of interest and in the spirit of investigation. By the way I would like to know the easier ways again out of curiosity. Thanks Alan - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Problem after installation of EMC2 on Ubuntu 8.04
Alex et al, I just tried to install EMC to Hardy and am getting a similar if not the same error. This is what appears to be wrong: insmod: can't read '/usr/realtime-2.6.24-19-generic/modules/rtai_hal.ko': No such file or directory There is no /usr/realtime-2.6.24-19-generic folder. I checked the /usr/bin/emc script, and it correctly sets: EMC2_RTLIB_DIR=/usr/realtime-2.6.24-16-rtai/modules/emc2 Where is the path coming from used by insmod? Regards, Eric Seem you booted the wrong kernel. If you install emc2 after you installed a regular Ubuntu then you'll get both the RTAI kernel and the generic Ubuntu kernel installed. If there are updates to the generic Ubuntu kernel, then that one will be automatically selected on your next boot. You can change the order (so that the rtai kernel starts first) either by changing /boot/grub/menu.lst or by hitting Esc when the PC starts booting (right after BIOS POST), then you can select which kernel to boot. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Problem after installation of EMC2 on Ubuntu 8.04
Hi all, Found it. With the Hardy install, it does not set the rtai kernel as the default kernel. So by default it is booting the ...-19-generic kernel. The rtai kernel must be explicitly selected at boot time in order to run EMC. Regards, Eric I just tried to install EMC to Hardy and am getting a similar if not the same error. This is what appears to be wrong: insmod: can't read '/usr/realtime-2.6.24-19-generic/modules/rtai_hal.ko': No such file or directory There is no /usr/realtime-2.6.24-19-generic folder. I checked the /usr/bin/emc script, and it correctly sets: EMC2_RTLIB_DIR=/usr/realtime-2.6.24-16-rtai/modules/emc2 Where is the path coming from used by insmod? - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] New Guy help with EMC2 and Sherline Mill
John, The first thing to do is to just see EMC in operation. Select one of the Sim configurations, Axis and TkEMC are good choices. As the name implies these configurations use simulated I/O, so it will not do anything as far as controlling a machine. It will just give you a feel for what it should look and act like when you do get you configuration running. Then you will have to create a configuration for your machine. I don't know whether the boot CD gives the option to save a local copy of a configuration, which can then be edited. If so you could still do this from the boot CD, but the better way is to install EMC to your hard drive. Since you already have Ubuntu 8.04 installed, follow the instructions here: http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Installing_EMC2#On_Ubuntu_8_04_u sing_precompiled_EMC2_packages Then you will want to find a configuration which most closely matches your system. Stepper-inch for example is a three axis stepper system using the parallel port. If your system uses a control board other than the parallel port, then pick one of the configurations relative to that control board. For more information on configuring your system, see: http://wiki.linuxcnc.org/cgi-bin/emcinfo.pl?Configuring_EMC2 Regards, Eric I have been stumbling around in the dark with the learning curve for my new SHERLINE mill ever since I got it. I had trouble installing the software disk that came with the SHERLINE mill. ( Linux/EMC Version 4.51). At this point I have been able to down load the EMC2 image from Linuxcnc.org and after several attempts have Been successful in burning a CD that will boot. I already had a PC that dual booted between Windows XP professional and Ubuntu 8.xxx. Still learning my way around the LINUX file structure and OS. I have printed out the EMC2 manual and have that handy. So this is where I am now: Computer:DELL with 1Gb Ram and a 160 Gig hard drive running both Win XP and Ubuntu. Mill: Sherline 5000 series with a external 8760 controller. Per printed instructions I have booted off the CD and got to the EMC2 program (Applications CNC EMC2) The screen where I am stuck for a selection is the Configuration Select. What do I select at this point to proceed, based on my equipment? Several of you were kind enough to answer my new guy dumb questions, which without I would not be where I am now. A million thanks for that. I hope someday to return the favor if I ever learn this system/software/machine. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Ubuntu related question
John, Go to System | Administration | Networking to set up your wireless parameters. Note that the rtai kernel (so I understand) does not include the wireless drivers. So if you install EMC which includes the rtai kernel, you will have to boot back to the generic kernel to use the wireless. Regards, Eric I am In the process of setting up my CNC mill with EMC2 software it has become apparent that I need internet access for updates and what not. The computer (a Dell) dual boots Windows XP and Ubuntu 8.xxx. Under windows I have been able to configure the Linksys wireless adapter to work. But I am at a loss on how to install the drivers under Ubuntu. Keep you directions simple as I am new to Linux/Ubuntu. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Problem with RTAI on Ubuntu 8.04 HH and new EMC2 2.2.7
Roberto, I suspect what is happening is that the real time kernel is not the default kernel and the errors you are seeing are a consequence of not having a real time kernel loaded. You can select the kernel on boot, on some systems you may need to hit escape while grub is loading in order to select the kernel. The real time kernels will have 'rtai' in the name. To permanently change the default kernel, edit the file /boot/grub/menu.lst. I don't know why this has changed for HH, as far as what becomes the default kernel, but this question will continue to get asked until that is changed. Regards, Eric I have installed on my PC the Ubuntu 8.04 HH with EMC2 from the live cd from linuxcnc.org. After, i have updated my system to EMC 2.2.7 with the ubuntu update manager, so I have updated EMC2 and other 227 files (from critical update and other applications...). Now when I try to load EMC2 with sim configuration (but it happens with any configuration), the rtai doesn't be loaded with the following error: insmod: error inserting '/usr/realtime-2.6.24-16-rtai/modules/rtai_hal.ko' -1 File exists 4891 PID TTYSTAT TIME COMMAND Stopping realtime threads Unloading hal components ERROR: Module rtai_math does not exists in /proc/modules ERROR: Module rtai_sched does not exists in /proc/modules ERROR: Module rtai_hal is in use by rtai_lxrt I don't know how it's possible, i have tryied to reboot the pc but nothing... I think that other applications use this rtai_lxrt but who is this??? - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Cable recommendations for Mesa boards
Hi all, I am running into a small problem with dropped / excess steps using the m5i20 board and Hostmot2 driver. The problem appears to be with the 50 pin cable connecting the m5i20 with the TB. The quick form of my question is, are there any recommended cables / manufacturers of cables to use with the Mesa boards in the 18 to 24 range? The longer explanation is as follows: With the Hostmot2 driver and m5i20 board, the stepper signals come off the P4 connector, the farthest connector from the point where the cable exits the computer. One loses about 8 just exiting the computer, so with an 18 cable, there is only about 10 left to get to the TB. Due to the panel layout, I really need a 24 cable from this connector. I have tried several lengths of ribbon cable, and one rounded cable. The best performing cable is the 24 rounded (it ought to, it cost about $20). I need to run about 20 cycles the length of the X axis to lose a quarter turn of the motor (i.e. drifts towards the min limit). The 18 flat cable will lose it in about 4 cycles. The stepper motion starts to get rough with a 30 flat cable, and anything longer (I was testing with a 54 cable) is so unstable as to basically not work at all. One odd thing is that with the 18 flat and 24 rounded cables, only the X axis demonstrates this problem, if Y is having any problem, it is so small that I have so far not been able to detect it. Past the TBs I am using Belden low capacitance cables with individually twisted pairs, foil shield and drain, plus an overall shield to connect the stepper signals to the drives. This part appears to be working fine, as nothing changes if I swap things around past the TBs. Any ideas or recommendations? Thanks, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Cable recommendations for Mesa boards
John, Sebastian and Peter, Here is a combined reply, using John's post as the basis. What kind of stepper drives? In particular, I'm asking about the inputs. Optocouplers, or non-isolated? Do they have any filtering? I am using an IM483 micro-stepping driver, the manual can be found here: http://imshome.com/Product%20Manual%20PDF/im483.pdf It has opto-isolated inputs (see page 43) for step, direction and enable, which are the only inputs I am using. The full list of I/O assignments are on pages 12 13. For the cable, have you tried twisted ribbon cable? Like this: http://media.digikey.com/photos/3M%20Photos/1700^50%20(100SF).jpg I was not able to find that in pre-made lengths, I could only find flat and rounded so I went with rounded like this (first one): http://www.pc-pitstop.com/scsi_cables/rounded_scsi_cables.asp Although that photo seems to show only a few inches of twisted cable between the straight sections, usually it is longer. I have a partial spool that I got surplus a while back, I think it is 18 of twist and then 2 of straight (you have to put the connectors on the straight part). Or maybe it is 16 of twist and 2 of straight, totaling 18 per segment. I have several cables that are either 3 or 4 segments long that I use in a test computer with a 5i20, and I haven't noticed any noise issues. If you have the IDC connectors, I could send you a 6 foot chunk of cable to try. Yea, I am familiar with it, I was just trying avoid making my own cables. I don't do it very often, so I invariably have to do it a few times to get a good cable, lined up properly and with good connections on every pin. I appreciate the offer, but I will just order a spool and some connectors, and do it myself if that is what it takes. To be honest, I think you are dealing with more than just a cable issue. Flat ribbon cable with grounds on every other pin is really pretty good stuff. And step-dir is not that demanding - we're not talking PCI or even ISA bus, we're talking about pulses that are typically multiple microseconds long. If your signals/grounding are so marginal that 20 of cable clobbers things, you need to look closer - hence my question about the driver inputs. It is really surprising in that this is the second machine and the first basically worked on the first go. They are both retrofits. The part from stepper drivers through to the motors is unchanged, while everything from the computer up to the stepper drivers has been replaced. I did encounter this at one point on the first system, but it went away when I swapped computers (and possibly cables). I was under a lot of pressure to get that system into production, so I never had the chance to trouble shoot it. However, as I had previously reported to Sebastian, it is working very well. The previous system had some real problems with arcs and generated a lot of jaggies. Under EMC, the jaggies are gone. From Sebastian: Are you sure it's noise in the cable, rather than, say, stepper timings or something? (Every human being should be issued an oscilloscope at birth.) I have not put a scope on it. My only speculation was that the cable was deforming the stepper square wave enough to cause occasional lost steps. From Peter: Is it possible your STEP and DIR inputs have optocouplers returned to 5V?. This is known problem with the 5I20 (or any of our FPGA cards) outputs since they only swing 0 to 3.3V. Hmm, maybe a little RTFM time is in order. I wired it up the same as the previous system, which used 5V rather than 3.3. Since the first system worked, I never checked. Thanks, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Cable recommendations for Mesa boards
Matt, (and everyone else) Thanks, I think you are right. I won't get a chance to test it until Tuesday, but will let you know. Regards, Eric I don't think 3.3 Volts will be enough because the recommended R_series in Figure 7.7 is 0 ohms for 5 Volts, meaning there is either an existing series resistance inside the drive, or the optocoupler has a 5 Volt TTL input. Eric, do this, and use the 5 Volts from pin 49 of P4 on the 5i20 as the opto supply (P1:4 on the IMS483). Set W3 on the 5i20 board to the 5 Volt position. I think this will make it work with any of your cables. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Using hostmot2 for 7i43
Sebastian, et al, I recently got a 7i43 (7i43-U-4 to be specific) and am getting an error loading the firmware. I load the drivers / firmware as follows: Loadrt hostmot2 debug_idrom=1 debug_module_descriptors=1 debug_pin_descriptors=1 debug_modules=1 Loadrt hm2_7i43 config=firmware=hm2/7i43/SVST4_4B.BIT num_stepgens=2 num_pwmgens=1 num_encoders=0 enable_raw The command line error message is: insmod: error inserting '/usr/realtime-2.6.24-16-rtai/modules/emc2/hm2_7i43.ko': -1 Input/output error I can post the output from dmesg, but I think this is the operative part: hm2_7i43: /DONE is not low after CPLD reset! hm2_7i43: /DONE is not low after CPLD reset! hm2/hm2_7i43.0: failed to reset fpga, aborting hm2_register hm2_7i43.0: board at (ioaddr=0x0378, ioaddr_hi=0x0778, epp_wide ON) not found! If I understand correctly, the FPGA is loaded via the USB interface. I checked the USB and parallel port setup in the BIOS. I did not see anything meaningful for the USB ports, but for parallel port mode, it defaults to a mode of ECP. I changed it to Bi-directional, but that made no difference. The BIOS does not show the address of the parallel port, but I assume it is at the standard 0x378 address. I have both USB and parallel cables connected. What no doubt stupid thing am I missing. Regards, Eric - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Using hostmot2 for 7i43
Peter, I changed the parallel port mode to EPP, no difference. How does one tell what the interface version is? It is not listed in the BIOS. The BIT files I am using are dated 11/11/08. Regards, Eric Parallel _Downloading_ firmware to the 7I43 requires: 1. Parallel port with _EPP_ interface, V1.7 or V1.9 _Accessing_ HostMot2 via Parallel port requires: 1. Parallel port with _EPP_ interface V1.9 _only_ 2. If you have older bit files, (not november of this year) There may be a problem with accessing the card via EPP if the 7I43 is USB powered. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Using hostmot2 for 7i43
Sebastian, Install the parport drivers how? I thought they were disabled in the rtai kernel so they would not conflict with EMC. The cable is a factory made cable and rings out. Regards, Eric The error you're getting is indicative of a low-level parallel port communication error. You should figure out what address your parport is at; you can do this by loading the linux parport and parport_pc drivers and seeing what they say. Also check your cables. I know i sound like a broken record regarding EPP cables, but it really is the problem 99% of the time. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Using hostmot2 for 7i43
Sebastian, The Parport is at the normal address of 0x378. I did not do a loadrt probe_parport. I have now added it, but still get the same error. Regards, Eric They are disabled, but you can force it. Try this: 1. Stop realtime 2. sudo insmod /lib/modules/$(uname -r)/kernel/drivers/parport/parport_pc.ko Step 2 should be all one line, with a single space between uname and -r Then look in the dmesg, at the end, it should tell you where the parport is. Hm, which reminds me... You *are* saying loadrt probe_parport before loadrt hm2_7i43, right? Oops, I forgot to put that in the hm2_7i43(9) manpage, i'll add that now. - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Using hostmot2 for 7i43
Peter, When I connect the USB cable, one LED (left most) flashes momentarily and goes off, the second red LED and the yellow LED are on steady. After trying to download, there is no change. Regards, Eric First off it would help me to know whether the firmware download succeeded This is indicated by both red LEDS being off (only the yellow PWR led being on) If both red LEDS are off, then the firmware loaded successfully - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Using hostmot2 for 7i43
Peter, Yep, that was it. Set it to parallel port and it basically worked. Thanks, Eric That to me indicates that you have the 7I43 in USB config mode, this wont work for EMC... When the 7I43 is on EPP mode and first powered on, all three status lights should be on - This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100url=/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] Write error with hostmot2 and 7i43 board
Sebastian, et al, I am getting a strange error using the hostmot2 driver and the 7i43 board. The error is hm2/hm2_7i43.0: TRAM write error! (addr=0x1000, size=8, iter=68373). The error occurs when running a g-code program but not while jogging, at least initially. If I bring the system up from a fresh boot, I can jog. But once I run a g-code program and get the error, I will then get a following error if I try to jog an axis. Additionally, if I shut down the program and restart, immediately after coming up again I get an error hm2_7i43:/DONE is not low after CPLD reset! Except for remapping some of the GPIO (which is currently mostly disabled) and of course the bit file specified, the configuration is identical to my working configuration on the m5i20 controller. I get the same error and symptoms for both SVST4_4B.BIT and SVST4_6B.BIT. I gather it has something to do with the communications over the parallel port, but not sure what if any parameters affect that. Any ideas? Thanks, Eric -- SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Write error with hostmot2 and 7i43 board
Peter, What EPP mode are you using and what type and length of cable do you have between the 7I43 and Parallel port? The available parallel port modes in the BIOS are Output only, Bi-directional, EPP and ECP. It is set to EPP, but I do not see a further selection for mode of EPP. I think we determined previously that it was version 1.9. The cable was fairly hard to find, I got it here: http://www.sealevel.com/product_detail.asp?product_id=73226%2DPin%5FIDC%5Ft o%5FDB25%5FCable%5F It is 8 long and I previously rang it out. What type of paralle port do you have (motherboard/PCI add-in) The parallel port is straight from the mother board. This is the motherboard I am using: http://www.mini-box.com/Intel-D945GCLF2-Mini-ITX-Motherboard?sc=8category=1 00 Is the iteration count always the same? No. Running it again I got an iteration count of 30865. I dont know if it would be caught by software checking but ISTR the 7I43 cannot use a base thread (EPP operations need to be atomic) so a 7I43 HAL should only normally only use a Servo thread I am using the servo-thread for read and write. I also tried slowing down the servo thread, although I could try slowing it down more. I was using 1ms (100). Regards, Eric -- SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Write error with hostmot2 and 7i43 board
Peter, I found something interesting while checking to get your answers. Presiously I was only jogging X and Y, and did not get any errors. This time I tried Z as well. When I jog the Z axis I get the TRAM write error. That would explain why I get the error when running a G-Code program, but not when jogging. The test program I was using was 3D_Chips, which of course uses the Z axis. Here are the answers to your questions. LED states PWR DONE INIT Start-upYellow Red Red EMC Start Yellow Off Off After Error Yellow Off Off Stop EMCYellow Off Off Basically the LED states never change once EMC is run for the first time. As for cycling power, I have done both a warm reboot and cold reboot. No difference. I will check to see if there is anything different in the configuration of Z relative to X and Y. Regards, Eric Well, Sebastian confirmed that the TRAM write error is an EPP timeout error, but the CPLD error indicates something more global is wrong. Is it possible you have a power supply issue? EPP timeout means that the card did not respond to a address or data strobe by de-asserting /Wait within 10 uSec. Normal FPGA timing is 300 nS for this time, more than 10 Usec likely means that the card is unplugged, powered down or some how locked-up. The CPLD error when attempting to re-program the FPGA makes some kind of power or lock-up problem more likely the culprit. What would be helpful to me is this information: What are the LED states when you get the TRAM error? What are the LED states when you get the CPLD error? When you say fresh boot, are you cycling the power? Does reset without cycling the power allow you to reprogram the FPGA? Peter Wallace Mesa Electronics (\__/) (='.'=) This is Bunny. Copy and paste bunny into your ()_() signature to help him gain world domination. -- SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users -- SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Write error with hostmot2 and 7i43 board
Peter, At this point I am just working out the configuration. I am not connected to anything as far as hardware. There is nothing connected to the P3 and P4 connectors. Regards, Eric Well thats fairly weird. If there is no configuration difference, Is it possible that there is a electrical noise issue with the Z axis? If this is a stepper machine, can you try without the Z axis powered (to see if its possibly a noise problem) -- SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] Write error with hostmot2 and 7i43 board
Peter, That is good news, at least as far as finding a problem and having a probable solution. What do I need to do from here? Please feel free to contact me off list. BTW, regarding the EMC 2.3.7 + 7i43... thread, I also have a box with a VIA mini-ITX motherboard (http://www.mini-box.com/Hybrid-C7-1-5G?sc=8category=99) which I am currently using with an m5i20 board. I can easily reconfigure for the 7i43. Let me know if that is different from what you have used to test and if you would like me to test anything with it. Regards, Eric Well I got one of those MiniITX D945GCLF2 Motherboards and did some testing The SMSC super I/O chip has very fast edges, and triggers a problem I'd noticed with one of my plug-in PCI parallel port cards. (1 foot flat cable) With my EPP loopback test and the current firmware I got verify errors about every 200K EPP operations :-( With new firmware that has improved EPP timing I got the error rate down to about 1 error every 100 million EPP operations With Rev C hardware and new firmware the test has gotten to ~500 million operations without error, (still running) I'll leave it on over night to make sure I've really got it licked. I will probably have to send you a REV C 7I43 (three 220 PF capacitors added to EPP ASTROBE/DSTROBE/READ at 26 pin Header to prevent overshoot) -- SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users