Is there a place where the InMoov service commands are documented?

I am wanting to work on some self calibration routines for the inmoov and need to know what commands are available.

Any pointers would be great.





9 years 3 months ago

Documentation may be a bit out of date, but have a look at

Calibration is great thing to work on,  I'd love to hear/learn more about what you're trying to do.  

What sort of API calls are you looking for?  They might already exist, if not we might be able to add them to the service for you.


Thanks for the link but it does not contain what I am looking for.

I am working on adding some inputs into the InMoov mix.

I want to tap the external pots, used for the servos, and bring them into an Arduino to sense the actual position of each servo.  Then I plan to install two micoswitches on each joint, one at min and one at max.  

The code would prevent the servos from running beyond their respective limit switch, this should prevent breakage of parts.

The calibration code would trigger the InMoov to move each servo to the min and then the max position, as seen by the limits.  The min & max values for each servo would then be gathered automatically.  This would account for variations in the builds & servos used by everyone.

I am attempting to make my InMoov more than just a very nicely done puppet.

The documentation I am looking for would tell me the command & parameters used by the scripts.

eg. i01.moveArm("right",48,91,72,10)

I understand the i01.moveArm("right" portion, but what are the numbers and what are their ranges?

Also, are these commands defined somewhere?  Can they be changes? Can new commands be added?

These are what I am looking for.


I noticed in the service that only two arduinos are talked about.

Is the InMoov service limited to two arduinos or can more be added?


Thanks again.

Calibration is one thing InMoovs really need.

You can find all methods from the InMoov-service in it's Java-Doc (->…). I don't know if that helps you.


public void moveArm(java.lang.String which,
           java.lang.Integer bicep,
           java.lang.Integer rotate,
           java.lang.Integer shoulder,
           java.lang.Integer omoplate)

-> side ("left"/"right"); bicep; rotate; shoulder; omoplate

When you need more functions, just ask, somebody will usually read it and it could become included in the next version of MRL!

You can run your InMoov on 1-oo Arduinos (maybe limited by your PC and USB-ports). It can be configured just as you like, maybe swap the right index finger with the left shoulder? And you can always add an additional Arduino in MRL, it doesn't has to be defined by the InMoov service.