Hi Frank,
I haven't had a lot of time to try anything with the amps but I have been trying to understand the example and your answer fully before I launch into that.
Either use halType="u32"
This is a point that has been mystifying to me, I will try to explain my meager understanding in the hopes that I will be corrected or that others may learn.
From what I can tell if you define the objects 0x6040 Conrol Word, and 0x6060 Mode as u32 values in your xml, you are able to set the required values for start-up in your hal file (without writing any raw sdo data in your xml file). Keep in mind that the amp is still in the pre-op state when the hal file is read. Which makes sense since it is recommended to download all sdo data (or write parameters?) when the slave is in the pre-op state. Then when linuxcnc starts up, the slave is in the op-state BUT, for example changing modes is not possible since linuxcnc has no way to change state. example set 0x6060 from 0x08 CSP mode to 0x06 Home mode. Which is fine...kinda if you do not want to use the internal homing routine of the servo amps. Roschi see's this early in the development and mention's this around pg 4? of this thread. He? develops the "special32" bit so that linuxCNC can control individual bits in the control word and mode objects, or read 0x6061 mode-op-status as feed back into classic ladder/etc.
or -- if you want bitwise splitting --halType="complex"
The newly developed "complex" variable builds on the complex32 variable but is not limited to 32 bits. Similar to the "complex32", the 'complex" variable breaks out the objects into individual bits which can then be connected to io/motion/classic ladder pins and the resulting combination of bits is then sent back to the amp as an "octet string" i.e. 1 byte at time = 2 hex values satisfying the objects 16 bit "u32" variable requirement and allowing linuxCNC to interact with the objects.
In theory this all seems like this should work and probably does which makes me think that the problem lies in the settings of the amplifier, or there is a slight difference between "proven?" delta asda-a2 and asda-a2-e amplifiers. However, the ASDA-A2-E amps conform to Cia402 standard and should be similar in set-up to Roschi's Stroeber amps. In fact the manuals are very similar...
Or perhaps there is something wrong with my files? Who knows at this point...I will try again when I get a chance.
Kind Regards,
Dan