
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">



<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
<title>Starter Kit: Blinkenlights – Tinkerforge</title>

<!--<link type="text/css" rel="stylesheet" href="http://www.tinkerforge.com/static/base_tf.css" />-->
<link type="text/css" rel="stylesheet" href="http://www.tinkerforge.com/static/jquery.lightbox-0.5.css" />
<meta name="keywords" content="Tinkerforge, Open Source Hardware, Bricks, Bricklets, USB Controllable, USB Sensing, USB Controlling" />
<meta name="description" content="Easy-to-use open source hardware. Control motors and sense the environment over USB, Ethernet or Wi-Fi/WLAN with C/C++, C#, Delphi/Lazarus, Java, JavaScript, LabVIEW, Mathematica, MATLAB/Octave, Perl, PHP, Python, Ruby, Shell, Visual Basic .NET or directly over TCP/IP." />
<meta name="copyright" content="Tinkerforge GmbH" />
<!--<script type="text/javascript">document.write('<style>.noscript { display: none; }</style>');</script>-->


    
    <link rel="stylesheet" href="../../_static/documentation_tf.css" type="text/css" />
    <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
    
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    '../../',
        VERSION:     '1.0',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true
      };
    </script>
    <script type="text/javascript" src="../../_static/jquery.js"></script>
    <script type="text/javascript" src="../../_static/underscore.js"></script>
    <script type="text/javascript" src="../../_static/doctools.js"></script>
    <link rel="top" title="Tinkerforge" href="../../index.html" />
    <link rel="up" title="Starter Kits" href="../Kits.html" />
    <link rel="next" title="Construction of Starter Kit: Blinkenlights" href="Construction.html" />
    <link rel="prev" title="Extended Nagios Example" href="../ServerRoomMonitoring/ExtendedNagios.html" />

<script type="text/javascript" src="http://www.tinkerforge.com/static/jquery.lightbox-0.5.js"></script>
<script type="text/javascript">$(function() { $('#gallery a').lightBox(); });</script>
<script type="text/javascript">$(function() { $(".sphinxsidebarwrapper").filter(function() { return $.trim($(this).text()).length == 0; }).parent().hide(); });</script>


  </head>
  <body>
<div id="wrapper">
	<div id="tfcontent">
		<div class="boxContent3">


<div class="toctree">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../Getting_Started.html">Getting Started</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../Primer.html">Primer</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Tutorials/Tutorials.html">Tutorials</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../FAQ.html">FAQ</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../Hardware/Hardware.html">Hardware</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../Hardware/Bricks/Bricks.html">Bricks</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Hardware/Bricklets/Bricklets.html">Bricklets</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Hardware/Master_Extensions/Master_Extensions.html">Master Extensions</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Hardware/Power_Supplies/Power_Supplies.html">Power Supplies</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Hardware/Accessories/Accessories.html">Accessories</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Timeline.html">Timeline</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../Software/Software.html">Software</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../Software/Brickd.html">Brick Daemon (brickd)</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Software/Brickv.html">Brick Viewer (brickv)</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Software/API_Bindings.html">API Bindings</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Software/Firmwares_And_Plugins.html">Firmwares and Plugins</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Software/Device_Identifier.html">Device Identifier</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Source_Code.html">Source Code and Bug Tracking</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Programming_Interface.html">Programming Interface</a></li>
</ul>
</li>
<li class="toctree-l1 current"><a class="reference internal" href="../Kits.html">Starter Kits</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../WeatherStation/WeatherStation.html">Weather Station</a></li>
<li class="toctree-l2"><a class="reference internal" href="../HardwareHacking/HardwareHacking.html">Hardware Hacking</a></li>
<li class="toctree-l2"><a class="reference internal" href="../ServerRoomMonitoring/ServerRoomMonitoring.html">Server Room Monitoring</a></li>
<li class="toctree-l2 current"><a class="current reference internal" href="">Blinkenlights</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#features">Features</a></li>
<li class="toctree-l3"><a class="reference internal" href="#description">Description</a></li>
<li class="toctree-l3"><a class="reference internal" href="#technical-specifications">Technical Specifications</a></li>
<li class="toctree-l3"><a class="reference internal" href="#resources">Resources</a></li>
<li class="toctree-l3"><a class="reference internal" href="#firmware-updating-and-first-tests">Firmware updating and first tests</a></li>
<li class="toctree-l3"><a class="reference internal" href="#construction">Construction</a><ul>
<li class="toctree-l4"><a class="reference internal" href="Construction.html">Details</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="#demo-application-and-example-projects">Demo Application and Example Projects</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#tetris">Tetris</a></li>
<li class="toctree-l4"><a class="reference internal" href="#pong">Pong</a></li>
<li class="toctree-l4"><a class="reference internal" href="#fire-simulation">Fire Simulation</a></li>
<li class="toctree-l4"><a class="reference internal" href="#scrolling-text">Scrolling Text</a></li>
<li class="toctree-l4"><a class="reference internal" href="#display-images">Display Images</a></li>
<li class="toctree-l4"><a class="reference internal" href="#moving-rainbow">Moving Rainbow</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="#further-enhancements">Further Enhancements</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../InternetOfThings/InternetOfThings.html">Internet of Things</a></li>
<li class="toctree-l2"><a class="reference internal" href="../CameraSlider/CameraSlider.html">Camera Slider</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../Embedded/Boards.html">Embedded Boards</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../Embedded/Raspberry_Pi.html">Raspberry Pi</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../Specifications.html">Specifications</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../Technical_Data.html">Technical Data</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Low_Level_Protocols/TCPIP.html">TCP/IP Protocol</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Low_Level_Protocols/Modbus.html">Modbus Protocol</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../Low_Level_Protocols/Wireshark_Dissector.html">Wireshark Dissector</a></li>
</ul>
</li>
</ul>

