Small preview on @iochili project article

I’m working on an article about my tweeting hydroponics chili plant project @iochili that has light, temperature, reservoir water level and grow tray mass sensors – powered by ESP8266.  A Raspberry Pi reads the sensor data over WiFi, analyzes it for various events such as watering or exceptionally hot day. If an event is detected, it will tweet a random-ish message regarding the event.

Currently the project has run for about a couple of weeks and there are some statistics available so I decided to release the statistics web page before the actual article.
@iochili statistics

Posted in Projects Tagged with: , ,

Zircon – a shoot ’em up blast from the past.

Zircon is: epic boss battles!There’s now a project page for my old shoot ’em up game Zircon with some retrospective commentary. Zircon is a neat little OpenGL shmup with lots of intense action and no plot. It was originally released in 2007 as freeware.
Zircon project page

Posted in Projects Tagged with: ,

ESP8266 MCP3002 Driver

In an upcoming ESP8266 project I need to able to read some analog sensors in the range of 0.0 – 3.3 V and since the ADC that comes with ESP8266 is limited to 0-1 V range, it’s not suitable for my purposes. To solve this problem I’m going to use Microchip Technology Inc. MCP3002 which is a low-cost (less than 2.50 euros a piece) dual channel 10-bit A/D converter with an SPI interface. Unfortunately the ESP8266 SDK doesn’t provide a driver for SPI communications but luckily David Ogilvy (MetalPhreak) has done excellent investigation work with the ESP8266 SPI features and even written an SPI driver for ESP8266.

My ESP8266 MCP3002 driver utilizes David’s great SPI driver for reading the A/D conversion results from the MCP3002. As I suspect that others may be facing the limitations of ESP8266 ADC, and MCP3002 is probably quite common solution for adding additional ADC channels, I figured that I’d share my ESP8266 MCP3002 driver source codes. This was also an excellent opportunity to create my first GitHub project. So here goes: ESP8266 MCP3002 Driver @ GitHub

Read more ›

Posted in Electronics, General Tagged with: , ,

Control Philips Hue with a wireless keyboard

Last year I acquired a Philips Hue smart lighting system for my bedroom, kitchen and living room – a total of 8 bulbs. Overall the setup is great but there’s one drawback: as the control of the lights relies on the smart phone application that needs to be paired with the system, occasional visitors can’t easily control the lights. The standard solution for “app-less” control would be the Hue Tap, but the Tap only has four buttons so I’d need at least three of them to provide sufficient control. I wanted to have a more extendable solution for controlling the lights so I purchased a wireless Microsoft All-in-One Media Keyboard, hooked it up on a Raspberry Pi and wrote a simple Python script to control Philips Hue system over the Hue API. The initial version covers only selecting different lighting scenes, but the future versions could utilize the rest of the keyboard for e.g. adjusting individual lights.

Video of the system in action:

Read more ›

Posted in General Tagged with: , ,