Adding a delayMicroseconds function to the standard firmata.

I'm using the standard firmata to interface with Java Processing and run an arduino project. The Arduino class used to interface processing with java does not have a method for delayMicroseconds or any other delay on the arduino board. In most examples you need to use delay techniques in the java environment but these all operate on the order of milliseconds (1000 microseconds).

So I can edit the StandardFirmata sketch, the Firmata.java file and the Arduino.java file that makes all these necessary connections to run Processing. Does anyone understand how this code breaks down well enough so that I could add my own delay function that carries through to the arduino class. I don't understand how this code interfaces between the C and Java sides. A better understanding of this would probably help the most.

If you want to look at the reference code it can be found at:

I'm using the standard firmata to interface with Java Processing and run an arduino project.

Which turns your Arduino into an idiot. ALL the control happens on the non-Arduino end.

The Arduino class used to interface processing with java does not have a method for delayMicroseconds or any other delay on the arduino board.

Which is reasonable, as the PC end is responsible for timing.

In most examples you need to use delay techniques in the java environment but these all operate on the order of milliseconds (1000 microseconds).

You should be fixing that, then. The PC is capable of timing better than the Arduino.

You should be fixing that, then. The PC is capable of timing better than the Arduino.

Ok, so that sounds like a reasonable solution but All that I've read says that thread.sleep() and other delay techniques operate on the order of milliseconds and that windows computers won't run on microseconds. If you know otherwise please let me know or point me in the direction of a good resource. Greatly Appreciated.