A dart library for controlling lightware devices over a network socket


  • Persistent connection which can auto-reconnect when dropped or failed
  • Commands are sent and matched with IDs to allow async send/receive
  • Supports multiline receive

Supported commands

x Get x Set x Call x Man


import 'dart:async';

import 'package:dart_lightware/dart_lightware.dart';

Future<void> main() async {
  /// New lightware instance
  var lightware = Lightware('');

  /// Print current connection states
  final sub = lightware.connectionState.listen(print);

  /// Get status of video input 7
  final r = await lightware.get(
    property: 'SignalPresent',

  /// Print telnet output from lightware
  for (var e in r) {

  /// Route input 7 to output 13
  await lightware.call('/MEDIA/XP/VIDEO', 'switch', ['I7:O13']);

  // Cancel subscription

Additional information

Issues and feature requests can be filed here.

Library was created according to the Lightware API documentation


Support for doing something awesome.