Armageddon421's Hackingblog

Tag: shackspace

LED panels spice up club NightFly!

by on May.28, 2014, under LED Panels, Projects

A while ago a friend of mine who is a passionate specialist for event technology made this awesome bargain buy. He found some used LED panels from the Stone Age on ebay, each armed with 25 (5×5) red, green and blue LEDs covered under ping-pong ball like plastic hemispheres. His dream was to mount 24 of them to the ceiling of the club he is currently re-rigging, which is club NightFly in Waiblingen, near Stuttgart.

The problem with those panels was, that the controller boxes they came with could only handle 16 panels each and there is no way to synchronize multiple controllers. Also, the only input device is an infrared remote, which is not very comfortable to use in a club environment.

So he asked me if I could find a cheap and simple way to control all of these panels (24) and make it easy for the DJs to change the mood of the location. Since the panels just consist of LEDs and resistors, the project consisted of two parts: Driving the LEDs and providing a simple to use interface for the DJs. Oh and he wanted it all to be done in three weeks. Sure!

The first logical step was to design a small board to control and drive the panels. Since there would be a considerable distance between each panel, I chose to make it one board per panel. For ease of use and reusability, I decided to use DMX as communication protocol. This just requires a RS485 driver IC – I used the SN75176 – connected to the UART RX pin of the ATtiny2313, which I chose as a brain for the thing. The panels work with 5V, so just throw in some mosfets and off you go to the PCB manufacturer, right? What could possibly go wrong? Below is the design I actually submitted to the manufacturer after one night of design.


Unfortunately, the silk screen did not turn out quite the way I wanted it, but who cares…

nf board

As you can see, I threw in the pads for an optional 7805 5V voltage regulator because the common anode design would allow me to use the same circuitry for LED strips or similar things that work with 12V, too. Did I say common anode? Well, how do the panels actually work? Of course, they are common cathode. Bummer. Not such a big problem, though. Just switch out the n-channel mosfets with p-channel ones, right? Yeah. That, and 2 hours of cutting through ground planes and rewiring.

nf fix

First testing shows that it works (kinda) and after 8 more hours of soldering tiny SMD parts, 24 of the boards were finished.

Turns out that the panel being supplied from the same 5V supply as the uC circuitry causes huge spikes on the power supply for the ATtiny, on which it reacts by resetting all the time. The solution was considerably easy: Add a huge capacitor.

Look at the beautiful boards!

nf boards assembled

Onwards, to the software! Just add some DMX library and make it use three channels for red, green and blue and bob’s your uncle, right? Not with me! In the end, I used every single byte of the 2kb flash storage the atTiny2313 has to offer. There is a fourth channel that is used to control effects like rainbow fading, strobe and random color. Those effects can also be used in a standalone mode that is activated by flipping the unused 10th DIP switch (only 9 are needed for the DMX512-address). Instead of DMX-address, the other switches can then be used to setup the standalone effects. In DMX mode, the effects sync together nicely between two panels, because a mode change results in an internal reset of time and random variables. The DMX adress is used as a random seed in DMX mode because every panel gets its own DMX address anyways.

It’s time to wire up some of the panels to see how it works.

nf panels 4 test

That’s all good and fine, but now I need a nice interface for the DJs to play with. Thanks to the laser cutter at shackspace, this is what I got an hour later:

nf frontpanel

After hours of perfboarding, soldering and wiring, I was done with the circuitry that allowed me to use the LEDs, buttons and potentiometers from a teensy3, a 96MHz 32bit arm chip that can easily be programmed from within the well known arduino IDE. Because of the low current driving capabilities of the teensy, I had to use some strange shift registers that were lying around at shackspace. For driving the DMX lines I used the same transceiver IC (SN75176) that I used for the receiving end. I might swap that one out for a much more expensive MAX483/5/7 chip because they include filtering for the appropriate signal frequency, which greatly increases signal quality. This is important in EMV critical environments like “directly next to a ginormous subwoofer”.

The software is actually not overly complicated. It consists of some event management (button presses etc.) and some time management for the beats, controllable by the “speed” potentiometer. The animations are basically just formulas with lots of modulus on time and beat values. Of course everything is done using fixed-point arithmetic because the teensy3 does not have an integrated floating point unit (FPU).

I implemented a few animation patterns and did a quick test run at home… errrr at shackspace. Somehow someone had some fog machine with him, so we fired that one up, too. It’s worth watching in HD for best epilleptic experience!

Two nights later and with a little help of the fog machine owner, the 24 panels were finally mounted on the ceiling in the club NightFly and I could start adjusting the animations for the bigger grid, as well as adding new ones. I don’t have a video of the latest version at hand, but this should show how impressive the panels appear in that club.

There are more photos over at Imgur!

All that in three weeks.

In case anyone wonders: There are leftover rgb-dmx boards.


5 Comments :, , , , , , , , , , , more...

qwood – Wooden quadcopter frame

by on May.26, 2014, under Multicopter, Projects

A while ago I built a small quadcopter testbed by sawing a cross out of a laminate floor tile. This works, but is ugly. Normally, for a “test”, this doesn’t matter. However, in the scope of my student project, I got my hands on an Autoquad. Since I should include pictures of my testbed in the documantation for the project, I decided that I needed a somewhat nice looking frame for the thing.

I bothered my head about a nice design for a wooden frame. I took about two weeks until I finally got around to actually start designing it. I also felt like I should give solidworks a try. This was in an early stage:

qwood - early stage

