Skip to content

kelly/flipdisc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

46 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

flipdisc

A javascript library for flip dot, flip disc, and flip digit displays.

panel

Examples

Install

$ npm install flipdisc

Simple Usage

import { createDisplay } from 'flipdisc' 

const device = '/dev/cu.usbserial-AB0OJSKG' 
const display = createDisplay([[1], [2]], device)
display.send(frameData)

Advanced Usage

import { createDisplay, Panels } from 'flipdisc' 

// layout as a 2D array of panel addresses
const layout = [[1, 3, 5], [2, 4, 6]]

// supports multiple RS485 devices
const dev = [{
  path: '/dev/cu.usbserial-AB0OJSKG',
  addresses: [1, 3, 5],
  baudRate: 57600
}, {
  path: '/dev/cu.usbserial-AB0ODKET',
  addresses: [2, 4, 6],
  baudRate: 57600
}]

// or network devices
const devices = [{
  path: 'tcp://192.168.0.100:3000',
  addresses: [1, 2, 3, 4, 5, 6],
}]


const opt = {
  isMirrored: true,
  rotation: 90,
  panel: {
    width: 28,
    height: 7,
    type: Panels.AlfaZetaPanel
  }
}

// or flipdigit
const opt = {
  panel: Panels.AlfaZetaSegmentPanel
}


const display = createDisplay(layout, dev, opt)

Methods

// send a single 2D array of frame data. 
// (0 = not-flipped, 1 = flipped)
display.send(frameData)
// also accepts imageData buffer from a gl or canvas instance

display.sendSegmentData(verticalSegmentData, horizontalSegmentData)
// for segment displays: send array data for the vertical and/or horizontal aligned segments. 

// get width
display.width

// get height
display.height

// get current display data
display.content

// set inverted
display.setInverted()

// get general display info
display.info

Requirements

About

A javascript library for flipdot and flipdisc displays

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published