Skip to content
Snippets Groups Projects
Forked from jjlustig / EECS498-uBoard
59 commits behind the upstream repository.
Zayd's avatar
Zayd authored
fd4a8f08
History

uBoard

Install

Open your mobile browser by scanning the QRCode or enter the URL, then you are able to control your desktop via browser.

Features

Passcode protection

Setup

Get required packages

$ npm install

This will run bower install and install client side libraries into public/vendor

After, run

$ node server.js

To host the uBoard server on the desktop.

Code structure

The server uses server.js and the socket.io to change the mouse position and receive keyboard input

The desktop uses desktop.html to display the QR code on the desktop window.

For the client side, a mobile device will receive index.html and its attached client.js. This allows the User to input the keyboard (bottom half of screen) or move the mouse (top half of screen) and emit a WebSocket signal to the server.

Usage Guide

Touchpad

The touchpad portion of the interface allows for the following mouse gestures.

  • [Desktop input - Touchpad gesture]
  • Left click - Single one finger tap
  • Right click - Single two finger tap
  • Double click - Double one finger tap
  • Mouse movement - One finger drag
  • Scrolling - Two finger drag
  • Drag and Drop - Three finger drag

Keyboard

On tapping buttons on the keyboard, the keys should be typed on your desktop

The following special character keys are current placeholders for utility keys

  • @ - Enter
  • - Space

      • Backspace

The placement and content of the keys can be manipulated by turning on the 'Movable' toggle in the navigation bar.

Once in edit mode, you can drag and drop the placement of keys to change their position. You can also hold down on a key to update the string content of the key, and save the current placement and content of the key.

Once saved, anytime you run the application from your current desktop, the mobile device will load the keyboard layout you set.

Additional Setup

Additionally your desktop will need to have the appropriate c++ and python libraries

python2 is required to run the robotjs library

To install the required c++ libraries:

On mac, run

xcode-select --install

On windows,

TODO(laurel): Fill this in