ControLeo is based on the Arduino Leonardo. It is a quad relay controller enclosed in a professional box.
Arduino is a fantastic platform, very easy to program and with excellent hardware support. If you don't need to interact with the finished project, you can buy an off-the-shelf box and shove the mess of wires and boards into it. But what if you need to interact with your project?
We wanted to build our own reflow oven. The oven would be used about once every 2 weeks so we could prototype the next board. We wanted a LCD screen, buttons and indicator LEDs to show which of the oven elements were on at any given time. But most importantly, we wanted a robust, good looking box for this project that covered all the exposed wiring and connections.
We love the flexibility of Arduino, and take that to heart. We made ControLeo as generic as possible so that it could be used for a variety of projects. We think it is awesome as a reflow/pottery oven controller, but it can also be used to control sprinkler systems, lights, motors and more. We're looking forward to hearing about the things you plan to use ControLeo for!
We took the Arduino Leonardo as a starting point for this project, and added:
- 4 relay outputs with red indicator LEDs
- LCD display (2-line x 16-character)
- 2 switches
- 3.3V regulator (optional)
- MAX31855 for reading temperatures (optional)
- I2C GPIO chip to free up digital I/O on Leonardo
- A solid, custom-fit ABS plastic case
The result is beautiful programmable controller you can use for your projects.
There were three main thoughts that drove us as we designed and prototyped ControLeo.
We wanted to put as much of our design and software into the public domain. To that end we have already posted our schematic and source code to GitHub.
Our driving desire was to make ControLeo as flexible as possible to accommodate a wide a range of projects. We freed up digital pins by using a secondary chip to drive the LCD display and then we exposed all unused digital and analog pins in an easy-to-use header.
We wanted ControLeo to last a long time - even in inexperienced hands - so we did things like up-rate connectors and add reverse polarity protection.
Front of ControLeo
Back of ControLeo
Our schematic for ControLeo is in the public domain, and has already been posted to GitHub.
The software for ControLeo consists of a single Arduino library that controls all of ControLeo's functions. We've also included 14 sample programs to help you get up and running quickly. We've already posted all our software to GitHub too. You can start writing your program today!
There is a lot of sample code for ControLeo
The source code has been released under the WTFPL license, which quite literally means "You just DO WHAT THE F!#@ YOU WANT TO". We've had fun working on the hardware and software and would like to see ControLeo used without restrictions.
ControLeo provides both 5V and 3.3V supplies to power additional components. There are 7 pins available for digital I/O (4 with PWM) and 5 analog I/O pins. The I2C bus pins (SDA, SCL) are also readily available. These are conveniently brought out to headers on the side of the board.
ControLeo uses the standard Arduino environment. We've provided a library (https://github.com/engineertype/ControLeo
) that should be installed into your Arduino environment using the instructions found here: http://arduino.cc/en/Guide/Libraries
. The single ControLeo library gives you access to all of ControLeo's functionality. Installing the library also installs all the sample code we've written for it.
Program ControLeo using the standard Arduino environment
In Arduino, select the board as "Arduino Leonardo". Your sketches can then be sent to ControLeo using its micro-USB port.
ControLeo uses a quality off-the-shelf flame-retardant ABS plastic enclosure with a textured finish. The holes are CNC machined to perfectly fit ControLeo. The result is a high quality, tight fitting case that looks very good. We are thrilled with this enclosure. Only the lid has holes; you'll need to make a hole to route your wires through the case.
The enclosures are made in Ohio, USA. They have UL94-5VA flame rating and the dimensions are 4.55 x 3.29 x 1.25 in. (115.57 x 83.57 x 31.75 mm).
- ATmega32u4 microcontroller with Arduino Leonardo boot loader - 32Kb Flash memory, 2.5Kb SRAM and 1Kb EEPROM
- LCD display - 2 lines x 16 characters. The backlight is controlled programmatically.
- 4 relay outputs - relays are connected using the screw terminals or the 6-pin relay header(4 outputs, +5V, GND). The maximum current per output is 220mA. The outputs support direct connections to 5V mechanical relays or solid-state relays (SSRs). The 6-pin header enables easy connection to a 4-relay module.
- Buzzer - 90db at 10cm, 3.6kHz
- 2 momentary switches
- ABS plastic case - custom fit, flame-retardant (UL94-5VA)
- MAX31855 thermocouple - capable of reading temperatures from -200°C to 1350°C (optional)
- Real-time clock - using the DS1307 (optional)
- Input voltage: 5V (USB) or 7-15V DC (screw terminal) - When powered using USB, a total of 500mA is available at 5V and 3.3V. The microcontroller and LCD screen consume around 40mA. Mechanical relays typically consume 50mA each, and SSR's around 5mA each. When powered using a 7-15V supply, a total of 1A is available. Only boards that have the MAX31855 thermocouple IC will have 3.3V regulator populated.