This weekend, I was at shackspace, finalizing the design and using the laser cutter to cut the 3mm birch wood I got from Balsabar. Apparently, you can tell them what quality grade of wood you want in the comment section before placing the order. I did not know that, but the wood I received had only a few knots, which is okay. Especially if you compare it to wood from the hardware store.

I found the nice rendering feature of solidworks, so here is a rendering of the final design:

qwood - rendering

I intentionally left out the connection piece on the bottom of the landing gear (you can see the slot for it) because I was still unsure of how to go about it and finally wanted to see some results. There will definitely be something to make the landing gear sturdier.

I had huge problems lasering it with a snug fit. The kerf compensation feature, or “sew compensation” as the cheap china software  “LaserWorksV5″ calls it, somehow always crashed the software. Turns out in that version they broke it for circles. Yeah. Right. You couldn’t even laser a simple kerf-compensated circle. Unfortunately, that took me 2 hours to figure out. It worked when I used an older version of the laser software I had still lying around on my disk. It was also somewhere around this time that I came up with the name “qwood”.

Even with the kerf compensation working (or did it?), I could not get the precise fit I was hoping for. I had to sand the intelocking tabs and the corresponding holes to finally make it fit. Anyways, have a look at the result!

qwood - reult

I have some more pictures over at Imgur!

Also, have a look at how the parts are connected. There is no glue! Just nylon screws and nuts.

qwood - screws

I guess this thing is far from perfect and still untested at this point. Although it weighs only 167g, it feels pretty stable. My only concerns are the landing gears and torsion stability.

Next up: Electronics!

Drop a comment if you like it or have questions, ideas and suggestions!


4 Comments :, , , , , , , , more...

So I finally built a RepRap 3D-Printer. Or did I?

by on Jan.21, 2012, under Projects, RepRap

Well, I did. Here’s a timelapse of the 24 hour build process. I had some helping hands at the beginning.

24h building – 3h sleep – 1h eating/toilet/etc. = ~20h

However, I encountered some problems.

  • Drilling the holes in the aluminium plates requires a drill press or some other way to precisely drill the holes. I solved the problem by not tightening the screws very much.
  • Because the x-axis motor and idler parts were not standard, the smooth rods had to be the right lenth (or a bit shorter). I’m trimming the rods in the video at about 3AM (time in the bottom left corner). The hardened steel is quite hard to saw manually.
  • The neighbors don’t like the sound of sawing a smooth rod at 3AM, sunday.
  • There were no cables nor the right plugs shipped with the electronics. I used pc-speaker (that beeping thing inside the pc) plugs and cdrom-to-soundcard wire plugs and soldered the cables to them.
Well, does it work? No, not yet :(
I tried using ABS plastic, which normally is best extruded at about 210 to 230 °C. My ABS seemed to require even higher temperatures, about 250°C. The heat dissipation at the hot end led to my x-carriage, which is made of printed PLA plastic, to start bending under the heat. So I tried isolating the hot end. It worked, however after a short time the thermistor in the hot end bursted.
Now I’m waiting for my order, which contains some new thermistors and 2,2kg of PLA plastic filament. I’ll try getting it to work with PLA, which is extruded at about 170°C, before messing with ABS again.
I held a thundertalk at shackspace explaining my progress so far. The recording will be online soon, it’s in german though.

3 Comments :, , , , , , , , , , more...

So I am finally building a RepRap Prusa Mendel

by on Jan.13, 2012, under Projects, RepRap

After I saw those RepRap things at shackspace, I simply could not resist anymore. I had to get one. So I ordered everything needed for a RepRap Prusa Mendel except fot the plastic parts from Cubic Print and the German RepRap Foundation Shop. The delivery from GRRF arrived this morning. As you can see in the picture, it contained the “hot end”, 2.2kg of black ABS filament and the kapton tape.

I was so excited that I wanted to do something with that stuff. So I started assembling the hot end. Pushing the resistor, wich is used as a heater, in the clamp block turned out to be more difficult than expected. Like their (GRRF) manual stated, I had to sand the resistor quite a bit so it could fit in. I was very surprised when I read that you actually don’t need any glue to hold the resistor and the thermistor in place. They wrote that it expands when heated up and then holds perfectly, also making enough contact to transport the heat. I think I can still apply high-temperature-glue at any time later if I really have to.

If you’re new to the RepRap project and want me to explain things more detailed, just leave me a comment and I’ll try to be more verbose on what I did and how.

I am expecting the second delivery to arrive tomorrow, let’s see how far I get with acquiring the plastic parts until then.

Oh and I guess there will be a timelapse of the whole assembly ;)

Leave a Comment :, , , , , , , , , more...

Repaired the Shackspace Telnet Twitterclient today

by on Jan.15, 2011, under quickhack

Some time ago, back in the times when twitter made oauth the only valid authentication method, my twitter plugin for the shackspace telnet interface “Noise” broke. Today I spent hours figuring out how to complete that damn oauth authentication process just to realize that the python and other library versions on the server were much too old. After another few hours of trying to update those libraries I finally got it to work. Have a look at the beautiful output of our colorful telnet interface!

"Noise" Twitter output

The twtter module just outputs the last tweets on the timeline of the @shackspam account. Also, if /twitter <text> ist entered, it tweets the given text to the same account. The script can be easily adapted to be used as a normal shell script because that’s what it actually is. However, I would recommend just using “ttytter”, which is a nearly full-featured command line twitter client.

Leave a Comment :, , , , , more...