Control for LED matrices and other light installations by just one universal interface.
The Universal Interface Board (UIB) was born from the idea to have one universal board for driving different kind of LED (matrix) installations by PC, stand-alone or as a SD-File reader. We intend to create a device being:
That's it. So let's have a lock what we achieved.
We spend many hours of designing schematics, routing the pcb, searching available parts, re-routing, etc., but we believe it was worth each minute. So see where we finally came out.
Can the technical specs hold what the image it promising and could we achieve what we claimed for ourselves in the beginning? The short answer is: Yes! In particular we created an interface board with dimensions of 100mm x 60mm that
The following sketch demonstrates the capabilities of the interface board in it's full variety.
The board is mainly build around an Atmel ATMega1284P chip with 256kB of flash and 16kB of RAM memory. It has a standard power connector that supplies an 7805 linear voltage regulator with 7.5 to 9VDC. Further we have two RJ45 connectors. One is for connecting the board to standard Ethernet. The second one serves for multiply purposes. These are in particular:
Next thing on the board is a standard micro SD card holder. The firmware supports any SD card (including HC) that is formatted with a FAT file system. Further the UBI offers the opportunity to plug in a RN-XV WLAN shield on the two connectors on top of the SD-slot (see scheme above). These RN-XV shields are pretty smart guys for a moderate amount of money. The communication between the shield and the UIBs micro controller is realized via UART. Last not least there is 6-pin header on the board with a separate UART channel for plugging in wether a standard USB-to-Serial-Converter (e.g.. the Arduino's USB2Serial) or a BlueTooth module (e.g. one like this). For upgrading / modifying the UIBs firmware there is a6-pin ISP header in the center of the board.
The actual operation mode of a board and all corresponding settings for the particular mode are configurable via a simple JAVA tool (see text below) that runs on any operating system. All configurations are stored on the boards EEPROM.
The countless combinations of functionality that are possible with this board can be categorized into 4 major groups. Each of it can work with certain kind of inputs / outputs and options. These are explained in particular in the following sections.
This mode was one of the main reasons we designed this board. We wanted to have the opportunity to distribute data via network without being restricted to the serial output capabilities of a PCs serial interface. By distributing data parallel via a network the principle size of a matrix is unlimited. In Live Data mode the UIB receives Data from a PC vie Ethernet, WLAN or serial. Supported Protokolls are ArtNet, TPM2.Net, TPM2.Serial and DMX. The data receive is converted and transmitter to a matrix odd an arrangements of LED stripe(s) in one of the Formats: Glediator Protocol (used by our true color matrix driver boards), TPM2.Serial, WS2801 (SPI), WS2812 (Bitbang) or DMX. The figure below shows an example of steering a big matrix (64x32) by using 4 UIBs and 16 true color matrix driver boards.
To see what matrix sizes are possible with our boards you probably should have a look to this youtube clip. That's the matrix of a user who uses 18 UIBs together with 36 true color matrix driver boards. That's a true video wall, is't it?
In this mode the micro controller computes matrix effects on it's own without being connected to a PC. The way the effects are calculated is the same like in the PC's Glediator software. For the moment not all of effects of the PC version are included yet but many will follow in the future. This mode can operate in a random manner or receive it's parameters from the PC via LAN or WLAN from the UIB configuration tool (see text below). This mode is made for those who what to have their matrix being a decent / casual background element in a living room or els were without having a PC standing around.
In SD card mode files from an inserted SD card are played in random manner or defined by a remote connection (LAN or WLAN) from the UIB configuration tool (see text below). The files are generated by the file recorder module of the Glediator software. But, it is not really necessary to remove the SD card from the UIB for adding new files to it! The Glediator's recorder module allows for a direct conniption to the UIB via network for a direct file transfer! Thus the UIB can be physical placed to locations that are nor easily accessible. The figure below shows the Glediators Recorder module and the corresponding front panel elements to access SD file transfer to an UIB.
This mode was especially designed for users who are using our Glediator software on-stage. On-stage you do not have time to adjust or build a scene with all it's possibilities. You just what to switch between predefined scenes and/or change some basic parameters like speed, strobe, etc. Therefore you usually what to use an existing DMX controller. And with the UIB we now realized the bridge in between. It received Data form the DMX controller, it generates an UDP (network) package and transmits it to the PC running Glediator on it. That's it. But hey, why to use a PC anyway? Why not put some scenes onto the UIB's SD-card and select the right one by your DMX controller? Here we go ... (see scheme below).
As mentioned above for the configuration of the UIB we made a special configuration tool written in JAVA. On the fist page of this software you can establish a connection to the UIB. Just put in the UIB's IP address and hit the "Connect" button. When the device is found all the current adjustments are downloaded an the control elements on the following pages are adjusted accordingly. With the button "Store all parameter in EEPROM" you can (have a guess) store the current UBI's configuration in EEPROM.
The next page of the Configuration tool should be self-explaining. It serves for adjusting IP and MAC address of the device. Note that after transmitting new value to the UIB it restarts by its own and you have to manually reconnect (to the new IP address) on the first page!
The next page is dedicated to the main mode of the UIB. You can choose between the modes described above. For each mode you can select and input and an output method. Those fields that are disabled or greyed out whether make no sense in the particular mode or are not yet implemented in the current version of the UBI's firmware.
On the next page you can adjust the parameter of the different modes. Not all are necessary in all modes. Witch ones are important or not depend on the particular mode wind input/output configuration made before. Again, those fields that are disabled or greyed out whether make no sense in the particular mode or are not yet implemented in the current version of the UBI's firmware.
The "patch" page of the configuration tool gives you opportunity to adjust the particular physical arrangement of your lights. The patching is done similar like in the Glediator software.
Within the "SD Player" section you can perform adjustment dedicated to the SD-player-mode. You can selected between random mode and playing a fixed slot (file) in an endless loop.
In the last page of the software you can configure the Glediator Light mode of the UIB. You chan choose between random mode and a particular animation. In the latter case you can select certain parameters like the color palette, the speed and shape, etc.
As all of our projects we offer schematics, board layout and firmware Open Source for download in our download section. At this point we want to ask you for your contribution to expand / improve the firme ware. If you make changes to the firmware and adapt it to your desires just feel free to send us your code that we can out it into upcoming version(s) of the firmware. This especially counts for new animations for the Glediator Light mode.
In the download section you will find 5 downloads correlated to tis project:
If you want to get one of these boards you can purchase it in the web shop of agile-hardware. It comes pre-assembled with all SMD parts soldered. The remaining through-hole-parts will be delivered together with the PCB.
In summary we can state that we reached our own goals and designed a powerful device with a huge variety of possibilities. It was the hell of a job and it took us in sum three prototypes and endless programming hours but we learned so much making all this worth to be done.
Not every possible mode is yet included in the firmware but you can be aware that we will continuously work on it and several updates will follow.