UH Device Manager Architecture




UHDeviceManager Architecture
1. UH-Service communication
2. Service-client communication
3. Client API


UH-Service communication


  • - An arbitrary number of UHs can be used simultaneously.
  • - An arbitrary number of client applications can access the UHs information simultaneously.
  • - UnlimitedHand and client application can communication sppedy*. *depend on each environment




1. UH-Service communication


  • - All UHs run in "High Speed Mode". The amount of information they send can be configured:
    e.g., only quaternion, quaternion and temperature etc.
  • - Each UH is controlled by an individual thread in the UH Service process.
  • - An arbitrary number of UHs can be opened and closed at any given time.
  • - Open-Close commands are given by the client applications.


2. Service-client communication


  • - Each UH information is available in shared memory space.
  • - Commands to each UH, e.g. open(), close(), are sent through a IPC command queue.


3. Client API


  • - All applications use the same C++ DLL:
    all bug fixes and improvements are shared by all APIs.
  • - Users don't have to worry about serial-communication with each UH:
    that is transparent to them.





UH Device Manager




Install process
Testing process


Install process

Requirements: With UHUpdater, upload "Daemon_Communication" to your UnlimitedHand.



STEP 1. Download "UHService-alpha1.pkg" from http://dev.unlimitedhand.com.




STEP 2. Double click and follow the install wizard.








Testing process


STEP 1. Download "UHApiTest".

It is a Unity project.



STEP 2. Open the Unity Project

Open 'test' scene. You'll see three cubes. Each cube can be controlled by a different UH simultaneously.

The cube has a script component. Change the string to your UH's serial port.

STEP 3. Run the Scene

Run the scene, the cube should respond to the UH's movements after being initialized (Takes about 6 seconds).




Use UH Device Manager as Unity Plugin



Install process
Using UHDeviceManager to play original game with UnlimitedHand
(Appendix) Add more function to your original game


Install process

Requirements: With UHUpdater, upload "Daemon_Communication" to your UnlimitedHand.



STEP 1. Download UHDeviceManager system package.

Download "UHService-alpha1.pkg" from http://dev.unlimitedhand.com.



STEP 2. Double click and follow the install wizard.








Using UHDeviceManager to play original game with UnlimitedHand


STEP 1. Create new Unity Project.




STEP 2. Create new object in your scene.




STEP 3. Download Plugin items.

Download "UHPluginforUnity.zip" from here, and unzip it.



STEP 3. Import Plugin items.

Import "Plugins" folder, "UH.cs" and "UHController.cs" to original game.


STEP 4. Attach "UHController.cs" to arbitrary object.

Attach "UHController.cs" as a component to the object you want to move by UnlimitedHand (in this tutorial, a Cube).



STEP 5. Specify SerialPort name in the inspector.

In Inspector of the objects you attached "UHController.cs", change the string to your UnlimitedHand's serial port.




STEP 6. Run the Scene

Run the scene, the objects should respond to the UH's movements after being initialized (Takes about 6 seconds).





(Appendix) Add more function to your original game



Ex.1) Handle double UnlimitedHands at the same time

STEP 1. Add new object.


STEP 2. Attach "UHController.cs" to new object.

Attach "UHController.cs" as a component to the objects you want to move by UnlimitedHand (in this tutorial, a Cylinder).

STEP 3. Specify SerialPort name in the inspector.

In Inspector of the objects you attached "UHController.cs", change the string to your UnlimitedHand's serial port.

STEP 4. Run the Scene

Run the scene, the objects should respond to the UH's movements after being initialized (Takes about 6 seconds).



Ex.2) Set EMS(Electric Muscle Stimlation) by keydown

STEP 1. Edit "UHController.cs".

Add the following code in Update().

STEP 2. Run the Scene.

If you press key '0'~'7', UnlimitedHand gives EMS from compatible channels.