Making a sort of SDK for a controller

Hi,

Here is my brief question,

What is the standard interface method for users (not excellent programmers) to program their own software on controllers.

In other words, how they develop the interface of their devices (e.g. Keysight oscilloscope or Oriental motor motor stage) for users to program their own software?

Is it called SDK or VISA or IEEE488.2 or ASCII textual strings? script language?

The detailed question,

I am trying to study and design a controller with embedded software to control an actuator.

I have an idea that physical interface for the controller should be through USB.

But I have no idea what I should make for standard interface method through USB port.

Like popular devices manufacturer provide a kind of SDK for users, I want to develop the interface that users can program their own program.

Would you please teach me what the interface is?

But I have no idea what I should make for standard interface method through USB port.

Like popular devices manufacturer provide a kind of SDK for users, I want to develop the interface that users can program their own program.

Big question. These type of concepts are generally implemented around a specific device (board/chip) or family of devices (model ranges.)

Maybe this is helpful:Arduino Playground - HomePage

Ray

Thank you for giving me how a specific device (Arduino) interfaces with other devices or softwares.

I found out that there doesn't seem to be common and only method for users to program and it may depend on the controller structure.