Skip to content

10. Applications and Implications

Final project proposal by discussing the applications and implications. See below for questions regarding the Final Project.

1. What will it do?

The original idea was to make a VR controller. However, the final prototype is an Input/Output Device, that is more of a Joystick than a VR controller (since it is not tracked within an immersive environment), which communicates with Unity as a Custom Device Input to interact with a shooter game scene.

2. Who has done what beforehand?

There are multiple commercial VR controllers as well as “hobby” controllers and research controllers. See literature review .

3. What will you design?

Three boards will be prototyped based on the the board from Electronic Design Board: 1) for Input Devices, a module for hosting a commercial Joystick will be prototyped during Input Devices Week; 2) for Output Devices, a module for controlling a Vibration motor will be prototyped during Output Devices Week; 3) all boards will be connected using a hub then interfaced with PC using an FTDI cable. The hub board is based on Jari’s rx/tx hub connector. See also Networking and Communications Week.

Additionally, housing the electronics would require 3D printed/laser-cut casing to allow for incorporating the electronic boards all together.

Moreover, there will be a software solution for communicating the inputs/outputs of the controller with the game, as well as a software solution that is actually the game scene the HTC VIVE Tracker will be used as a location device and/or input/output communication between controller and PC. Therefore, there are two software parts: 1) A communication interface (e.g., Serial USB), to communicate between the physical controller and the PC application (In this case, it will be a Unity Plugin). 2) The game (the software environment) that will be in Unity. The game will be a shooter game, where the avatar can move in the space and shoot objects.

2. What materials and components will be used? Where will [the materials] come from? How much will they cost?”

Component Link Estimated Cost
Joystick link 4€
Vibration motor link 3€
Component Description Estimated Cost €
NDS355ANCT-ND MOSFET N-CH 30V 1.7A SSOT3 0.26
399-4674-1-ND CAP - CERAMIC .1UF 250V X7R 1206 0.12
497-5559-1-ND DIODE - SCHOTTKY 100V SGL SOD-123 0.17
311-49.9KFRCT-ND RES 49.9K OHM 1-4W 1% 1206 SMD 0.01
311-49.9KFRCT-ND RES 49.9K OHM 1-4W 1% 1206 SMD 0.01
ED1514-ND TERMINAL BLOCK 3.5MM 2POS PCB 0.46
2073-BG300-03-A-L-ACT-ND 3W, 2.54MM PTH SOCKET, SIL, SMT 0.55
S1011EC-40-ND TH male header 0.1” (40pos) 0.65

Note

Hence, the “Vibration Motor Module 01” total is 8.62€ including the vibration motor itself and the PCB board.

Component Description Estimated Cost €
ATTINY412-SSFRCT-ND IC MCU 8BIT 4KB FLASH 8SOIC 0.42
S1143E-36-ND SMT RT Angle Male Header 0.1” (36pos) 3.30
2073-BG300-03-A-L-ACT-ND 3W, 2.54MM PTH SOCKET, SIL, SMT 0.55
160-1169-1-ND LED GREEN CLEAR 1206 SMD 0.15
SW262CT-ND SWITCH TACT SMD W-GND 160GF 0.84
311-499FRCT-ND RES 499 OHM 1-4W 1% 1206 SMD 0.01
311-10.0KFRCT-ND RES 10.0K OHM 1-4W 1% 1206 SMD 0.01
445-1423-1-ND CAP CER 1UF 50V X7R 10% 1206 0.07

Note

Hence, the “Vibration Motor Module 02” total is 8.65€, including the PCB board.

Component Description Estimated Cost €
ATTINY412-SSFRCT-ND IC MCU 8BIT 4KB FLASH 8SOIC 0.42
S1143E-36-ND SMT RT Angle Male Header 0.1” (36pos) 3.30
311-0.0ERCT-ND RES 0.0 OHM 1-4W 5% 1206 SMD 0.01
445-1423-1-ND CAP CER 1UF 50V X7R 10% 1206 0.07
S1011EC-40-ND TH male header 0.1” (40pos) 0.65

Note

Hence, the “Joystick Module” total is 7.77€, including the Joystick itself and the PCB board.

Component Material Estimated Cost €
3D Printed - Controller Body PLA filament 9
Milling and Soldering - Controller Board PCB Boards 10
Laser Cut - Controller “Face” Acrylic, Transparent 1

Note

Hence, the Project total cost is 34.97€.

5. What parts and systems will be made?

All of it, except for the vibration motors and the joystick. - The controller will have multiple input methods including buttons, and sensors and a use per charge. It will be used to interact with a VR application. - The Controller needs to detect the base stations to determine the location of the controller. - The SteamVR Tracking system is used to track the controller location. - Using FabAcademy designed and produced boards, a Unity plugin for interfacing the boards and a Unity environment; a controller for playing a shooter game will be realized.

  • A Joystick
    • Moving along the X-axis
    • Moving along the Y-axis
    • A button action e.g., Shooting
  • A Vibration motor for Haptic feedback.

9. What processes will be used?

For 3D and 2D design/printing, see week06. For Electronics design and fabrication, see weeks: week11, week12, week13 and week14.

As well as, embedded programming, see week09.

7. What questions need to be answered?

  • How to integrate the HTC VIVE Tracker?
  • Is there a possibility for replacing the Tracker?
  • What kind of front-end application is need for demonstrating the functionality of the controller?
  • Is the communication between the hardware and software functional? can it be used with other boards?
  • Does the “game” make use of the controller’s functionality?
  • How does the controller feel? Is it ergonomic?
  • Is there a room for future improvements?

6. How will it be evaluated?

In addition to 1) The ability to communicate with the PC 2) A front-end Unity VR application to demonstrate the functionality of the controller.

Based on the on the literature review , a set of design requirements was established for a handheld haptic controller. They will be considered as design rules for the prototype. The tabbed table shows the functionality features expected for the controller…

  • Compact, handheld and easy to use
  • Ergonomic design
  • 6 DOF tracking
  • Untethered/wireless
  • Input buttons on the controller (e.g., x and y), which are manipulated by thumb.
  • A trigger manipulated by the index finger (e.g., shooting games)
  • Haptic feedback
  • Ability to between distinguish gripping and an open hand
  • ?? Ability to distinguish pinch (Thumb + Index fingers)
  • Evaluate Latency

Files

Includes the 2D/3D designs for 3D-prints and laser-cuts (Blender2.8 Format) in a zipped file as well various other models.

https://gitlab.fabcloud.org/academany/fabacademy/2020/labs/oulu/students/yazan-barhoush/-/tree/master/docs/images/week10