<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Omega2+ controls Fog Machine via DMX]]></title><description><![CDATA[<p dir="auto">Thanks to Omega2 I am now able to control my DMX fog machine via SSH.</p>
<p dir="auto">Hardware:</p>
<ul>
<li>Omega2+</li>
<li>Arduino Dock 2</li>
<li>Conceptinetics CTC-DRA-10-1 DMX RDM Shield for Arduino (bought on Ebay)</li>
<li>Stairville AF-40 DMX Mini Fog Machine (or any device controllable via DMX)</li>
<li>Standard DMX cable</li>
</ul>
<p dir="auto">Steps</p>
<ul>
<li>Plugged Omega2+ into dock</li>
<li>Plugged DMX shield into dock</li>
<li>Set TX &amp; RX jumper on DMX shield to 'uart'</li>
<li>Installed Arduino IDE</li>
<li>Downloaded DMX Library for Arduino (<a href="https://sourceforge.net/projects/dmxlibraryforar" rel="nofollow">https://sourceforge.net/projects/dmxlibraryforar</a>)</li>
<li>Connected fog machine and shield with the DMX cable</li>
<li>Powered up fog machine and dock</li>
<li>Compiled and uploaded Arduino code</li>
<li>Set DMX channel of fog machine to 0x03 via dip switch</li>
</ul>
<p dir="auto">Arduino code:</p>
<pre><code class="language-c++">#include &lt;Wire.h&gt;
#include &lt;Conceptinetics.h&gt;

#define I2C_ADDR 0x08
// Minimum is 1. Maximum depends on available memory.
#define DMX_CHANNELS_NUM 16
// Pin number to change read or write mode on the shield
#define DMX_RXEN_PIN 2

DMX_Master dmx_master(DMX_CHANNELS_NUM, DMX_RXEN_PIN);

void setup() {
  dmx_master.enable();
  
  Wire.begin(I2C_ADDR);
  Wire.onReceive(i2c_on_receive_handler);
}

void loop() {
}

void i2c_on_receive_handler(int bytes_num) {
  uint16_t channel = Wire.read();
  uint16_t value = Wire.read();
  dmx_master.setChannelValue(channel, value);
}
</code></pre>
<p dir="auto">omega shell:</p>
<pre><code class="language-bash">$ i2cset -y 0 0x08 0x03 0x00 # fog machine off
$ i2cset -y 0 0x08 0x03 0x80 # fog machine 50%
$ i2cset -y 0 0x08 0x03 0xFF # fog machine 100%
$ # i2cset -y 0 [arduino_i2c_addr] [dmx_channel] [dmx_value]
</code></pre>
<p dir="auto"><img src="/uploads/files/1484825976398-dsc_0097.jpg" alt="0_1484826119023_DSC_0097.JPG" class="img-responsive img-markdown" /></p>
<p dir="auto">This setup might serve as a cheap alternative to the <em>Open Source Lighting Board</em> (OSL).<br />
<a href="https://www.openlighting.org/" rel="nofollow">https://www.openlighting.org/</a><br />
<a href="http://www.stellascapes.com/product-page/20736098-e4be-aef0-6cc7-3d69362cf5d5" rel="nofollow">http://www.stellascapes.com/product-page/20736098-e4be-aef0-6cc7-3d69362cf5d5</a> ($75)</p>
<p dir="auto">I am now planning to connect some DMX LED strips / bars and integrate the Omega as my new DMX/TCP interface into FHEM.</p>
]]></description><link>http://community.onion.io/topic/1361/omega2-controls-fog-machine-via-dmx</link><generator>RSS for Node</generator><lastBuildDate>Sat, 07 Mar 2026 18:19:23 GMT</lastBuildDate><atom:link href="http://community.onion.io/topic/1361.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 19 Jan 2017 11:44:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Omega2+ controls Fog Machine via DMX on Thu, 19 Jan 2017 12:09:08 GMT]]></title><description><![CDATA[<p dir="auto">Thanks to Omega2 I am now able to control my DMX fog machine via SSH.</p>
<p dir="auto">Hardware:</p>
<ul>
<li>Omega2+</li>
<li>Arduino Dock 2</li>
<li>Conceptinetics CTC-DRA-10-1 DMX RDM Shield for Arduino (bought on Ebay)</li>
<li>Stairville AF-40 DMX Mini Fog Machine (or any device controllable via DMX)</li>
<li>Standard DMX cable</li>
</ul>
<p dir="auto">Steps</p>
<ul>
<li>Plugged Omega2+ into dock</li>
<li>Plugged DMX shield into dock</li>
<li>Set TX &amp; RX jumper on DMX shield to 'uart'</li>
<li>Installed Arduino IDE</li>
<li>Downloaded DMX Library for Arduino (<a href="https://sourceforge.net/projects/dmxlibraryforar" rel="nofollow">https://sourceforge.net/projects/dmxlibraryforar</a>)</li>
<li>Connected fog machine and shield with the DMX cable</li>
<li>Powered up fog machine and dock</li>
<li>Compiled and uploaded Arduino code</li>
<li>Set DMX channel of fog machine to 0x03 via dip switch</li>
</ul>
<p dir="auto">Arduino code:</p>
<pre><code class="language-c++">#include &lt;Wire.h&gt;
#include &lt;Conceptinetics.h&gt;

#define I2C_ADDR 0x08
// Minimum is 1. Maximum depends on available memory.
#define DMX_CHANNELS_NUM 16
// Pin number to change read or write mode on the shield
#define DMX_RXEN_PIN 2

DMX_Master dmx_master(DMX_CHANNELS_NUM, DMX_RXEN_PIN);

void setup() {
  dmx_master.enable();
  
  Wire.begin(I2C_ADDR);
  Wire.onReceive(i2c_on_receive_handler);
}

void loop() {
}

void i2c_on_receive_handler(int bytes_num) {
  uint16_t channel = Wire.read();
  uint16_t value = Wire.read();
  dmx_master.setChannelValue(channel, value);
}
</code></pre>
<p dir="auto">omega shell:</p>
<pre><code class="language-bash">$ i2cset -y 0 0x08 0x03 0x00 # fog machine off
$ i2cset -y 0 0x08 0x03 0x80 # fog machine 50%
$ i2cset -y 0 0x08 0x03 0xFF # fog machine 100%
$ # i2cset -y 0 [arduino_i2c_addr] [dmx_channel] [dmx_value]
</code></pre>
<p dir="auto"><img src="/uploads/files/1484825976398-dsc_0097.jpg" alt="0_1484826119023_DSC_0097.JPG" class="img-responsive img-markdown" /></p>
<p dir="auto">This setup might serve as a cheap alternative to the <em>Open Source Lighting Board</em> (OSL).<br />
<a href="https://www.openlighting.org/" rel="nofollow">https://www.openlighting.org/</a><br />
<a href="http://www.stellascapes.com/product-page/20736098-e4be-aef0-6cc7-3d69362cf5d5" rel="nofollow">http://www.stellascapes.com/product-page/20736098-e4be-aef0-6cc7-3d69362cf5d5</a> ($75)</p>
<p dir="auto">I am now planning to connect some DMX LED strips / bars and integrate the Omega as my new DMX/TCP interface into FHEM.</p>
]]></description><link>http://community.onion.io/post/8832</link><guid isPermaLink="true">http://community.onion.io/post/8832</guid><dc:creator><![CDATA[canochordo]]></dc:creator><pubDate>Thu, 19 Jan 2017 12:09:08 GMT</pubDate></item><item><title><![CDATA[Reply to Omega2+ controls Fog Machine via DMX on Fri, 12 Feb 2021 04:15:59 GMT]]></title><description><![CDATA[<p dir="auto">Are you able to share the changes to the conceptinetics code you used with the omega?<br />
The conceptinetics DMX library directly manipulates the AVR UART registers which dont exist on the Omega.<br />
How have you changed the library to work with a Linux controlled Serial port that doesn not allow direct hardware access.</p>
<p dir="auto">Thanks<br />
Lachlan</p>
]]></description><link>http://community.onion.io/post/23200</link><guid isPermaLink="true">http://community.onion.io/post/23200</guid><dc:creator><![CDATA[Lachlan Peter]]></dc:creator><pubDate>Fri, 12 Feb 2021 04:15:59 GMT</pubDate></item></channel></rss>