Thank you for your suggestions, Jacob. Regarding the RMCTools Event Log, I see now how useful it is.
By connecting to the RMC with RMCTools AND with the C# program simultaneously - I can watch events happen that originated from the C# app.
As it turns out, ‘WriteFFile’ wasn’t necessary. ‘WriteLFile’ worked fine. But I did need to change the one parameter to ‘fn70CommandArea’.
(I’m assuming ‘fn70LrgCommandArea’ would have also worked but haven’t tested it.)
I just want to describe my endeavors in case it assists others:
From RMCLink Address Map for the RMC70
File | File Constant | Description
12 fn70ParameterAxis0 Control Axis 0 Parameter Registers
…
16 fn70CommandArea Command Area - Small
Element | Register Name
0 Axis 0 Command
1 Axis 0 Parameter 1
…
6-11 Axis 1 Command Registers
The “element” corresponds with 2nd parameter to Write(F/L)File
public void WriteFFile (int file, int element, float[] data, int offset, int count)
My revised code:
[code]int[] cmd = new int[2];
int element = 0; /* 0 for axis 0 (0-5)
* 6 for axis 1 (6-11)
*/
cmd[0] = 97; // command: enables or disables a single axis
cmd[1] = 1; // 0 -> disable, 1 -> enable
// To target a different axis, change the ‘element’ variable
rmc.WriteLFile((int)FileNumber70.fn70CommandArea, element, cmd, 0, 2);[/code]
Part of my confusion stemmed from the use of “file number”.
We have the enum FileNumber70. And from that we get a sub-enum
fn(file number) of whatever, to place in the “file” parameter.
(I think your enums should be renamed.)
I’m still don’t know how FileNumber70.fn70ParameterAxis0 (enum for 12)
would be used… but at least I can enable/disable a specific axis now.
Thanks for the help!