New Firmware for Nitrogen Logic Automation and Depth Controllers

I'm pleased to announce new firmware versions available for both the Nitrogen Logic Automation Controller and Depth Controller.  As usual, newly ordered controllers will receive the latest firmware, while existing controller owners can obtain the firmware update by e-mailing me directly, or using the contact form on the Nitrogen Logic web site.

As an aside, I will be looking for a new blogging platform soon, as Posterous has become increasingly unreliable since their acquisition by Twitter.  For example, the media upload and link creation interfaces in the post editor no longer work for me.  The embedded YouTube videos also seem to be missing from my older posts.  I welcome any suggestions.

Here are some of the changes in these new firmware versions:

automation controller v0.9.2-7

The Automation Controller firmware includes enhancements to existing logic objects, as well as the addition of one new processing object. There are also minor changes to the controller's web status page on port 4567.

Parameter Control object

  • The Parameter Control plugin was modified to preserve its exported parameters when its size is changed in Palace Designer.
  • Added optional Reset input pins to Parameter Control objects, selectable using the Reset Pin parameter. This permits the use of automation logic to clear out an override value set via parameter, and restores the input pin's value on the output pin.

Float Value object

  • The parameter range of the Float Value plugin was changed from -FLT_MAX..FLT_MAX to -inf..inf.

Phyiscal Model object

  • Added a Physical Model plugin to the Filters category. This object simulates physical attributes of a point mass on a single axis, such as position, velocity, etc. while moving towards a target value.
  • The input pins control the target value, while the output pins reflect the current simulated position. There are limits imposed on the physical attributes (e.g. maximum velocity).
  • Thus far, velocity is simulated. Acceleration will be added in the future.
  • One intended purpose of this object is for light dimmers. Using a Physical Model object to control light brightness causes fades from very dim to very bright to take a long time, while fades between similar brightness levels happen quickly.

Multi-zone Value object

  • Added X Proportion, Y Proportion, and Z Proportion attributes to the Multi-zone Value plugin that interfaces with the Depth Camera Controller.  These attributes result in output pin values between 0.0 and 1.0, based on the zones' center of gravity in each dimension, regardless of the size of the zone.  The primary use for these attributes is 3D user control interfaces, such as the Gesture-like Light Control demonstration I released last year.

depth controller v19

Performance improvements have been made both to the controller backend and to the web interface on port 8089. Some changes were made to the low-level protocol on port 14308.

Web Interface

  • Coordinate grid and cursor location overlay on Overhead, Side, and Front views.

xAP Support

  • xAP support is much faster, so the controller will run reliably on a heavily loaded xAP network.
  • xAP events are generated at the full camera frame rate, up to 30Hz, rather than at a fixed rate of up to 10Hz.


  • The sub command now sends ADD and DEL events when a zone is added or removed.
  • There is now a small hysteresis used when detecting whether a zone is occupied.
  • The maximum zone reported by the zones command is now selected by surface area instead of pixel count.
  • Some enhancements were made that should improve frame rates on systems with many zones.