The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Device::BlinkStick

SYNOPSIS

use 5.10.0 ;
use strict ;
use warnings ;
use Device::BlinkStick;

my $bs = Device::BlinkStick->new() ;

# set first LED on all devices to blue
my $all_devices = $bs->devices() ;
foreach my $k ( keys %$all_devices) {
    $all->{$k}->set_color( 'blue') ;
}

# get the first blinkstick found
my $device = $bs->first() ;
# make it red
$first->led( color => 'red') ;

sleep( 2) ;
# blink red for 5 times, delaying for 250ms between black and the color
$first->blink( color => 'red', delay => 250, times => 5) ;    

DESCRIPTION

Module to control a number of blinkstick devices http://blinkstick.com connected via USB.

new

Instantiate a new object, also finds all currently connected devices and populates the accessor method variables

parameters

verbose

output some debug as things happen

access methods

devices

Get all blinkstick device Device::BlinkStick::Stick objects available as a hash ref

my $bs = Device::BlinkStick->new() ;
my $devices = $bs->devices() ;
first

Get the first blink stick device (object Device::BlinkStick::Stick) found

my $bs = Device::BlinkStick->new() ;
my $device = $bs->first() ;
# make it red
$first->led( color => 'red') ;

refresh_devices

Check the USB for any added or removed devices and update our internal list

Returns all blinkstick device objects available as a hash ref

my $bs = Device::BlinkStick->new() ;
my $current = $bs->refresh_devices() ;

find

Find a device by name or serial number

my $bs = Device::BlinkStick->new() ;
my $d = $bs->find( 'strip') ;   # I have a device I've named strip!
$d->set_mode( 3) ;
$d->led( color => 'green') ;       # set all LEDs to green
name

The name or serial number to match

Returns undef if fails to match a device