Pololu Micro/Mini-Maestro Driver - Native Linux Kernel Modul

Hi!, my name is Roosemberth Palacios, I reciently bought a Mini18 Maestro and I would like to develop a native linux Implementation for such product. As I could see from your SDK, Your program is written in C#, but I am trying to port this a AI-Controlled System, an I’ve managed to make The main module talk throught pipes, You may tell me to use the TTL port and control the Maestro through there, but I’m petty sure that a Native USB Implementation it very important, because Controlling a Helicopter is a time-critical application.

So, I would like to recieve more information about Pololu’s Maestro USB Protocol.

I used lsusb -vvv to list the Device Characteristics http://justpaste.it/dod9

But the last interface states:

Interface Descriptor:
bInterfaceNumber 4
bNumEndpoints 0
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 4
bInterfaceProtocol 1
iInterface 2 Pololu Mini Maestro 18-Channel USB Servo Controller

What I can’t figure out is:

-> Is there a Non-listed Control endpoint that can be used for configuring Device mode?
-> Can I handle it and how I can do it?

From the Composite device itself:

-> A kernel driver instance is ran for each Interface?
-> How can I see which interface am I handling and how to manage it?
-> How can I treat Interface Associations?

From the Pololu’s USB Protocol:

I’m still working on ‘Cracking’ the Comunication algorithm, but a little bit of help would be appreciated:

-> Comunication frames Structures
-> Command Codes
-> Command Functions and Syntaxis

Best Regards!

Hello.

I just noticed this post after writing a detailed reply to your email, which had the same questions. Please let us know when you contact us in multiple ways. If you have any more questions that were not addressed in my email, let me know.

–David

I wrote a small kernel module for the maestro a while back as part of a class project. I didn’t bother trying to do any of the configuration in the module, and only sent commands, but if I can help let me know.
I recall it being pretty straight forward.

It is not obvious to me that you will reduce latency much by writing your own kernel module, but it could help. I think the processing time is going to be overshadowed by the time for the physical movement in most cases.

-Chris

I actually just went through and saw that my first post here was about this: Short Position-only kernel module

[quote=“DavidEGrayson”]Hello.

I just noticed this post after writing a detailed reply to your email, which had the same questions. Please let us know when you contact us in multiple ways. If you have any more questions that were not addressed in my email, let me know.

–David[/quote]
Any chance we can see the reply in the forum?

Sure. This is basically what my email to Roosemberth said:

Hello, Roosemberth.

Thank you for your interest in the Maestro.

We do not provide any documentation for the Maestro’s native USB interface except what is in the Pololu USB SDK. You can look at it as a guide in order to implement your code. To control your helicopter, probably all you would need is to implement the Set Target command, which is a single control transfer done on endpoint 0. You can look at the source code of the setTarget method in the Usc class and the source code of all the methods that it calls in order to understand how to do this.

Since you don’t like to use C#, you might look in the “Related Resources” section of the Maestro User’s Guide and see if there is any example code there that is closer to what you want to do.

I am not sure what you mean by “device mode”, but all USB devices use Endpoint 0 for control transfers, and that is the endpoint the Maestro uses for its native USB interface.

To send a control transfer from a user-space program, you should use the libusb_control_transfer function in libusb.

I don’t know much about Linux kernel internals, but I believe that it just takes one cdc_acm instance to handle both interfaces for a given COM port. So there would be one instance handling interfaces 0 and 1, and another instance handling interfaces 2 and 3.

Logically, the control transfers you want to send are part of the native USB interface, which is interface 4. However you don’t have to explicitly choose interface 4 in your code. You should look at the resources I mentioned above and see how they work; I think they don’t need to specify an interface.

You should not worry about them.

Please refer to the source code of the Pololu USB SDK and the Usc class in particular.

I do not know much about kernel development and will not be able to assist you with it. Also, I doubt that you really need to make a kernel module because libusb from user space should work fine.

–David

Hi, Sorry for this kind of double-posting. And delay in answer!

