Categorygithub.com/0xcafed00d/joystick
modulepackage
1.0.1
Repository: https://github.com/0xcafed00d/joystick.git
Documentation: pkg.go.dev

# README

joystick

Go Joystick API

GoDoc Build Status

Package joystick implements a Polled API to read the state of an attached joystick. Windows, Linux & OSX are supported. Package requires no external dependencies to be installed.

Mac OSX code developed by: https://github.com/ledyba

Installation:

$ go get github.com/simulatedsimian/joystick/...

Sample Program

$ go install github.com/simulatedsimian/joystick/joysticktest
$ joysticktest 0

Displays the state of the specified joystick

Example:

import "github.com/simulatedsimian/joystick"
js, err := joystick.Open(jsid)
if err != nil {
  panic(err)
}

fmt.Printf("Joystick Name: %s", js.Name())
fmt.Printf("   Axis Count: %d", js.AxisCount())
fmt.Printf(" Button Count: %d", js.ButtonCount())

state, err := joystick.Read()
if err != nil {
  panic(err)
}

fmt.Printf("Axis Data: %v", state.AxisData)
js.Close()

# Packages

Simple program that displays the state of the specified joystick go run joysticktest.go 2 displays state of joystick id 2.

# Functions

Open opens the Joystick for reading, with the supplied id Under linux the id is used to construct the joystick device name: for example: id 0 will open device: "/dev/input/js0" Under Windows the id is the actual numeric id of the joystick If successful, a Joystick interface is returned which can be used to read the state of the joystick, else an error is returned.

# Structs

State holds the current state of the joystick.

# Interfaces

Interface Joystick provides access to the Joystick opened with the Open() function.