</div>



<div id="shoplink_img">
	<a href="../../../shop/kits/starter-kit-blinkenlights.html"><img alt="Shop" width="32" height="40" src="../../_images/Misc/cart-icon.png" /></a>
</div>
<div id="shoplink_a">
	<a href="../../../shop/kits/starter-kit-blinkenlights.html">In Shop</a>
</div>



    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body">
            
  <div class="section" id="starter-kit-blinkenlights">
<span id="id1"></span><h1>Starter Kit: Blinkenlights<a class="headerlink" href="#starter-kit-blinkenlights" title="Permalink to this headline">¶</a></h1>
{% from "macros.html" import tfdocstart, tfdocimg, tfdocend %}
{{
    tfdocstart("Kits/kit_blinkenlights_fire_350.jpg",
               "Kits/kit_blinkenlights_fire_600.jpg",
               "Blinkenlights: Fire Simulation")
}}
{{
    tfdocimg("Kits/kit_blinkenlights_fire_daylight_100.jpg",
             "Kits/kit_blinkenlights_fire_daylight_600.jpg",
             "Blinkenlights: Fire Simulation in Daylight")
}}
{{
    tfdocimg("Kits/kit_blinkenlights_on_wall_100.jpg",
             "Kits/kit_blinkenlights_on_wall_600.jpg",
             "Blinkenlights: On Wall")
}}
{{
    tfdocimg("Kits/kit_blinkenlights_pong_100.jpg",
             "Kits/kit_blinkenlights_pong_600.jpg",
             "Blinkenlights: Pong")
}}
{{
    tfdocimg("Kits/kit_blinkenlights_pong_daylight_100.jpg",
             "Kits/kit_blinkenlights_pong_daylight_600.jpg",
             "Blinkenlights: Pong in Daylight")
}}
{{
    tfdocimg("Kits/kit_blinkenlights_tetris_100.jpg",
             "Kits/kit_blinkenlights_tetris_600.jpg",
             "Blinkenlights: Tetris")
}}
{{
    tfdocimg("Kits/kit_blinkenlights_text_daylight_100.jpg",
             "Kits/kit_blinkenlights_text_daylight_600.jpg",
             "Blinkenlights: Text Display")
}}
{{
    tfdocimg("Kits/kit_blinkenlights_rainbow_near_far_dark_100.jpg",
             "Kits/kit_blinkenlights_rainbow_near_far_dark_600.jpg",
             "Blinkenlights: Rainbow with different Front Panel Distances")
}}
{{ tfdocend() }}<div class="section" id="features">
<h2>Features<a class="headerlink" href="#features" title="Permalink to this headline">¶</a></h2>
<ul class="simple">
<li>Giant 90x50cm 200 Pixel RGB Display with update rate up to 100Hz</li>
<li>Develop Party Games, Exhibition Presentations and Customer Specific Displays
of any kind</li>
<li>Freely programmable, configurable and expandable</li>
<li>Pixels: 12mm diameter, waterproof (IP65), full-color RGB with 1600mcd per pixel</li>
</ul>
</div>
<div class="section" id="description">
<h2>Description<a class="headerlink" href="#description" title="Permalink to this headline">¶</a></h2>
<p>The <em>Starter Kit: Blinkenlights</em> is a huge, freely programmable display.
It consist of 200 independently controllable full-color RGB LED pixels that can
be changed up to 100 times per second. Possible applications are vast. The
kit can be used to create party games, exhibition presentations, fancy mood
lighting and custom displays of any kind.</p>
<p>The basic kit comes with one <a class="reference internal" href="../../Hardware/Bricks/Master_Brick.html#master-brick"><em>Master Brick</em></a>, one <a class="reference internal" href="../../Hardware/Bricklets/LED_Strip.html#led-strip-bricklet"><em>LED Strip
Bricklet</em></a>, four 50 LED Pixel sets, one LED power supply,
four wall mounting plates, one perforated board, one front panel and all
necessary cables and mounting materials. The basic kit can be controlled over USB
by any (Embedded-) PC (e.g. <a class="reference internal" href="../../Embedded/Raspberry_Pi.html#embedded-raspberry-pi"><em>Raspberry Pi</em></a>), laptop,
server or tablet.</p>
<p>The kit can be extended by other Tinkerforge products.
In game applications the
<a class="reference internal" href="../../Hardware/Bricklets/Multi_Touch.html#multi-touch-bricklet-giant-game-pad"><em>Giant Game Pad</em></a>
can be used for controls. The
<a class="reference internal" href="../../Hardware/Bricklets/Piezo_Speaker.html#piezo-speaker-bricklet"><em>Piezo Speaker Bricklet</em></a> can provide background
music and the <a class="reference internal" href="../../Hardware/Bricklets/Segment_Display_4x7.html#segment-display-4x7-bricklet"><em>Segment Display 4x7</em></a> can
show a score. It is possible to play pong with two
<a class="reference internal" href="../../Hardware/Bricklets/Dual_Button.html#dual-button-bricklet"><em>Dual Button Bricklets</em></a>.</p>
<p>With the <a class="reference internal" href="../../Hardware/Master_Extensions/Ethernet_Extension.html#ethernet-extension"><em>Ethernet Extension</em></a> the USB
interface can be changed to Ethernet, to allow smart phone or tablet
controlled applications. A larger display can be created by
attaching more LED Pixels to the kit.</p>
<p>A <a class="reference internal" href="#starter-kit-blinkenlights-demo-examples"><em>demo application</em></a> implements
clones of <a class="reference external" href="http://en.wikipedia.org/wiki/Tetris">Tetris</a> and
<a class="reference external" href="http://en.wikipedia.org/wiki/Pong">Pong</a> and includes different non-game
applications. For example, it can show customizable scrolling text in
different colors on the display, it shows rainbows, customizable image sets with
configurable durations and can warm your heart with a virtual fire.
The games can be controlled by a PC keyboard but can be also be controlled
by customizable touch pads when using the Multi Touch Bricklet (Giant Game Pad)
or by Dual Button Bricklet.</p>
<p>The kit name &quot;Blinkenlights&quot; is used in
<a class="reference external" href="http://en.wikipedia.org/wiki/Blinkenlights">hacker jargon</a>
to describe blinking lights of network equipment. It is also known from the
<a class="reference external" href="http://en.wikipedia.org/wiki/Project_Blinkenlights">Project Blinkenlights</a>.</p>
<p>The following video shows the demo application and the construction in time lapse:</p>
<center><iframe width="640" height="360" src="http://www.youtube-nocookie.com/embed/mmNRa-lLaXM" frameborder="0" allowfullscreen></iframe></center></div>
<div class="section" id="technical-specifications">
<h2>Technical Specifications<a class="headerlink" href="#technical-specifications" title="Permalink to this headline">¶</a></h2>
<table border="1" class="docutils">
<colgroup>
<col width="40%" />
<col width="60%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Property</th>
<th class="head">Value</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>Maximum Update Rate (LED Strip Bricklet)</td>
<td>100Hz (per Pixel)</td>
</tr>
<tr class="row-odd"><td>RGB resolution (LED Strip Bricklet)</td>
<td>3 x 8bit</td>
</tr>
<tr class="row-even"><td>Luminous Intensity</td>
<td>1600mcd per pixel</td>
</tr>
<tr class="row-odd"><td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr class="row-even"><td>Number of RGB Pixels</td>
<td>10 x 20</td>
</tr>
<tr class="row-odd"><td>Dimensions (W x D x H)</td>
<td><div class="first last line-block">
<div class="line">40 x 80 x 7cm (without front panel)</div>
<div class="line">50 x 90 x &gt; 7cm* (with front panel)</div>
</div>
</td>
</tr>
<tr class="row-even"><td>Weight</td>
<td>4kg (assembled kit)</td>
</tr>
</tbody>
</table>
<p>* depends on configured the distance between front and back panel</p>
</div>
<div class="section" id="resources">
<span id="starter-kit-blinkenlights-resources"></span><h2>Resources<a class="headerlink" href="#resources" title="Permalink to this headline">¶</a></h2>
<ul class="simple">
<li>Example Source Code for <a class="reference internal" href="#starter-kit-blinkenlights-tetris"><em>Tetris</em></a> (Download: <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/games/python">Python</a>, <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/games/csharp">C#</a>)</li>
<li>Example Source Code for <a class="reference internal" href="#starter-kit-blinkenlights-pong"><em>Pong</em></a> (Download: <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/games/python">Python</a>, <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/games/csharp">C#</a>)</li>
<li>Example Source Code for <a class="reference internal" href="#starter-kit-blinkenlights-fire"><em>Fire</em></a> (Download: <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/fire/python">Python</a>, <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/fire/delphi">Delphi</a>)</li>
<li>Example Source Code for <a class="reference internal" href="#starter-kit-blinkenlights-scrolling-text"><em>Scrolling Text</em></a> (Download: <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/text/python">Python</a>, <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/text/php">PHP</a>)</li>
<li>Example Source Code for <a class="reference internal" href="#starter-kit-blinkenlights-images"><em>Display Images</em></a> (Download: <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/images/python">Python</a>, <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/images/java">Java</a>)</li>
<li><a class="reference internal" href="#starter-kit-blinkenlights-demo-examples"><em>Demo Application</em></a> (Download: <a class="reference external" href="http://download.tinkerforge.com/kits/blinkenlights/windows/starter_kit_blinkenlights_demo_windows_latest.exe">Windows</a>, <a class="reference external" href="http://download.tinkerforge.com/kits/blinkenlights/linux/starter-kit-blinkenlights-demo-linux_latest.deb">Linux</a>, <a class="reference external" href="http://download.tinkerforge.com/kits/blinkenlights/macos/starter_kit_blinkenlights_demo_macos_latest.dmg">Mac OS X</a>, <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/demo">Source Code</a>)</li>
</ul>
</div>
<div class="section" id="firmware-updating-and-first-tests">
<h2>Firmware updating and first tests<a class="headerlink" href="#firmware-updating-and-first-tests" title="Permalink to this headline">¶</a></h2>
<p>As a very first step you should try out and update your Bricks and Bricklets.</p>
<p>For that you need to install the <a class="reference internal" href="../../Software/Brickd.html#brickd-installation"><em>Brick Daemon</em></a> and
the <a class="reference internal" href="../../Software/Brickv.html#brickv-installation"><em>Brick Viewer</em></a>. Connect the LED Strip Bricklet
to the Master Brick and connect it via USB to your PC. Afterwards use Brick
Viewer to check if all of the firmwares are up to date (Updates / Flashing
button). If not, you can <a class="reference internal" href="../../Software/Brickv.html#brickv-flash-firmware"><em>update the Bricks</em></a> and
<a class="reference internal" href="../../Software/Brickv.html#brickv-flash-plugin"><em>update the Bricklets</em></a> with the Brick
Viewer too:</p>
<a class="reference external image-reference" href="../../_images/Kits/kit_blinkenlights_update.jpg"><img alt="Blinkenlights update in Brick Viewer" class="align-center" src="../../_images/kit_blinkenlights_update_350.jpg" style="width: 350.0px; height: 193.0px;" /></a>
<p>As the next step test the LED Strip Bricklet and the pixels as described
<a class="reference internal" href="../../Hardware/Bricklets/LED_Strip.html#led-strip-bricklet-test"><em>here</em></a>. After that you can start to assemble
the kit.</p>
</div>
<div class="section" id="construction">
<h2>Construction<a class="headerlink" href="#construction" title="Permalink to this headline">¶</a></h2>
<a class="reference external image-reference" href="../../_images/Kits/kit_blinkenlights_build_step9_1200.jpg"><img alt="Blinkenlights Kit Construction Step with 40cm Cable" class="align-center" src="../../_images/kit_blinkenlights_build_step9_350.jpg" style="width: 350.0px; height: 170.0px;" /></a>
<p>The construction is described
<a class="reference internal" href="Construction.html#starter-kit-blinkenlights-construction"><em>here</em></a> in detail.</p>
<div class="toctree-wrapper compound">
</div>
</div>
<div class="section" id="demo-application-and-example-projects">
<span id="starter-kit-blinkenlights-demo-examples"></span><h2>Demo Application and Example Projects<a class="headerlink" href="#demo-application-and-example-projects" title="Permalink to this headline">¶</a></h2>
<a class="reference external image-reference" href="../../_images/Kits/blinkenlights_demo_setup.jpg"><img alt="Blinkenlights Demo Application Screenshot: Setup" class="align-center" src="../../_images/blinkenlights_demo_setup_350.jpg" style="width: 350.0px; height: 358.0px;" /></a>
<p>The demo application shows possible applications for this kit. It
consists of 6 individual applications each also provided as individual project
(see below). Each project is represented by its own tab and will be
started by selecting the corresponding tab. The application supports the
additional usage of two Dual Button Bricklets or one Multi Touch Bricklet
to control the games. If a Piezo Speaker Bricklet and/or Segment Display 4x7
Bricklet is connected, these Bricklets will also be used by the games to give
acoustic feedback or to display the score.</p>
<p>Before starting you have to configure the host and port. If you use the standard
kit and have connected it directly to your PC via USB &quot;localhost&quot; and &quot;4223&quot; is
fine. If you extended the kit by
<a class="reference internal" href="../../Primer.html#primer-master-extensions"><em>Extensions</em></a> or
want to control the kit from another PC you have to enter the IP address or
hostname of the extension or the PC where the kit is connected to. Below the
input boxes is a table which shows you the connected Bricks and Bricklets.</p>
<div class="section" id="tetris">
<span id="starter-kit-blinkenlights-tetris"></span><h3>Tetris<a class="headerlink" href="#tetris" title="Permalink to this headline">¶</a></h3>
<p>The demo application implements a typical
<a class="reference external" href="http://en.wikipedia.org/wiki/Tetris">Tetris</a> game with all specialties.
It can be played with:</p>
<a class="reference internal image-reference" href="../../_images/kit_blinkenlights_tetris_350.jpg"><img alt="Blinkenlights Kit Tetris" class="align-center" src="../../_images/kit_blinkenlights_tetris_350.jpg" style="width: 203.0px; height: 350.0px;" /></a>
<p>or without front panel:</p>
<a class="reference internal image-reference" href="../../_images/kit_blinkenlights_tetris_wo_frontpanel_350.jpg"><img alt="Blinkenlights Kit Tetris" class="align-center" src="../../_images/kit_blinkenlights_tetris_wo_frontpanel_350.jpg" style="width: 228.0px; height: 350.0px;" /></a>
<p>This Tetris clone can be controlled by three possible ways. Firstly, there
are buttons in the tab which can be used to control the game. Next you can use
your keyboard. The keys are defined in the tab. Finally a
connected Multi Touch Bricklet with a Giant Game Pad or self-made electrodes
can be used.</p>
<a class="reference external image-reference" href="../../_images/Kits/blinkenlights_demo_tetris.jpg"><img alt="Blinkenlights Demo Application Screenshot: Tetris" class="align-center" src="../../_images/blinkenlights_demo_tetris_350.jpg" style="width: 350.0px; height: 358.0px;" /></a>
<p>The standalone <a class="reference internal" href="../../Software/API_Bindings_Python.html#api-bindings-python"><em>Python</em></a> project can be downloaded from
<a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/games/python">GitHub</a>.
This also incorporates the
<a class="reference internal" href="#starter-kit-blinkenlights-pong"><em>Pong</em></a> project and consists of mainly
two files: <tt class="docutils literal"><span class="pre">tetris.py</span></tt> implements the game and <tt class="docutils literal"><span class="pre">config.py</span></tt> defines the
configuration (host, port, UIDs, LED matrix layout and keymaps).</p>
<p>Modify <tt class="docutils literal"><span class="pre">config.py</span></tt> according to your needs and run the application:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">python</span> <span class="n">tetris</span><span class="o">.</span><span class="n">py</span>
</pre></div>
</div>
<p>There is also a <a class="reference internal" href="../../Software/API_Bindings_CSharp.html#api-bindings-csharp"><em>C#</em></a> implementation that can be
downloaded from <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/games/csharp">GitHub</a>.</p>
</div>
<div class="section" id="pong">
<span id="starter-kit-blinkenlights-pong"></span><h3>Pong<a class="headerlink" href="#pong" title="Permalink to this headline">¶</a></h3>
<p>Like <a class="reference internal" href="#starter-kit-blinkenlights-tetris"><em>Tetris</em></a> the
<a class="reference external" href="http://en.wikipedia.org/wiki/Pong">Pong</a> can be used with or without front
panel.</p>
<p>The following images show pong with darkness and daylight.</p>
<a class="reference internal image-reference" href="../../_images/kit_blinkenlights_pong_350.jpg"><img alt="Blinkenlights Demo Application Screenshot: Pong" class="align-center" src="../../_images/kit_blinkenlights_pong_350.jpg" style="width: 350.0px; height: 201.0px;" /></a>
<a class="reference internal image-reference" href="../../_images/kit_blinkenlights_pong_daylight_350.jpg"><img alt="Blinkenlights Demo Application Screenshot: Pong in Daylight" class="align-center" src="../../_images/kit_blinkenlights_pong_daylight_350.jpg" style="width: 350.0px; height: 232.0px;" /></a>
<p>The game can be controlled
by buttons, keyboard or a Multi Touch Bricklet. Additionally it can be
controlled by two Dual Button Bricklets.</p>
<a class="reference external image-reference" href="../../_images/Kits/blinkenlights_demo_pong.jpg"><img alt="Blinkenlights Demo Application Screenshot: Pong" class="align-center" src="../../_images/blinkenlights_demo_pong_350.jpg" style="width: 350.0px; height: 358.0px;" /></a>
<p>The standalone <a class="reference internal" href="../../Software/API_Bindings_Python.html#api-bindings-python"><em>Python</em></a> project can be downloaded from
<a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/games/python">GitHub</a>.
This also incorporates the
<a class="reference internal" href="#starter-kit-blinkenlights-tetris"><em>Tetris</em></a> project and consists of mainly
two files: <tt class="docutils literal"><span class="pre">pong.py</span></tt> implements the game and <tt class="docutils literal"><span class="pre">config.py</span></tt> defines the
configuration (host, port, UIDs, LED matrix layout and keymaps).</p>
<p>Modify the <tt class="docutils literal"><span class="pre">config.py</span></tt> according to your needs and run the application:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">python</span> <span class="n">pong</span><span class="o">.</span><span class="n">py</span>
</pre></div>
</div>
<p>There is also a <a class="reference internal" href="../../Software/API_Bindings_CSharp.html#api-bindings-csharp"><em>C#</em></a> implementation that can be
downloaded from <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/games/csharp">GitHub</a>.</p>
</div>
<div class="section" id="fire-simulation">
<span id="starter-kit-blinkenlights-fire"></span><h3>Fire Simulation<a class="headerlink" href="#fire-simulation" title="Permalink to this headline">¶</a></h3>
<p>When selecting the Fire tab you will see a fire simulation. It looks good
if you place the front panel in a distance of 42mm (2x9mm and 2x12mm standoff)
to the back panel.</p>
<p>The following images show the fire simulation during darkness and daylight.</p>
<a class="reference internal image-reference" href="../../_images/kit_blinkenlights_fire_350.jpg"><img alt="Blinkenlights Fire Demo" class="align-center" src="../../_images/kit_blinkenlights_fire_350.jpg" style="width: 350.0px; height: 253.0px;" /></a>
<a class="reference internal image-reference" href="../../_images/kit_blinkenlights_fire_daylight_350.jpg"><img alt="Blinkenlights Fire Demo in Daylight" class="align-center" src="../../_images/kit_blinkenlights_fire_daylight_350.jpg" style="width: 350.0px; height: 235.0px;" /></a>
<p>The simulation is based on a particle system and can be
configured by four sliders:</p>
<ul class="simple">
<li><strong>Frame Rate</strong>:
Defines the frame rate in Hz. The simulation is updated for each new frame.
If you increase the frame rate you will see a faster burning fire.</li>
<li><strong>Hue</strong>:
Defines the color of your fire.</li>
<li><strong>Start</strong>:
Defines the starting point where the fire particles will start to rise.</li>
<li><strong>End</strong>:
Defines the end point where the fire particles will extinguish.</li>
</ul>
<p>Play with the sliders to configure your personal fire! With the &quot;Default&quot; button
you will set back all sliders to their default values.</p>
<a class="reference external image-reference" href="../../_images/Kits/blinkenlights_demo_fire_1200.jpg"><img alt="Blinkenlights Demo Application Screenshot: Fire" class="align-center" src="../../_images/blinkenlights_demo_fire_350.jpg" style="width: 350.0px; height: 358.0px;" /></a>
<p>The standalone <a class="reference internal" href="../../Software/API_Bindings_Python.html#api-bindings-python"><em>Python</em></a> project can be downloaded from
<a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/fire/python">GitHub</a>.
It consists of mainly two files: <tt class="docutils literal"><span class="pre">fire.py</span></tt> implements the simulation and
<tt class="docutils literal"><span class="pre">config.py</span></tt> defines the configuration (host, port, UID, LED matrix layout and
simulation parameters).</p>
<p>Modify the <tt class="docutils literal"><span class="pre">config.py</span></tt> according to your needs and run the application:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">python</span> <span class="n">fire</span><span class="o">.</span><span class="n">py</span>
</pre></div>
</div>
<p>There is also a <a class="reference internal" href="../../Software/API_Bindings_Delphi.html#api-bindings-delphi"><em>Delphi</em></a> implementation that can be
downloaded from <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/fire/delphi">GitHub</a>.</p>
</div>
<div class="section" id="scrolling-text">
<span id="starter-kit-blinkenlights-scrolling-text"></span><h3>Scrolling Text<a class="headerlink" href="#scrolling-text" title="Permalink to this headline">¶</a></h3>
<p>The &quot;Text&quot; demo will scroll the entered text with the given frame rate
on the display.</p>
<a class="reference internal image-reference" href="../../_images/kit_blinkenlights_text_daylight_350.jpg"><img alt="Blinkenlights Kit Text Demo" class="align-center" src="../../_images/kit_blinkenlights_text_daylight_350.jpg" style="width: 350.0px; height: 282.0px;" /></a>
<p>The text moves one column per frame. A higher frame rate results
in faster moving text. You can set changing colors by selecting &quot;Rainbow&quot; or
select &quot;Color&quot; and pick the color you like by pressing the button.</p>
<a class="reference external image-reference" href="../../_images/Kits/blinkenlights_demo_text.jpg"><img alt="Blinkenlights Demo Application Screenshot: Text" class="align-center" src="../../_images/blinkenlights_demo_text_350.jpg" style="width: 350.0px; height: 358.0px;" /></a>
<p>The standalone <a class="reference internal" href="../../Software/API_Bindings_Python.html#api-bindings-python"><em>Python</em></a> project can be downloaded from
<a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/text/python">GitHub</a>.
It consists of mainly two files: <tt class="docutils literal"><span class="pre">text.py</span></tt> implements the logic and
<tt class="docutils literal"><span class="pre">config.py</span></tt> defines the configuration (host, port, UID, LED matrix layout and
color parameters).</p>
<p>Modify the <tt class="docutils literal"><span class="pre">config.py</span></tt> according to your needs and run the application with
some text to display:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">python</span> <span class="n">text</span><span class="o">.</span><span class="n">py</span> <span class="n">Starter</span> <span class="n">Kit</span><span class="p">:</span> <span class="n">Blinkenlights</span>
</pre></div>
</div>
<p>There is also a <a class="reference internal" href="../../Software/API_Bindings_PHP.html#api-bindings-php"><em>PHP</em></a> implementation that can be
downloaded from <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/text/php">GitHub</a>.</p>
</div>
<div class="section" id="display-images">
<span id="starter-kit-blinkenlights-images"></span><h3>Display Images<a class="headerlink" href="#display-images" title="Permalink to this headline">¶</a></h3>
<p>The &quot;Images&quot; demo can be used to display user specific images and whole
animations.</p>
<p>The following image</p>
<a class="reference internal image-reference" href="../../_images/kit_blinkenlights_heart_input.png"><img alt="Blinkenlights Heart Input" class="align-center" src="../../_images/kit_blinkenlights_heart_input.png" style="width: 398.0px; height: 198.0px;" /></a>
<p>generates the following output</p>
<a class="reference internal image-reference" href="../../_images/kit_blinkenlights_heart_350.jpg"><img alt="Blinkenlights Heart" class="align-center" src="../../_images/kit_blinkenlights_heart_350.jpg" style="width: 350.0px; height: 233.0px;" /></a>
<p>Choose the images you want to display by pressing &quot;Choose Images...&quot;. The
application will display the images with the given frame rate and switch to the
next image in the sequence each frame. This way you can create animations.
Each image is resized to 20x10 pixel (size of the display) and stretched if the
aspect ration does not  fit. Use an image editing tool if you are not satisfied
with the results.</p>
<a class="reference external image-reference" href="../../_images/Kits/blinkenlights_demo_images.jpg"><img alt="Blinkenlights Demo Application Screenshot: Images" class="align-center" src="../../_images/blinkenlights_demo_images_350.jpg" style="width: 350.0px; height: 358.0px;" /></a>
<p>The standalone <a class="reference internal" href="../../Software/API_Bindings_Python.html#api-bindings-python"><em>Python</em></a> project can be downloaded from
<a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/images/python">GitHub</a>.
It consists of mainly two files: <tt class="docutils literal"><span class="pre">images.py</span></tt> implements the logic and
<tt class="docutils literal"><span class="pre">config.py</span></tt> defines the configuration (host, port, UID, LED matrix layout).</p>
<p>Modify the <tt class="docutils literal"><span class="pre">config.py</span></tt> according to your needs and run the application with
some image files to display:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">python</span> <span class="n">text</span><span class="o">.</span><span class="n">py</span> <span class="n">image1</span><span class="o">.</span><span class="n">jpg</span> <span class="n">image2</span><span class="o">.</span><span class="n">jpg</span>
</pre></div>
</div>
<p>There is also a <a class="reference internal" href="../../Software/API_Bindings_Java.html#api-bindings-java"><em>Java</em></a> implementation that can be
downloaded from <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/images/java">GitHub</a>.</p>
</div>
<div class="section" id="moving-rainbow">
<span id="starter-kit-blinkenlights-scrolling-rainbow"></span><h3>Moving Rainbow<a class="headerlink" href="#moving-rainbow" title="Permalink to this headline">¶</a></h3>
<p>The &quot;Rainbow&quot; demo will display a moving rainbow with the given frame rate
and speed. The results depend on the distance to the front panel.</p>
<p>The following image shows the rainbow demo with 12mm distance in daylight,
42mm distance in daylight and with 42mm distance during darkness.</p>
<a class="reference external image-reference" href="../../_images/Kits/kit_blinkenlights_rainbow_near_far_dark_1200.jpg"><img alt="Blinkenlights Kit Rainbow Demo" class="align-center" src="../../_images/kit_blinkenlights_rainbow_near_far_dark_350.jpg" style="width: 156.0px; height: 350.0px;" /></a>
<p>A higher frame rate and speed results in faster moving rainbow.</p>
<a class="reference external image-reference" href="../../_images/Kits/blinkenlights_demo_rainbow.jpg"><img alt="Blinkenlights Demo Application Screenshot: Rainbow" class="align-center" src="../../_images/blinkenlights_demo_rainbow_350.jpg" style="width: 350.0px; height: 358.0px;" /></a>
<p>The standalone <a class="reference internal" href="../../Software/API_Bindings_Python.html#api-bindings-python"><em>Python</em></a> project can be downloaded from
<a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/rainbow/python">GitHub</a>.
It consists of mainly two files: <tt class="docutils literal"><span class="pre">rainbow.py</span></tt> implements the logic and
<tt class="docutils literal"><span class="pre">config.py</span></tt> defines the configuration (host, port, UID, LED matrix layout and
speed parameter).</p>
<p>Modify the <tt class="docutils literal"><span class="pre">config.py</span></tt> according to your needs and run the application:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">python</span> <span class="n">rainbow</span><span class="o">.</span><span class="n">py</span>
</pre></div>
</div>
<p>There is also a <a class="reference internal" href="../../Software/API_Bindings_C.html#api-bindings-c"><em>C</em></a> implementation that can be
downloaded from <a class="reference external" href="https://github.com/Tinkerforge/blinkenlights/tree/master/rainbow/c">GitHub</a>.</p>
</div>
</div>
<div class="section" id="further-enhancements">
<h2>Further Enhancements<a class="headerlink" href="#further-enhancements" title="Permalink to this headline">¶</a></h2>
<p>If you modded, extended or improved your Blinkenlights installation in any way and you
have published your results on our <a class="reference external" href="http://www.tinkerunity.org/wiki/">Wiki</a>,
on your blog or similar: Please give us a notice. We would love to add a link
to your project here!</p>
</div>
</div>


          </div>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
		<div id="tf_license">
			<a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">
				<img alt="Creative Commons Licence" width="88" height="31" style="border-width:0" src="/static/images/cc_license_logo.png" />
			</a>
			The content of this page is licensed under
			<a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution 3.0 Unported License</a>.
		</div>
		</div>
	</div>
</div>

    <div class="footer">
        &copy; Copyright 2011-2015, Olaf Lüke (olaf@tinkerforge.com).
      Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.2.2.
    </div>
  </body>
</html>