After a lot of work by many talented people we can now continuous deployments during business outage with no customer impact. But since this is fairly new to us we still have a few manual controls in place until we flesh processes out and build up our automated test suites.
To create a little bit of spectacle for our first deployments to production I was commissioned to build a launch system. The box and a bunch of buttons where given to me with the request to make it awesome and make it work. The idea of the business people for multiple buttons was that we could use it to deploy different applications once they would also have deployment pipelines. But how do I integrate with all these systems, controlled by restricted credentials? At this stage we don't want just anyone to kick of a deployment. Simply, we don't integrate with these systems and just use smoke and mirrors.
All the big push buttons are wired in parallel. Push any of them and a signal will go to the micro-controller which emulates a USB computer mouse and send a mouse click event. So on the big day a user will log into the deployment system, get everything ready and hover the mouse pointer over the deployment button on the UI. Than someone can use the "launch control system" to start the deployment. The toggle switches control the LED in the dome buttons. Flick the switch and the corresponding dome button will have a breathing light effect,
Because I wasn't sure of the emulated mouse would work on a company computer I added a buzzer to the build. The idea being that someone could press the button on the launch control system and someone at a computer would get an audible signal to start a deployment.
I haven't written anything in a long time. Because of changes starting last year I have been away from my tools almost every weekend. Hopefully next year I get the chance to do what I like doing best. Making stuff.
One of the most fun projects was building the photo booth for the Christmas party for work over two years ago. For the party last year I decided to tweak it a little bit by adding a button to turn off/on the flash. But during the party I had to turn the flash on several times because people pressed the button and turned the flash off and other people weren't aware you could turn it back on.
Another tweak was required for my flash diffusser. The flash is really bright so originally I cut a diffusser out of some A4 paper. For normal lightning conditions this works fine and you get the cool effect of a camera flash without ending up squinting in the photos. But the Christmas parties tended to be at a location with very little lighting during the party. So even with the automatic ISO detection a lot of photos looked underexposed. After some hunting around in my flat I found some thin mat plastic that would do the trick. It lets through a lot more light while still diffusing a little.
General build instructions
For the finished photo booth and some build instructions visit my photo booth project page.
It has been a long time since my last post. I had so much many upgrades for my WISP and network that I wanted to do during the Christmas holiday and as usual nothing went as planned. But this is not about that.
This post is about my trial with UNMS. UNMS is Ubiquiti new device management software for WISP. It seems like it is meant to replace AirControl 2 and at some stage integrate with UniFi. Currently the software is in beta with many features missing, According to the roadmap UNMS should be feature complete before 2019. But you can download and install the beta version and have a play around. In my case I acquired an Ubiquiti airCube AC which integrates with UNMS.
Note: AWS might charge you for using their services. Example t2.micro instance is free but t2.small cost me $0.0232 per On Demand Linux Instance Hour.
I followed these instructions: UNMS installation. I started of by creating a free AWS account. Before creating your instance, check if you are in the right region (top right next to you account name). I created an EC2 - t2.micro instance from a template which I then upgraded to a t2.small instance. Associate an IP address with my new instance and update the security groups to unblock port 443 (default port used by UNMS, can be changed).
Navigating to the instance elastic IP-address should bring up the UNMS welcome screen. Once you completed the UNMS basic setup you can set up sites and attempt to connect client devices. I don't want to go into too much detail. The forums are a great resource if you get stuck.
It was an interesting exercise to set this up and learn some basics around AWS. I don't know what I will do in the feature. Probably just install and run it on a home build server instead.
Update: I run UNMS on a local server inside a Virtual Machine. I don't need to run it continuously because I still use AirControl 2 for ease of use with my small WISP. Only when you add newer ubiquiti devices that are not supported by AirControl 2 will you require UNMS.
As you might have noticed I thoroughly enjoy building embedded projects. An Arduino starter kit got me interested in software development and that let me to a bachelors in information technology and my career as a software developer,
Every time when my project has past the initial breadboard prototype phase and I want to create a permanent circuit i hit the same hurdle. I use plenty of IO pins and a lot of the inputs and outputs require either a input voltage or reference to ground or both, Most boards only provide one or two, maybe three of these. So I designed a simple breakout board to solve this issue.
In the photo above the bottom row is where you would connect it to your microprocessor. The next two rows are connected to these pins and provides the ability to add pull/down resistors. If you want to use servo connectors then the next row should be bridged to your VCC pin so you create a VCC rail and the top rail should be bridged to GND to create a reference to ground rail. I attached some photos of a recent project where I used two boards to breakout all the pins for an Arduino pro micro. I also upgraded my raspberry Pi photobooth with one of these breakout boards.
I am very happy with the result. I used EAGLE to design the PBS's and https://oshpark.com/ to manufacture them. oshpark provides a EAGLE plugin that will help generate the files for manufacturing to their liking. And that's a very big help for an amateur digital PCB design like me.
Taking your prototype to complete project has never been so easy. See attached files if you want to make your own.
A while ago I ordered some LED flickering candles. This particular set comes with build in rechargeable batteries and a charging tray. It comes with a European style 7.5v power supply which is no good to me without a travel adapter. Instead I wanted something simple. No adapters, or buying a new power supply. Opening the charging tray revealed a simple circuit containing a 5V regulator. That's convenient. This makes it well suited for charging via an USB cable.
While checking the circuit I discovered the current limiting resistor for the LED to be very large. 1K ohm, while 210 ohm would have been enough in it's original configuration. I think it was done to reduce the brightness of the LED. With my conversion to 5V I swapped out the resistor for a 100 ohm resistor, which results in 20mAh going through the LED. It's now nice and bright.
Because the batteries don't have any markings on them and there is no overcharge protection anywhere It is not recommended to leave them on charge for a very long time. At least I have now a convenient charging solution.
George Timmermans, Research Toolmaker, Software Engineer and Tinkerer