I’m working on script transfer, can you detail it more? I don’t understand this declarations (My ignorance on C# might be a factor, please help :smiley: )

       private string privateScript = null;
        private BytecodeProgram privateProgram;

        public string script
        {
            get { return privateScript; }
            // There is no set accessor here.  The only way to set the script string is to call
            // setAndCompileScript.  We don't want to have a set accessor here because the script
            // needs to be compiled, which can take a second, so it should not be set casually.
        }

        public void setAndCompileScript(string script)
        {
            privateScript = null;

            privateProgram = BytecodeReader.Read(script, servoCount != 6);

            // If no exceptions were raised, set the script.
            privateScript = script;
        }

        public decimal periodInMicroseconds
        {
            get
            {
                if (servoCount == 6)
                {
                    return Usc.periodToMicroseconds(servoPeriod, servosAvailable);
                }
                else
                {
                    return miniMaestroServoPeriod / 4;
                }
            }
        }

    	public List<Sequence> sequences = new List<Sequence>();

        public BytecodeProgram bytecodeProgram
        {
            get { return privateProgram; }
        }[/code]

Also, I was unable to run the Sample Programs (I Just ran the CMD Interface), this is the output I get:

[code]roosemberth@Azulejo-Main-Engine:~/Coptex-Project/SCP-Platform/SCP-src/3rd Party Code/Pololu-USB-SDK/Maestro/MaestroAdvancedExample$ ./MaestroAdvancedExample 
Missing method System.Type::op_Equality(Type,Type) in assembly /usr/lib/mono/2.0/mscorlib.dll, referenced in assembly /usr/lib/mono/gac/UIAutomationProvider/3.0.0.0__31bf3856ad364e35/UIAutomationProvider.dll
Error setting up UIA: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Application.InitializeUIAutomation () [0x00000] in <filename unknown>:0 

Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Forms.XplatUI ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Windows.Forms.Application.EnableVisualStyles () [0x00000] in <filename unknown>:0 
  at Pololu.Usc.MaestroAdvancedExample.Program.Main () [0x00000] in <filename unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Forms.XplatUI ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Windows.Forms.Application.EnableVisualStyles () [0x00000] in <filename unknown>:0 
  at Pololu.Usc.MaestroAdvancedExample.Program.Main () [0x00000] in <filename unknown>:0 

Best Regards!

Hi @ChrisBob! can you explaint how does the following code helps to pick the right interface of the composite device?

/* Get a minor range for your devices from the usb maintainer */
#define USB_SKEL_MINOR_BASE   192

static struct usb_class_driver skel_class = { .name = "usb/serv%d", .fops = &skel_fops, //.mode = S_IFCHR | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH, .minor_base = USB_SKEL_MINOR_BASE, };

static int skel_open(struct inode *inode, struct file *file)
{
   struct usb_skel *dev;
   struct usb_interface *interface;
   int subminor;
   int retval = 0;

   subminor = iminor(inode);

   interface = usb_find_interface(&skel_driver, subminor);
   if (!interface) {
      err ("%s - error, can't find device for minor %d",
           __FUNCTION__, subminor);
      retval = -ENODEV;
      goto exit;
   }

I was trying to make a full-implementation of the maestro functions, I won’t use them all, But I think that I could take that as a Challenge (haha), but I’m having a hard time (It’s the first time a make a Kernel Module Driver).

Best Regards!

Hello, Roosemberth.

The C# code you quoted seems to be from the UscSettings class in UscSettings.cs of the Pololu USB SDK. In the future, please tell me where you found the code when you are asking about it. The periodInMicroseconds property is the number of microseconds of time allotted to each “servo period”. A period is basically just a segment of time where the Maestro sends a pulse to each servo.

The “sequences” property is a list of Sequences; this is the underlying way that we store the sequences users enter in the Sequence tab of the Maestro Control Center. The other properties are also bits of data that need to be stored in the UscSettings object so that they can be stored on the Maestro or in the PC’s registry when someone saves their Maestro settings. Did you have some specific questions about that code?

Did you already look at the setTarget command in the Usc class and implement that? That is the main thing you will need to actually control your helicopter.

The error message from Mono that you posted makes it look like one part of Mono’s WinForms implementation is trying to find another part and it can’t find it. Unfortunately I have not seen that error and do not know what to do about it. A few Google searches seem to indicate that System.Type::op_Equality(Type,Type) is part of the mscorlib.dll for .NET 4.0, so maybe there is some mismatch in what version of mscorlib.dll we are compiling against. What type of computer are you compiling this on? What versions of everything do you have? Could you run “make clean” and then “make Maestro/MaestroAdvancedExample” and post the full output from the second command? If it isn’t important for you to compile a C# GUI application then you can just ignore this message and work with the command-line example program we have, UscCmd.

–David

The USB struct created with

static struct usb_driver skel_driver = {
   //.owner = THIS_MODULE,
   .name = "usbServo",
   .id_table = skel_table,
   .probe = skel_probe,
   .disconnect = skel_disconnect,
};

Identifies the functions that the USB interface uses to work with the device. In my case I kept the skel_probe function definition from the USB skeleton driver.

The only endpoint used is the control endpoint which I get in the probe function

dev->ctrl_out_endpointAddr = 0; // first control endpoint address

I did all communication through this endpoint.

I honestly don’t remember what the minor base is, but I think it is part of identifying the device as one the module can work with.

I have never worked in C# either, but I remember being able to pick apart what I needed form the example code that Pololu provides.

@DavidEGrayson: the specific question about that code it’s on this part:

public string script
        {
            get { return privateScript; }
            // There is no set accessor here.  The only way to set the script string is to call
            // setAndCompileScript.  We don't want to have a set accessor here because the script
            // needs to be compiled, which can take a second, so it should not be set casually.
        }

How does the program loads the file?, I know I might not use that in my application, but I wanted to make an entire linux native alternative…

I did see the ‘setTarget’ Command, But there are a couple of things I don’t understand:

controlTransfer(0x40, (byte)uscRequest.REQUEST_SET_TARGET, value, servo);

As the controlTransfer function is defined as: (libusbdotnet.sourceforge.net/V2/ … 922485.htm)

public virtual bool controlTransfer(
	ref UsbSetupPacket setupPacket,
	Object buffer,
	int bufferLength,
	out int lengthTransferred
)

but the UsbSetupPacket is 0x40, which doesn’t makes sense according to it’s definition: libusbdotnet.sourceforge.net/V2/ … 92bd52.htm

I know I won’t the using the GUI, but I wanted to See it’s options to get a better knowledge of the capabilities of the hardware and all the configurable options I have, that’s why I was trying to compile it, here’s my current system:

roosemberth@Azulejo-Main-Engine:~$ uname -a
Linux Azulejo-Main-Engine 3.8.0-32-generic #47-Ubuntu SMP Tue Oct 1 22:35:23 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
roosemberth@Azulejo-Main-Engine:~/Coptex-Project/SCP-Platform/SCP-src/3rd Party Code/Pololu-USB-SDK$ make clean
«./UsbAvrProgrammer/Programmer/Programmer.dll.mdb» supprimé
«./UsbAvrProgrammer/PgmCmd/PgmCmd.exe.mdb» supprimé
«./Maestro/Usc/Usc.dll.mdb» supprimé
«./Maestro/MaestroAdvancedExample/MaestroAdvancedExample.exe.mdb» supprimé
«./Maestro/MaestroEasyExample/MaestroEasyExample.exe.mdb» supprimé
«./Maestro/Sequencer/Sequencer.dll.mdb» supprimé
«./Maestro/UscCmd/UscCmd.exe.mdb» supprimé
«./UsbWrapper_Linux/UsbWrapper.dll.mdb» supprimé
«./Jrk/JrkExample/JrkExample.exe.mdb» supprimé
«./Jrk/Jrk/Jrk.dll.mdb» supprimé
«./Jrk/JrkCmd/JrkCmd.exe.mdb» supprimé
«./SimpleMotorController/SmcCmd/SmcCmd.exe.mdb» supprimé
«./SimpleMotorController/SmcExample2/SmcExample2.exe.mdb» supprimé
«./SimpleMotorController/Smc/Smc.dll.mdb» supprimé
«./SimpleMotorController/SmcExample1/SmcExample1.exe.mdb» supprimé
«Maestro/UscCmd/Bytecode.dll» supprimé
«Maestro/UscCmd/Sequencer.dll» supprimé
«Maestro/UscCmd/Usc.dll» supprimé
«Maestro/UscCmd/UsbWrapper.dll» supprimé
«Maestro/MaestroAdvancedExample/Bytecode.dll» supprimé
«Maestro/MaestroAdvancedExample/Sequencer.dll» supprimé
«Maestro/MaestroAdvancedExample/Usc.dll» supprimé
«Maestro/MaestroAdvancedExample/UsbWrapper.dll» supprimé
«Maestro/MaestroEasyExample/Bytecode.dll» supprimé
«Maestro/MaestroEasyExample/Sequencer.dll» supprimé
«Maestro/MaestroEasyExample/Usc.dll» supprimé
«Maestro/MaestroEasyExample/UsbWrapper.dll» supprimé
«UsbAvrProgrammer/PgmCmd/Programmer.dll» supprimé
«UsbAvrProgrammer/PgmCmd/UsbWrapper.dll» supprimé
«Jrk/JrkCmd/Jrk.dll» supprimé
«Jrk/JrkCmd/UsbWrapper.dll» supprimé
«Jrk/JrkExample/Jrk.dll» supprimé
«Jrk/JrkExample/UsbWrapper.dll» supprimé
«SimpleMotorController/SmcCmd/Smc.dll» supprimé
«SimpleMotorController/SmcCmd/UsbWrapper.dll» supprimé
«SimpleMotorController/SmcExample1/Smc.dll» supprimé
«SimpleMotorController/SmcExample1/UsbWrapper.dll» supprimé
«SimpleMotorController/SmcExample2/Smc.dll» supprimé
«SimpleMotorController/SmcExample2/UsbWrapper.dll» supprimé
«UsbWrapper_Linux/UsbWrapper.dll» supprimé
«Maestro/Sequencer/Sequencer.dll» supprimé
«Maestro/Usc/Usc.dll» supprimé
«Maestro/UscCmd/UscCmd» supprimé
«Maestro/MaestroAdvancedExample/MaestroAdvancedExample» supprimé
«Maestro/MaestroAdvancedExample/MainWindow.resources» supprimé
«Maestro/MaestroAdvancedExample/Properties/Resources.resources» supprimé
«Maestro/MaestroEasyExample/MaestroEasyExample» supprimé
«Maestro/MaestroEasyExample/MainWindow.resources» supprimé
«Maestro/MaestroEasyExample/Properties/Resources.resources» supprimé
«UsbAvrProgrammer/Programmer/Programmer.dll» supprimé
«UsbAvrProgrammer/PgmCmd/PgmCmd» supprimé
«Jrk/Jrk/Jrk.dll» supprimé
«Jrk/JrkCmd/JrkCmd» supprimé
«Jrk/JrkExample/JrkExample» supprimé
«Jrk/JrkExample/MainWindow.resources» supprimé
«Jrk/JrkExample/Properties/Resources.resources» supprimé
«SimpleMotorController/Smc/Smc.dll» supprimé
«SimpleMotorController/SmcCmd/SmcCmd» supprimé
«SimpleMotorController/SmcExample1/SmcExample1» supprimé
«SimpleMotorController/SmcExample1/MainWindow.resources» supprimé
«SimpleMotorController/SmcExample1/Properties/Resources.resources» supprimé
«SimpleMotorController/SmcExample2/SmcExample2» supprimé
«SimpleMotorController/SmcExample2/MainWindow.resources» supprimé
«SimpleMotorController/SmcExample2/Properties/Resources.resources» supprimé
roosemberth@Azulejo-Main-Engine:~/Coptex-Project/SCP-Platform/SCP-src/3rd Party Code/Pololu-USB-SDK$ make Maestro/MaestroAdvancedExample
make: Rien à faire pour « Maestro/MaestroAdvancedExample ».
roosemberth@Azulejo-Main-Engine:~/Coptex-Project/SCP-Platform/SCP-src/3rd Party Code/Pololu-USB-SDK$ make 
all                     jrkcmd                  maestroadvancedexample  Makefile                smccmd                  smcexample2             
clean                   jrkexample              maestroeasyexample      pgmcmd                  smcexample1             usccmd                  
roosemberth@Azulejo-Main-Engine:~/Coptex-Project/SCP-Platform/SCP-src/3rd Party Code/Pololu-USB-SDK$ make maestroadvancedexample 
gmcs -unsafe -debug -target:library -out:Maestro/Sequencer/Sequencer.dll Maestro/Sequencer/Sequence.cs Maestro/Sequencer/Frame.cs -r:/usr/lib/mono/2.0/System.Windows.Forms.dll
gmcs -unsafe -debug -target:library UsbWrapper_Linux/UsbDevice.cs -out:UsbWrapper_Linux/UsbWrapper.dll -lib:/usr/lib/mono/2.0/ -r:System.dll -r:System.Core.dll
gmcs -unsafe -debug -target:library -out:Maestro/Usc/Usc.dll -r:Maestro/Bytecode/Bytecode.dll -r:UsbWrapper_Linux/UsbWrapper.dll -r:Maestro/Sequencer/Sequencer.dll Maestro/Usc/ConfigurationFile.cs Maestro/Usc/IUscSettingsHolder.cs Maestro/Usc/Usc.cs Maestro/Usc/Usc_protocol.cs Maestro/Usc/UscSettings.cs
MONO_IOMAP=all resgen2 -usesourcepath Maestro/MaestroAdvancedExample/MainWindow.resx Maestro/MaestroAdvancedExample/MainWindow.resources
Read in 0 resources from '/home/roosemberth/Documents/Projects/Coptex-Project/SCP-Platform/SCP-src/3rd Party Code/Pololu-USB-SDK/Maestro/MaestroAdvancedExample/MainWindow.resx'
Writing resource file...  Done.
MONO_IOMAP=all resgen2 -usesourcepath Maestro/MaestroAdvancedExample/Properties/Resources.resx Maestro/MaestroAdvancedExample/Properties/Resources.resources
Read in 0 resources from '/home/roosemberth/Documents/Projects/Coptex-Project/SCP-Platform/SCP-src/3rd Party Code/Pololu-USB-SDK/Maestro/MaestroAdvancedExample/Properties/Resources.resx'
Writing resource file...  Done.
cp Maestro/Bytecode/Bytecode.dll Maestro/Sequencer/Sequencer.dll Maestro/Usc/Usc.dll UsbWrapper_Linux/UsbWrapper.dll Maestro/MaestroAdvancedExample
gmcs -unsafe -debug -target:exe -out:Maestro/MaestroAdvancedExample/MaestroAdvancedExample.exe Maestro/MaestroAdvancedExample/MainWindow.cs Maestro/MaestroAdvancedExample/MainWindow.Designer.cs Maestro/MaestroAdvancedExample/Program.cs Maestro/MaestroAdvancedExample/Properties/AssemblyInfo.cs Maestro/MaestroAdvancedExample/Properties/Resources.Designer.cs Maestro/MaestroAdvancedExample/Properties/Settings.Designer.cs -r:Maestro/MaestroAdvancedExample/Bytecode.dll -r:Maestro/MaestroAdvancedExample/UsbWrapper.dll -r:Maestro/MaestroAdvancedExample/Usc.dll -r:/usr/lib/mono/2.0/System.Core.dll -r:/usr/lib/mono/2.0/System.Windows.Forms.dll -r:/usr/lib/mono/2.0/System.Drawing.dll -r:/usr/lib/mono/2.0/System.Windows.Forms.dll -r:/usr/lib/mono/2.0/System.dll -r:/usr/lib/mono/2.0/System.Data.dll -resource:Maestro/MaestroAdvancedExample/MainWindow.resources,Pololu.Usc.MaestroAdvancedExample.MainWindow.resources -resource:Maestro/MaestroAdvancedExample/Properties/Resources.resources,Pololu.Usc.MaestroAdvancedExample.Properties.Resources.resources
mv Maestro/MaestroAdvancedExample/MaestroAdvancedExample.exe Maestro/MaestroAdvancedExample/MaestroAdvancedExample
roosemberth@Azulejo-Main-Engine:~/Coptex-Project/SCP-Platform/SCP-src/3rd Party Code/Pololu-USB-SDK$ ./Maestro/MaestroAdvancedExample/MaestroAdvancedExample 
Missing method System.Type::op_Equality(Type,Type) in assembly /usr/lib/mono/2.0/mscorlib.dll, referenced in assembly /usr/lib/mono/gac/UIAutomationProvider/3.0.0.0__31bf3856ad364e35/UIAutomationProvider.dll
Error setting up UIA: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Application.InitializeUIAutomation () [0x00000] in <filename unknown>:0 

Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Forms.XplatUI ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Windows.Forms.Application.EnableVisualStyles () [0x00000] in <filename unknown>:0 
  at Pololu.Usc.MaestroAdvancedExample.Program.Main () [0x00000] in <filename unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Forms.XplatUI ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Windows.Forms.Application.EnableVisualStyles () [0x00000] in <filename unknown>:0 
  at Pololu.Usc.MaestroAdvancedExample.Program.Main () [0x00000] in <filename unknown>:0 
roosemberth@Azulejo-Main-Engine:~/Coptex-Project/SCP-Platform/SCP-src/3rd Party Code/Pololu-USB-SDK$

“make Maestro/MaestroAdvancedExample” didn’t worked, so I used make maestroadvancedexample, at the end, I tryed to run, but still have the same error…

Thank you very much for your help!

Best Regards!

@ChrisBob, Thanks for your reply, I’ve figured out that the endpoints control the interface, so, I should just pick the right endpoints for an interface… Nevertheless, I can’t find Information on USB Minor, I’ve read here: http://www.spinics.net/lists/newbies/msg26434.html that it is kind of a way to diferenciate between similar devices…

Best Regards!

Hello, Roosemberth.

You were looking at the code for the UscSettings class, which doesn’t do anything with files. It does take a string representing your script and will help compile it. The Maestro XML settings files are handled by the ConfigurationFile class.

You found the wrong definition for controlTransfer. We are not using LibuUSBdotNET. You can find the one we are using in UsbWrapper_Linux/UsbDevice.cs.

Compiling that particular example GUI will not tell you much about the Maestro. That program basically just lets you select a Maestro by its serial number and whenever that Maestro is connected to the computer that program sends it commands to move a servo back and forth. You could learn a lot more from the Maestro User’s Guide and the Maestro Control Center software we provide.

It looks like you are using Ubuntu on a 64-bit machine. What version of Ubuntu is it? I think you can tell by running “cat /etc/lsb-release” if you are not sure.

–David

This is the output I get from cat /etc/lsb-release:

roosemberth@Azulejo-Main-Engine:~$ cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=13.10
DISTRIB_CODENAME=saucy
DISTRIB_DESCRIPTION="Ubuntu 13.10"
roosemberth@Azulejo-Main-Engine:~$

I can’t run Maestro Control Center, this are the errors I get:

roosemberth@Azulejo-Main-Engine:~$ cd Bureau/maestro_linux/
roosemberth@Azulejo-Main-Engine:~/Bureau/maestro_linux$ mono MaestroControlCenter 
Missing method System.Type::op_Equality(Type,Type) in assembly /usr/lib/mono/2.0/mscorlib.dll, referenced in assembly /usr/lib/mono/gac/UIAutomationProvider/3.0.0.0__31bf3856ad364e35/UIAutomationProvider.dll
Error setting up UIA: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Application.InitializeUIAutomation () [0x00000] in <filename unknown>:0 

** (mono:11785): WARNING **: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Forms.XplatUI ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Windows.Forms.Application.EnableVisualStyles () [0x00000] in <filename unknown>:0 
  at Pololu.MaestroControlCenter.Program.Main () [0x00000] in <filename unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Forms.XplatUI ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Windows.Forms.Application.EnableVisualStyles () [0x00000] in <filename unknown>:0 
  at Pololu.MaestroControlCenter.Program.Main () [0x00000] in <filename unknown>:0 
roosemberth@Azulejo-Main-Engine:~/Bureau/maestro_linux$ ./MaestroControlCenter 
Missing method System.Type::op_Equality(Type,Type) in assembly /usr/lib/mono/2.0/mscorlib.dll, referenced in assembly /usr/lib/mono/gac/UIAutomationProvider/3.0.0.0__31bf3856ad364e35/UIAutomationProvider.dll
Error setting up UIA: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0 
  at System.Windows.Forms.Application.InitializeUIAutomation () [0x00000] in <filename unknown>:0 

** (cli:11799): WARNING **: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Forms.XplatUI ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Windows.Forms.Application.EnableVisualStyles () [0x00000] in <filename unknown>:0 
  at Pololu.MaestroControlCenter.Program.Main () [0x00000] in <filename unknown>:0 
[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Forms.XplatUI ---> System.TypeInitializationException: An exception was thrown by the type initializer for System.Windows.Automation.Provider.AutomationInteropProvider ---> System.MissingMethodException: Method not found: 'System.Type.op_Equality'.
  at System.Windows.Automation.Provider.BridgeManager.GetAutomationBridges () [0x00000] in <filename unknown>:0 
  at System.Windows.Automation.Provider.AutomationInteropProvider..cctor () [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at Mono.UIAutomation.Winforms.FormListener.Initialize () [0x00000] in <filename unknown>:0 
  at Mono.UIAutomation.Winforms.Global.Initialize () [0x00000] in <filename unknown>:0 
  at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0 
  --- End of inner exception stack trace ---
  at System.Windows.Forms.Application.EnableVisualStyles () [0x00000] in <filename unknown>:0 
  at Pololu.MaestroControlCenter.Program.Main () [0x00000] in <filename unknown>:0 
roosemberth@Azulejo-Main-Engine:~/Bureau/maestro_linux$ 

Sorry for my delayed reply, I’ve been busy the past weeks, and I didn’t had time for nothing during this time,

Best Regads!

Hello.

I am sorry you are having trouble running the Maestro Control Center and the MaestroAdvancedExample on Ubuntu 13.10. It looks like both of those programs are failing with the same error.

I tried to recreate the problem here by installing Ubuntu Desktop 13.10 64-bit on a virtual machine (with VirtualBox). I was able to follow the instructions in the Maestro Control Center README and get it to run; it opened up a window and it did not show that error message.

I think you are getting affected by some kind of problem with Mono or the way that Mono was compiled. Maybe we should compare the details of our systems to see what is different. Could you run these commands and post the full output from them?

mono --version
dpkg --get-selections | grep mono | awk '{print $1}' | xargs dpkg -s | egrep 'Package|Version'

On my system, I get:

$ mono --version
Mono JIT compiler version 2.10.8.1 (Debian 2.10.8.1-5ubuntu2)
Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com
	TLS:           __thread
	SIGSEGV:       altstack
	Notifications: epoll
	Architecture:  amd64
	Disabled:      none
	Misc:          softdebug 
	LLVM:          supported, not enabled.
	GC:            Included Boehm (with typed GC and Parallel Mark)
$ dpkg --get-selections | grep mono | awk '{print $1}' | xargs dpkg -s | egrep 'Package|Version'
Package: fonts-tlwg-mono
Version: 1:0.5.1-3
Package: libmono-accessibility2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-corlib2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-corlib4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-data-tds2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n-west2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n-west4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-messaging2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-posix2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-security2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-security4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-sharpzip2.84-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-sqlite2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-configuration4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-data-linq2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-data2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-messaging2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-security4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-xml4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-wcf3.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-webbrowser2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-winforms2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: mono-4.0-gac
Version: 2.10.8.1-5ubuntu2
Package: mono-gac
Version: 2.10.8.1-5ubuntu2
Package: mono-runtime
Version: 2.10.8.1-5ubuntu2
Package: ubuntu-mono
Version: 13.04+13.10.20131014-0ubuntu1

You might also want to try on a different computer.

–David

Hello, this is the output I get:

roosemberth@Azulejo-Main-Engine:~$ mono --version
Mono JIT compiler version 2.10.8.1 (Debian 2.10.8.1-5ubuntu2)
Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com
	TLS:           __thread
	SIGSEGV:       altstack
	Notifications: epoll
	Architecture:  amd64
	Disabled:      none
	Misc:          softdebug 
	LLVM:          supported, not enabled.
	GC:            Included Boehm (with typed GC and Parallel Mark)
roosemberth@Azulejo-Main-Engine:~$ dpkg --get-selections | grep mono | awk '{print $1}' | xargs dpkg -s | egrep 'Package|Version'
Package: fonts-tlwg-mono
Version: 1:0.5.1-3
Package: libmono-2.0-1
Version: 2.10.8.1-5ubuntu2
Package: libmono-2.0-1-dbg
Version: 2.10.8.1-5ubuntu2
Package: libmono-2.0-dev
Version: 2.10.8.1-5ubuntu2
Package: libmono-accessibility2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-accessibility4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-addins-cil-dev
Version: 0.6.2-2
Package: libmono-addins-gui-cil-dev
Version: 0.6.2-2
Package: libmono-addins-gui0.2-cil
Version: 0.6.2-2
Package: libmono-addins-msbuild-cil-dev
Version: 0.6.2-2
Package: libmono-addins-msbuild0.2-cil
Version: 0.6.2-2
Package: libmono-addins0.2-cil
Version: 0.6.2-2
Package: libmono-c5-1.1-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-cairo2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-cairo4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-cecil-cil
Version: 0.9.5+dfsg-2
Package: libmono-cecil-cil-dev
Version: 0.9.5+dfsg-2
Package: libmono-cecil-flowanalysis-cil
Version: 0.1~vcs20110809.r1.b34edf6-2
Package: libmono-cecil-flowanalysis-cil-dev
Version: 0.1~vcs20110809.r1.b34edf6-2
Package: libmono-cecil-private-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-cecil-vb0.9-cil
Version: 2.10-2
Package: libmono-cil-dev
Version: 2.10.8.1-5ubuntu2
Package: libmono-codecontracts4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-compilerservices-symbolwriter4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-corlib2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-corlib4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-cscompmgd8.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-csharp4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-custommarshalers4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-data-tds2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-data-tds4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-db2-1.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-debugger-soft2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-debugger-soft4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-fuse-cil
Version: 0.4.2+dfsg-3
Package: libmono-http4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n-cjk4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n-mideast4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n-other4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n-rare4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n-west2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n-west4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n4.0-all
Version: 2.10.8.1-5ubuntu2
Package: libmono-i18n4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-ldap2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-ldap4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-management2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-management4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-messaging-rabbitmq2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-messaging-rabbitmq4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-messaging2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-messaging4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-microsoft-build-engine4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-microsoft-build-framework4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-microsoft-build-tasks-v4.0-4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-microsoft-build-utilities-v4.0-4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-microsoft-build2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-microsoft-csharp4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-microsoft-visualbasic10.0-cil
Version: 2.10-2
Package: libmono-microsoft-visualbasic8.0-cil
Version: 2.10-2
Package: libmono-microsoft-visualc10.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-microsoft-web-infrastructure1.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-microsoft8.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-npgsql2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-npgsql4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-opensystem-c4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-oracle2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-oracle4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-peapi2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-peapi4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-posix2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-posix4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-profiler
Version: 2.10.8.1-5ubuntu2
Package: libmono-rabbitmq2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-rabbitmq4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-reflection-cil
Version: 1.0+git20110407+d2343843-2
Package: libmono-reflection-cil-dev
Version: 1.0+git20110407+d2343843-2
Package: libmono-relaxng2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-relaxng4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-security2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-security4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-sharpzip2.6-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-sharpzip2.84-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-sharpzip4.84-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-simd2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-simd4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-sqlite2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-sqlite4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-componentmodel-composition4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-componentmodel-dataannotations4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-configuration-install4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-configuration4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-core4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-data-datasetextensions4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-data-linq2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-data-linq4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-data-services-client4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-data-services4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-data2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-data4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-design4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-drawing-design4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-drawing4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-dynamic4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-enterpriseservices4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-identitymodel-selectors4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-identitymodel4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-ldap2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-ldap4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-management4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-messaging2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-messaging4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-net4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-numerics4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-runtime-caching4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-runtime-durableinstancing4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-runtime-serialization-formatters-soap4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-runtime-serialization4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-runtime2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-runtime4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-security4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-servicemodel-discovery4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-servicemodel-routing4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-servicemodel-web4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-servicemodel4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-serviceprocess4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-transactions4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web-abstractions4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web-applicationservices4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web-dynamicdata4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web-extensions-design4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web-extensions4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web-mvc1.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web-mvc2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web-routing4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web-services4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-web4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-windows-forms-datavisualization4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-windows-forms4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-xaml4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-xml-linq4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system-xml4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-system4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-tasklets2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-tasklets4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-uia-atkbridge1.0-cil
Version: 2.1-2
Package: libmono-uia-cil-dev
Version: 2.1-4
Package: libmono-uia-winforms1.0-cil
Version: 2.1-2
Package: libmono-uia3.0-cil
Version: 2.1-4
Package: libmono-upnp-cil
Version: 0.1.2-1build1
Package: libmono-upnp-cil-dev
Version: 0.1.2-1build1
Package: libmono-wcf3.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-web4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-webbrowser2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-webbrowser4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-webmatrix-data4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-windowsbase3.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-windowsbase4.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-winforms2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmono-zeroconf-cil-dev
Version: 0.9.0-4
Package: libmono-zeroconf1.0-cil
Version: 0.9.0-4
Package: libmono2.0-cil
Version: 2.10.8.1-5ubuntu2
Package: libmonogame-cil
Version: 2.5.1+dfsg-3
Package: libmonogame-cil-dev
Version: 2.5.1+dfsg-3
Package: mono-4.0-gac
Version: 2.10.8.1-5ubuntu2
Package: mono-csharp-shell
Version: 2.10.8.1-5ubuntu2
Package: mono-devel
Version: 2.10.8.1-5ubuntu2
Package: mono-dmcs
Version: 2.10.8.1-5ubuntu2
Package: mono-gac
Version: 2.10.8.1-5ubuntu2
Package: mono-gmcs
Version: 2.10.8.1-5ubuntu2
Package: mono-runtime
Version: 2.10.8.1-5ubuntu2
Package: mono-utils
Version: 2.10.8.1-5ubuntu2
Package: mono-winforms-a11y
Version: 2.1-2
Package: mono-xbuild
Version: 2.10.8.1-5ubuntu2
Package: ubuntu-mono
Version: 13.04+13.10.20131014-0ubuntu1
roosemberth@Azulejo-Main-Engine:~$ 

I tryed on another computer running Ubuntu 12.04 LTS, and I got this:

roosemberth@Azulejo-Main-Engine:~$ ssh xu-local 
SCP-Svarog@192.168.0.49's password: 
Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 3.4.74 armv7l)

 * Documentation:  https://help.ubuntu.com/

Last login: Fri Dec 27 21:10:17 2013 from 192.168.0.104
SCP-Svarog@odroid-desktop:~$ sudo apt-get install libusb-1.0-0-dev mono-runtime libmono-winforms2.0-cil
[sudo] password for SCP-Svarog: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libusb-1.0-0-dev is already the newest version.
libmono-winforms2.0-cil is already the newest version.
mono-runtime is already the newest version.
The following packages were automatically installed and are no longer required:
  uboot-mkimage redboot-tools iw u-boot-tools crda devio uboot-envtools wireless-regdb flash-kernel
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
SCP-Svarog@odroid-desktop:~$ cd maestro_linux/
SCP-Svarog@odroid-desktop:~/maestro_linux$ ls
99-pololu.rules  Bytecode.dll  FirmwareUpgrade.dll  MaestroControlCenter  README.txt  Sequencer.dll  UsbWrapper.dll  Usc.dll  UscCmd
SCP-Svarog@odroid-desktop:~/maestro_linux$ ./MaestroControlCenter 

(process:5504): Gtk-WARNING **: Locale not supported by C library.
	Using the fallback 'C' locale.

** (cli:5504): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-gzk9vmccLN: Connection refused
Stacktrace:

  at System.Drawing.Font.CreateFont (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0013f>
  at System.Drawing.Font..ctor (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0007f>
  at System.Drawing.Font..ctor (string,single,string) <0x00057>
  at (wrapper remoting-invoke-with-check) System.Drawing.Font..ctor (string,single,string) <0xffffffff>
  at System.Drawing.SystemFonts.get_DefaultFont () <0x0005b>
  at System.Windows.Forms.Theme..ctor () <0x0002b>
  at System.Windows.Forms.ThemeWin32Classic..ctor () <0x00013>
  at System.Windows.Forms.ThemeVisualStyles..ctor () <0x00013>
  at System.Windows.Forms.ThemeEngine..cctor () <0x00063>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.X11DesktopColors..cctor () <0x000a7>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.XplatUIX11..ctor () <0x0014b>
  at System.Windows.Forms.XplatUIX11.GetInstance () <0x0004b>
  at System.Windows.Forms.XplatUI..cctor () <0x0010b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.Application.EnableVisualStyles () <0x0001b>
  at Pololu.MaestroControlCenter.Program.Main () <0x0000b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:


Debug info from gdb:

Cannot access memory at address 0x616a653c
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
[New Thread 0xb52f6460 (LWP 5507)]
[New Thread 0xb6895460 (LWP 5506)]
0xb6f123a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
  Id   Target Id         Frame 
  3    Thread 0xb6895460 (LWP 5506) "cli" 0xb6f14384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
  2    Thread 0xb52f6460 (LWP 5507) "dconf worker" 0xb6e9ebf4 in select () from /lib/arm-linux-gnueabihf/libc.so.6
* 1    Thread 0xb6fd2000 (LWP 5504) "cli" 0xb6f123a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0

Thread 3 (Thread 0xb6895460 (LWP 5506)):
#0  0xb6f14384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6f116da in do_futex_wait () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xb6f11756 in sem_wait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#3  0x001155dc in mono_sem_wait ()
#4  0x000a5b10 in ?? ()
#5  0x000a5b10 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0xb52f6460 (LWP 5507)):
#0  0xb6e9ebf4 in select () from /lib/arm-linux-gnueabihf/libc.so.6
#1  0xb6e9ebe8 in select () from /lib/arm-linux-gnueabihf/libc.so.6
#2  0x00000000 in ?? ()

Thread 1 (Thread 0xb6fd2000 (LWP 5504)):
#0  0xb6f123a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6f12394 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xbe93ade0 in ?? ()

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

Aborted (core dumped)
SCP-Svarog@odroid-desktop:~/maestro_linux$ mono ./MaestroControlCenter 

(process:5518): Gtk-WARNING **: Locale not supported by C library.
	Using the fallback 'C' locale.

** (mono:5518): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-gzk9vmccLN: Connection refused
Stacktrace:

  at System.Drawing.Font.CreateFont (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0013f>
  at System.Drawing.Font..ctor (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0007f>
  at System.Drawing.Font..ctor (string,single,string) <0x00057>
  at (wrapper remoting-invoke-with-check) System.Drawing.Font..ctor (string,single,string) <0xffffffff>
  at System.Drawing.SystemFonts.get_DefaultFont () <0x0005b>
  at System.Windows.Forms.Theme..ctor () <0x0002b>
  at System.Windows.Forms.ThemeWin32Classic..ctor () <0x00013>
  at System.Windows.Forms.ThemeVisualStyles..ctor () <0x00013>
  at System.Windows.Forms.ThemeEngine..cctor () <0x00063>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.X11DesktopColors..cctor () <0x000a7>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.XplatUIX11..ctor () <0x0014b>
  at System.Windows.Forms.XplatUIX11.GetInstance () <0x0004b>
  at System.Windows.Forms.XplatUI..cctor () <0x0010b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.Application.EnableVisualStyles () <0x0001b>
  at Pololu.MaestroControlCenter.Program.Main () <0x0000b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:


Debug info from gdb:

Cannot access memory at address 0x616a653c
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
[New Thread 0xb5262460 (LWP 5520)]
[New Thread 0xb6800460 (LWP 5519)]
0xb6e7d3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
  Id   Target Id         Frame 
  3    Thread 0xb6800460 (LWP 5519) "mono" 0xb6e7f384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
  2    Thread 0xb5262460 (LWP 5520) "dconf worker" 0xb6e09bf4 in select () from /lib/arm-linux-gnueabihf/libc.so.6
* 1    Thread 0xb6f3d000 (LWP 5518) "mono" 0xb6e7d3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0

Thread 3 (Thread 0xb6800460 (LWP 5519)):
#0  0xb6e7f384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6e7c6da in do_futex_wait () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xb6e7c756 in sem_wait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#3  0x001155dc in mono_sem_wait ()
#4  0x000a5b10 in ?? ()
#5  0x000a5b10 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0xb5262460 (LWP 5520)):
#0  0xb6e09bf4 in select () from /lib/arm-linux-gnueabihf/libc.so.6
#1  0xb6e09be8 in select () from /lib/arm-linux-gnueabihf/libc.so.6
#2  0x00000000 in ?? ()

Thread 1 (Thread 0xb6f3d000 (LWP 5518)):
#0  0xb6e7d3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6e7d394 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xbed5bdf0 in ?? ()

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

Aborted (core dumped)
SCP-Svarog@odroid-desktop:~/maestro_linux$ sudo ./MaestroControlCenter 

(process:5533): Gtk-WARNING **: Locale not supported by C library.
	Using the fallback 'C' locale.

** (cli:5533): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-gzk9vmccLN: Connection refused
Stacktrace:

  at System.Drawing.Font.CreateFont (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0013f>
  at System.Drawing.Font..ctor (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0007f>
  at System.Drawing.Font..ctor (string,single,string) <0x00057>
  at (wrapper remoting-invoke-with-check) System.Drawing.Font..ctor (string,single,string) <0xffffffff>
  at System.Drawing.SystemFonts.get_DefaultFont () <0x0005b>
  at System.Windows.Forms.Theme..ctor () <0x0002b>
  at System.Windows.Forms.ThemeWin32Classic..ctor () <0x00013>
  at System.Windows.Forms.ThemeVisualStyles..ctor () <0x00013>
  at System.Windows.Forms.ThemeEngine..cctor () <0x00063>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.X11DesktopColors..cctor () <0x000a7>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.XplatUIX11..ctor () <0x0014b>
  at System.Windows.Forms.XplatUIX11.GetInstance () <0x0004b>
  at System.Windows.Forms.XplatUI..cctor () <0x0010b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.Application.EnableVisualStyles () <0x0001b>
  at Pololu.MaestroControlCenter.Program.Main () <0x0000b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:


Debug info from gdb:

Cannot access memory at address 0x616a653c
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
[New Thread 0xb49ff460 (LWP 5542)]
[New Thread 0xb5305460 (LWP 5536)]
[New Thread 0xb689f460 (LWP 5535)]
0xb6f1c3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
  Id   Target Id         Frame 
  4    Thread 0xb689f460 (LWP 5535) "cli" 0xb6f1e384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
  3    Thread 0xb5305460 (LWP 5536) "dconf worker" 0xb6e33276 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
  2    Thread 0xb49ff460 (LWP 5542) "gdbus" 0xb6e33276 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
* 1    Thread 0xb6fdc000 (LWP 5533) "cli" 0xb6f1c3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0

Thread 4 (Thread 0xb689f460 (LWP 5535)):
#0  0xb6f1e384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6f1b6da in do_futex_wait () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xb6f1b756 in sem_wait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#3  0x001155dc in mono_sem_wait ()
#4  0x000a5b10 in ?? ()
#5  0x000a5b10 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0xb5305460 (LWP 5536)):
#0  0xb6e33276 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
#1  0xb6ea4858 in poll () from /lib/arm-linux-gnueabihf/libc.so.6
#2  0xb5eed1e6 in ?? () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0
#3  0xb5eed1e6 in ?? () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0xb49ff460 (LWP 5542)):
#0  0xb6e33276 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
#1  0xb6ea4858 in poll () from /lib/arm-linux-gnueabihf/libc.so.6
#2  0xb5eed1e6 in ?? () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0
#3  0xb5eed1e6 in ?? () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0xb6fdc000 (LWP 5533)):
#0  0xb6f1c3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6f1c394 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xbec8bf00 in ?? ()

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

SCP-Svarog@odroid-desktop:~/maestro_linux$ mono --version
Mono JIT compiler version 2.10.8.1 (Debian 2.10.8.1-1ubuntu2.2)
Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com
	TLS:           __thread
	SIGSEGV:       normal
	Notifications: epoll
	Architecture:  armel,vfp
	Disabled:      none
	Misc:          softdebug 
	LLVM:          supported, not enabled.
	GC:            Included Boehm (with typed GC and Parallel Mark)
SCP-Svarog@odroid-desktop:~/maestro_linux$ dpkg --get-selections | grep mono | awk '{print $1}' | xargs dpkg -s | egrep 'Package|Version'
Package: fonts-tlwg-mono
Version: 1:0.4.17-1ubuntu1
Package: libmono-2.0-1
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-2.0-dev
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-accessibility2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-accessibility4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-c5-1.1-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-cairo2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-cairo4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-cecil-private-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-cil-dev
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-codecontracts4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-compilerservices-symbolwriter4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-corlib2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-corlib4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-cscompmgd8.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-csharp4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-custommarshalers4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-data-tds2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-data-tds4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-db2-1.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-debugger-soft2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-debugger-soft4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-http4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-cjk4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-mideast4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-other4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-rare4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-west2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-west4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n4.0-all
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-ldap2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-ldap4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-management2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-management4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-messaging-rabbitmq2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-messaging-rabbitmq4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-messaging2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-messaging4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-build-engine4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-build-framework4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-build-tasks-v4.0-4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-build-utilities-v4.0-4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-build2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-csharp4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-visualc10.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-web-infrastructure1.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft8.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-npgsql2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-npgsql4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-opensystem-c4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-oracle2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-oracle4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-peapi2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-peapi4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-posix2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-posix4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-profiler
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-rabbitmq2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-rabbitmq4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-relaxng2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-relaxng4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-security2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-security4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-sharpzip2.6-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-sharpzip2.84-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-sharpzip4.84-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-simd2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-simd4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-sqlite2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-sqlite4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-componentmodel-composition4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-componentmodel-dataannotations4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-configuration-install4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-configuration4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-core4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data-datasetextensions4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data-linq2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data-linq4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data-services-client4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data-services4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-design4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-drawing-design4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-drawing4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-dynamic4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-enterpriseservices4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-identitymodel-selectors4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-identitymodel4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-ldap2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-ldap4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-management4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-messaging2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-messaging4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-net4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-numerics4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime-caching4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime-durableinstancing4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime-serialization-formatters-soap4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime-serialization4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-security4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-servicemodel-discovery4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-servicemodel-routing4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-servicemodel-web4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-servicemodel4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-serviceprocess4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-transactions4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-abstractions4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-applicationservices4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-dynamicdata4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-extensions-design4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-extensions4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-mvc1.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-mvc2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-routing4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-services4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-windows-forms-datavisualization4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-windows-forms4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-xaml4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-xml-linq4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-xml4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-tasklets2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-tasklets4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-wcf3.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-web4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-webbrowser2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-webbrowser4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-webmatrix-data4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-windowsbase3.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-windowsbase4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-winforms2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: mono-2.0-gac
Version: 2.10.8.1-1ubuntu2.2
Package: mono-2.0-service
Version: 2.10.8.1-1ubuntu2.2
Package: mono-4.0-gac
Version: 2.10.8.1-1ubuntu2.2
Package: mono-4.0-service
Version: 2.10.8.1-1ubuntu2.2
Package: mono-complete
Version: 2.10.8.1-1ubuntu2.2
Package: mono-csharp-shell
Version: 2.10.8.1-1ubuntu2.2
Package: mono-devel
Version: 2.10.8.1-1ubuntu2.2
Package: mono-dmcs
Version: 2.10.8.1-1ubuntu2.2
Package: mono-gac
Version: 2.10.8.1-1ubuntu2.2
Package: mono-gmcs
Version: 2.10.8.1-1ubuntu2.2
Package: mono-jay
Version: 2.10.8.1-1ubuntu2.2
Package: mono-mcs
Version: 2.10.8.1-1ubuntu2.2
Package: mono-runtime
Version: 2.10.8.1-1ubuntu2.2
Package: mono-runtime-sgen
Version: 2.10.8.1-1ubuntu2.2
Package: mono-utils
Version: 2.10.8.1-1ubuntu2.2
Package: mono-xbuild
Version: 2.10.8.1-1ubuntu2.2
Package: monodoc-base
Version: 2.10.8.1-1ubuntu2.2
Package: monodoc-browser
Version: 2.10-2
Package: monodoc-manual
Version: 2.10.8.1-1ubuntu2.2
Package: ubuntu-mono
Version: 0.0.40
SCP-Svarog@odroid-desktop:~/maestro_linux$

Thanks for your help!

Best Regards!

Thanks for the list of packages. It looks like you have a lot more mono packages installed than I do. I think the “libmono-uia-winforms1.0-cil” package is causing the error you are having; when I tried installing it, I got the same error on my system.

Unless you are aware of some important software on your system that depends on the libmono-uia-winforms1.0-cil package, you might try removing the package:

sudo apt-get remove libmono-uia-winforms1.0-cil

Please let me know whether that helps.

–David

Thank you very much!, It worked on my laptop!, thanks!, nevertheless, It didn’t worked on my ARM Engine (Too bad)…

Where is the Maestro Control Center Source Code?, I can’t find it anywhere.

Best Regards!

I am pretty sure they aren’t releasing the source to the full Maestro Control Center Program.

I don’t know how your work with the custom USB driver is coming, but the the other option you have is to just write your program in user space with libusb. I used the following program to send test commands.
Please note that it is VERY inefficient because the setTarget command is where I search for an appropriate USB device, and then send the message. You could do something similar with a lot less overhead, and then just incorporate the appropriate code into the program you have that is doing the control. I am not sure there is a significant advantage to making a driver in kernel space unless you need it to be more easily reusable.
I compiled this using libusb-1.0.8, but it will probably work with the newest version also.
The protocol.h file is from pololu.
I know this isn’t exactly what you are trying to do, but at least it is a start written in C and saves you from having to mess with mono. I am sure C# is great, but I have never worked with it myself except for trying to extract some info about working with the maestro boards like you are now.

#include <stdio.h>
#include "libusb.h"
#include "protocol.h"

//info is in /proc/bus/usb/devices
//needs to be in /dev/bus/usb/devices


using namespace std;

bool deviceMatchesVendorProduct(libusb_device *device, unsigned short idVendor, unsigned short idProduct)
{
    libusb_device_descriptor desc;
    libusb_get_device_descriptor(device, &desc);
    return idVendor == desc.idVendor && idProduct == desc.idProduct;
}

void setTarget(int position, int servo)
{
    printf("called setTarget\n");
	const unsigned short vendorId = 0x1ffb;
    unsigned short productIDArray[]={0x0089, 0x008a, 0x008b, 0x008c};
    libusb_context *ctx=NULL;
    libusb_device **device_list=0;
    int error = libusb_init(&ctx);
	libusb_set_debug(NULL, 5);
	printf("the error from libusb_init is %d\n");
    int count=libusb_get_device_list(ctx, &device_list);
	printf("the count it found is %d\n");
    for(int i=0;i<count;i++)
    {
        libusb_device *device=device_list[i];
        {
            for(int Id=0;Id<4;Id++)
            {
                printf("looking\n");
				if(deviceMatchesVendorProduct(device, vendorId, productIDArray[Id]))
                {
                    printf("found a device and sending\n");
					libusb_device_handle *device_handle;
                    libusb_open(device, &device_handle);
                    libusb_control_transfer(device_handle, 0x40, REQUEST_SET_TARGET, position*4, servo, 0, 0, (ushort)5000);
                    libusb_close(device_handle);
                    break;
                }
            }
        }
    }
    libusb_free_device_list(device_list, 0);
    libusb_exit(ctx);
}

int main()
{
    printf("Welcome: this program uses libusb to send commands to the maestro\n");
	int position;
	int servo=0;
	while(1)
    {
        printf( "Enter position: ");
        scanf("%d", position);
        for(servo = 0; servo <=5; servo++){
			setTarget(position, servo);
		}
    }
    return 0;
}

As ChrisBob said, we don’t release the source code of the full Maestro Configuration Utility. However, we do release the source code of UscCmd, the command-line utility that can do most of the things the Maestro Control Center can, which can be found in the Pololu USB SDK.

Like you, I have had difficulty getting the Maestro Control Center to run on ARM, in particular a Raspberry Pi. What error are you getting? I was getting a segmentation fault deep inside System.Windows.Forms.Application.EnableVisualStyles. This bug seems to affect all mono programs that use Windows Forms, not just the Maestro Control Center. The full source of MaestroAdvancedExample is available in the Pololu USB SDK and if you compile it on your ARM machine you will probably get the same error. If you find a solution, please let us know.

–David

The output I get is the one I posted as a reported for a second machine:

roosemberth@Azulejo-Main-Engine:~$ ssh xu-local 
SCP-Svarog@192.168.0.49's password: 
Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 3.4.74 armv7l)

* Documentation:  https://help.ubuntu.com/

Last login: Fri Dec 27 21:10:17 2013 from 192.168.0.104
SCP-Svarog@odroid-desktop:~$ sudo apt-get install libusb-1.0-0-dev mono-runtime libmono-winforms2.0-cil
[sudo] password for SCP-Svarog: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libusb-1.0-0-dev is already the newest version.
libmono-winforms2.0-cil is already the newest version.
mono-runtime is already the newest version.
The following packages were automatically installed and are no longer required:
  uboot-mkimage redboot-tools iw u-boot-tools crda devio uboot-envtools wireless-regdb flash-kernel
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
SCP-Svarog@odroid-desktop:~$ cd maestro_linux/
SCP-Svarog@odroid-desktop:~/maestro_linux$ ls
99-pololu.rules  Bytecode.dll  FirmwareUpgrade.dll  MaestroControlCenter  README.txt  Sequencer.dll  UsbWrapper.dll  Usc.dll  UscCmd
SCP-Svarog@odroid-desktop:~/maestro_linux$ ./MaestroControlCenter 

(process:5504): Gtk-WARNING **: Locale not supported by C library.
   Using the fallback 'C' locale.

** (cli:5504): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-gzk9vmccLN: Connection refused
Stacktrace:

  at System.Drawing.Font.CreateFont (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0013f>
  at System.Drawing.Font..ctor (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0007f>
  at System.Drawing.Font..ctor (string,single,string) <0x00057>
  at (wrapper remoting-invoke-with-check) System.Drawing.Font..ctor (string,single,string) <0xffffffff>
  at System.Drawing.SystemFonts.get_DefaultFont () <0x0005b>
  at System.Windows.Forms.Theme..ctor () <0x0002b>
  at System.Windows.Forms.ThemeWin32Classic..ctor () <0x00013>
  at System.Windows.Forms.ThemeVisualStyles..ctor () <0x00013>
  at System.Windows.Forms.ThemeEngine..cctor () <0x00063>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.X11DesktopColors..cctor () <0x000a7>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.XplatUIX11..ctor () <0x0014b>
  at System.Windows.Forms.XplatUIX11.GetInstance () <0x0004b>
  at System.Windows.Forms.XplatUI..cctor () <0x0010b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.Application.EnableVisualStyles () <0x0001b>
  at Pololu.MaestroControlCenter.Program.Main () <0x0000b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:


Debug info from gdb:

Cannot access memory at address 0x616a653c
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
[New Thread 0xb52f6460 (LWP 5507)]
[New Thread 0xb6895460 (LWP 5506)]
0xb6f123a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
  Id   Target Id         Frame 
  3    Thread 0xb6895460 (LWP 5506) "cli" 0xb6f14384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
  2    Thread 0xb52f6460 (LWP 5507) "dconf worker" 0xb6e9ebf4 in select () from /lib/arm-linux-gnueabihf/libc.so.6
* 1    Thread 0xb6fd2000 (LWP 5504) "cli" 0xb6f123a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0

Thread 3 (Thread 0xb6895460 (LWP 5506)):
#0  0xb6f14384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6f116da in do_futex_wait () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xb6f11756 in sem_wait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#3  0x001155dc in mono_sem_wait ()
#4  0x000a5b10 in ?? ()
#5  0x000a5b10 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0xb52f6460 (LWP 5507)):
#0  0xb6e9ebf4 in select () from /lib/arm-linux-gnueabihf/libc.so.6
#1  0xb6e9ebe8 in select () from /lib/arm-linux-gnueabihf/libc.so.6
#2  0x00000000 in ?? ()

Thread 1 (Thread 0xb6fd2000 (LWP 5504)):
#0  0xb6f123a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6f12394 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xbe93ade0 in ?? ()

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

Aborted (core dumped)
SCP-Svarog@odroid-desktop:~/maestro_linux$ mono ./MaestroControlCenter 

(process:5518): Gtk-WARNING **: Locale not supported by C library.
   Using the fallback 'C' locale.

** (mono:5518): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-gzk9vmccLN: Connection refused
Stacktrace:

  at System.Drawing.Font.CreateFont (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0013f>
  at System.Drawing.Font..ctor (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0007f>
  at System.Drawing.Font..ctor (string,single,string) <0x00057>
  at (wrapper remoting-invoke-with-check) System.Drawing.Font..ctor (string,single,string) <0xffffffff>
  at System.Drawing.SystemFonts.get_DefaultFont () <0x0005b>
  at System.Windows.Forms.Theme..ctor () <0x0002b>
  at System.Windows.Forms.ThemeWin32Classic..ctor () <0x00013>
  at System.Windows.Forms.ThemeVisualStyles..ctor () <0x00013>
  at System.Windows.Forms.ThemeEngine..cctor () <0x00063>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.X11DesktopColors..cctor () <0x000a7>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.XplatUIX11..ctor () <0x0014b>
  at System.Windows.Forms.XplatUIX11.GetInstance () <0x0004b>
  at System.Windows.Forms.XplatUI..cctor () <0x0010b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.Application.EnableVisualStyles () <0x0001b>
  at Pololu.MaestroControlCenter.Program.Main () <0x0000b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:


Debug info from gdb:

Cannot access memory at address 0x616a653c
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
[New Thread 0xb5262460 (LWP 5520)]
[New Thread 0xb6800460 (LWP 5519)]
0xb6e7d3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
  Id   Target Id         Frame 
  3    Thread 0xb6800460 (LWP 5519) "mono" 0xb6e7f384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
  2    Thread 0xb5262460 (LWP 5520) "dconf worker" 0xb6e09bf4 in select () from /lib/arm-linux-gnueabihf/libc.so.6
* 1    Thread 0xb6f3d000 (LWP 5518) "mono" 0xb6e7d3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0

Thread 3 (Thread 0xb6800460 (LWP 5519)):
#0  0xb6e7f384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6e7c6da in do_futex_wait () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xb6e7c756 in sem_wait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#3  0x001155dc in mono_sem_wait ()
#4  0x000a5b10 in ?? ()
#5  0x000a5b10 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0xb5262460 (LWP 5520)):
#0  0xb6e09bf4 in select () from /lib/arm-linux-gnueabihf/libc.so.6
#1  0xb6e09be8 in select () from /lib/arm-linux-gnueabihf/libc.so.6
#2  0x00000000 in ?? ()

Thread 1 (Thread 0xb6f3d000 (LWP 5518)):
#0  0xb6e7d3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6e7d394 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xbed5bdf0 in ?? ()

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

Aborted (core dumped)
SCP-Svarog@odroid-desktop:~/maestro_linux$ sudo ./MaestroControlCenter 

(process:5533): Gtk-WARNING **: Locale not supported by C library.
   Using the fallback 'C' locale.

** (cli:5533): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-gzk9vmccLN: Connection refused
Stacktrace:

  at System.Drawing.Font.CreateFont (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0013f>
  at System.Drawing.Font..ctor (string,single,System.Drawing.FontStyle,System.Drawing.GraphicsUnit,byte,bool) <0x0007f>
  at System.Drawing.Font..ctor (string,single,string) <0x00057>
  at (wrapper remoting-invoke-with-check) System.Drawing.Font..ctor (string,single,string) <0xffffffff>
  at System.Drawing.SystemFonts.get_DefaultFont () <0x0005b>
  at System.Windows.Forms.Theme..ctor () <0x0002b>
  at System.Windows.Forms.ThemeWin32Classic..ctor () <0x00013>
  at System.Windows.Forms.ThemeVisualStyles..ctor () <0x00013>
  at System.Windows.Forms.ThemeEngine..cctor () <0x00063>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.X11DesktopColors..cctor () <0x000a7>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.XplatUIX11..ctor () <0x0014b>
  at System.Windows.Forms.XplatUIX11.GetInstance () <0x0004b>
  at System.Windows.Forms.XplatUI..cctor () <0x0010b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>
  at System.Windows.Forms.Application.EnableVisualStyles () <0x0001b>
  at Pololu.MaestroControlCenter.Program.Main () <0x0000b>
  at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:


Debug info from gdb:

Cannot access memory at address 0x616a653c
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
[New Thread 0xb49ff460 (LWP 5542)]
[New Thread 0xb5305460 (LWP 5536)]
[New Thread 0xb689f460 (LWP 5535)]
0xb6f1c3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
  Id   Target Id         Frame 
  4    Thread 0xb689f460 (LWP 5535) "cli" 0xb6f1e384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
  3    Thread 0xb5305460 (LWP 5536) "dconf worker" 0xb6e33276 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
  2    Thread 0xb49ff460 (LWP 5542) "gdbus" 0xb6e33276 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
* 1    Thread 0xb6fdc000 (LWP 5533) "cli" 0xb6f1c3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0

Thread 4 (Thread 0xb689f460 (LWP 5535)):
#0  0xb6f1e384 in __libc_do_syscall () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6f1b6da in do_futex_wait () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xb6f1b756 in sem_wait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#3  0x001155dc in mono_sem_wait ()
#4  0x000a5b10 in ?? ()
#5  0x000a5b10 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0xb5305460 (LWP 5536)):
#0  0xb6e33276 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
#1  0xb6ea4858 in poll () from /lib/arm-linux-gnueabihf/libc.so.6
#2  0xb5eed1e6 in ?? () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0
#3  0xb5eed1e6 in ?? () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0xb49ff460 (LWP 5542)):
#0  0xb6e33276 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
#1  0xb6ea4858 in poll () from /lib/arm-linux-gnueabihf/libc.so.6
#2  0xb5eed1e6 in ?? () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0
#3  0xb5eed1e6 in ?? () from /lib/arm-linux-gnueabihf/libglib-2.0.so.0
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0xb6fdc000 (LWP 5533)):
#0  0xb6f1c3a0 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1  0xb6f1c394 in read () from /lib/arm-linux-gnueabihf/libpthread.so.0
#2  0xbec8bf00 in ?? ()

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

SCP-Svarog@odroid-desktop:~/maestro_linux$ mono --version
Mono JIT compiler version 2.10.8.1 (Debian 2.10.8.1-1ubuntu2.2)
Copyright (C) 2002-2011 Novell, Inc, Xamarin, Inc and Contributors. www.mono-project.com
   TLS:           __thread
   SIGSEGV:       normal
   Notifications: epoll
   Architecture:  armel,vfp
   Disabled:      none
   Misc:          softdebug 
   LLVM:          supported, not enabled.
   GC:            Included Boehm (with typed GC and Parallel Mark)
SCP-Svarog@odroid-desktop:~/maestro_linux$ dpkg --get-selections | grep mono | awk '{print $1}' | xargs dpkg -s | egrep 'Package|Version'
Package: fonts-tlwg-mono
Version: 1:0.4.17-1ubuntu1
Package: libmono-2.0-1
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-2.0-dev
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-accessibility2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-accessibility4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-c5-1.1-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-cairo2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-cairo4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-cecil-private-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-cil-dev
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-codecontracts4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-compilerservices-symbolwriter4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-corlib2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-corlib4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-cscompmgd8.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-csharp4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-custommarshalers4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-data-tds2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-data-tds4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-db2-1.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-debugger-soft2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-debugger-soft4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-http4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-cjk4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-mideast4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-other4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-rare4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-west2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n-west4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n4.0-all
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-i18n4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-ldap2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-ldap4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-management2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-management4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-messaging-rabbitmq2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-messaging-rabbitmq4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-messaging2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-messaging4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-build-engine4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-build-framework4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-build-tasks-v4.0-4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-build-utilities-v4.0-4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-build2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-csharp4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-visualc10.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft-web-infrastructure1.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-microsoft8.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-npgsql2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-npgsql4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-opensystem-c4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-oracle2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-oracle4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-peapi2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-peapi4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-posix2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-posix4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-profiler
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-rabbitmq2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-rabbitmq4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-relaxng2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-relaxng4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-security2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-security4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-sharpzip2.6-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-sharpzip2.84-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-sharpzip4.84-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-simd2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-simd4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-sqlite2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-sqlite4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-componentmodel-composition4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-componentmodel-dataannotations4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-configuration-install4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-configuration4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-core4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data-datasetextensions4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data-linq2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data-linq4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data-services-client4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data-services4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-data4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-design4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-drawing-design4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-drawing4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-dynamic4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-enterpriseservices4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-identitymodel-selectors4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-identitymodel4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-ldap2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-ldap4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-management4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-messaging2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-messaging4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-net4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-numerics4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime-caching4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime-durableinstancing4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime-serialization-formatters-soap4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime-serialization4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-runtime4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-security4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-servicemodel-discovery4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-servicemodel-routing4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-servicemodel-web4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-servicemodel4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-serviceprocess4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-transactions4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-abstractions4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-applicationservices4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-dynamicdata4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-extensions-design4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-extensions4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-mvc1.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-mvc2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-routing4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web-services4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-web4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-windows-forms-datavisualization4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-windows-forms4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-xaml4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-xml-linq4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system-xml4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-system4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-tasklets2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-tasklets4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-wcf3.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-web4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-webbrowser2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-webbrowser4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-webmatrix-data4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-windowsbase3.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-windowsbase4.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono-winforms2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: libmono2.0-cil
Version: 2.10.8.1-1ubuntu2.2
Package: mono-2.0-gac
Version: 2.10.8.1-1ubuntu2.2
Package: mono-2.0-service
Version: 2.10.8.1-1ubuntu2.2
Package: mono-4.0-gac
Version: 2.10.8.1-1ubuntu2.2
Package: mono-4.0-service
Version: 2.10.8.1-1ubuntu2.2
Package: mono-complete
Version: 2.10.8.1-1ubuntu2.2
Package: mono-csharp-shell
Version: 2.10.8.1-1ubuntu2.2
Package: mono-devel
Version: 2.10.8.1-1ubuntu2.2
Package: mono-dmcs
Version: 2.10.8.1-1ubuntu2.2
Package: mono-gac
Version: 2.10.8.1-1ubuntu2.2
Package: mono-gmcs
Version: 2.10.8.1-1ubuntu2.2
Package: mono-jay
Version: 2.10.8.1-1ubuntu2.2
Package: mono-mcs
Version: 2.10.8.1-1ubuntu2.2
Package: mono-runtime
Version: 2.10.8.1-1ubuntu2.2
Package: mono-runtime-sgen
Version: 2.10.8.1-1ubuntu2.2
Package: mono-utils
Version: 2.10.8.1-1ubuntu2.2
Package: mono-xbuild
Version: 2.10.8.1-1ubuntu2.2
Package: monodoc-base
Version: 2.10.8.1-1ubuntu2.2
Package: monodoc-browser
Version: 2.10-2
Package: monodoc-manual
Version: 2.10.8.1-1ubuntu2.2
Package: ubuntu-mono
Version: 0.0.40
SCP-Svarog@odroid-desktop:~/maestro_linux$

I was Using the UscCmd code to dig into the Interface, but there’s some stuff as the PWM that remains kind of unknown for me (Questions like is CH 12 the only one PWM-enabled) along with other doubts, I wanted to write the Kernel Module to make it usable for everyone, not only for my project (That’s the gpl and share-alike Idea, Isn’t it?), that’s why I was trying to include all functions for Maestro (even micro-maestro which I don’t have). And as a personal experience for entering into module programming.

Best Regards!
Thank you for your replies!

Merry Chrismas and Happy New Year!