Skip to main content

Getting Started

Requirements

OSiOS 16+ on a physical device (BLE)
ToolsXcode 15+, Apple developer signing
HardwareBLE cap-style controller (see BLE integration) or mock bytes in DEV
ExpectationsUnofficial stack — you debug packet layout yourself if hardware differs

1. Clone and open

git clone https://github.com/koderhack/veltokit.git
cd veltokit
cd app && open gametriki.xcodeproj

Select the gametriki scheme and your iPhone (not Simulator for real BLE).

2. First run

  1. Launch the app → Connect screen.
  2. Power on your BLE controller; wait for scan results.
  3. Tap the device → wait for connected + packet stream.
  4. Calibrate when prompted (hold level, center).
  5. Main menu → pick Pong, Dart, Bowling, or Quiz.

3. What you are running

app/ gametriki.xcodeproj + sample sources
├── Platform/ TrikiInputAdapter (UI calibration)
├── Engine/ GameEngine, sessions
└── Games/ Game logic + rendering
VeltoKit/ MotionSDK.connect() + pollInput() → GameInput

Games never import CoreBluetooth — they read GameInput via TrikiInputAdapter or MotionSDK directly.

4. DEV mode

From the menu, open DEV (if enabled in your build) to:

  • Inspect raw BLE bytes and MotionDebug
  • Tune MotionConfig live
  • Probe packet headers (0x22, button on bytes[1])

5. Documentation site locally

cd website
npm install
npm run start # dev (one locale at a time)
npm run build && npm run serve # EN + PL like production

Next steps

GoalDoc
Integrate SDK onlyInstallation · Quick start
Understand APISDK overview
Watch UI previewsDemo
Per-game mappingExamples

Quick start · FAQ