Web-enabled coffee maker over-complicates your break time

Some think that grinding the beans and filling the coffee maker is part of the coffee-drinking ritual, but [Jamie] isn’t one of them. Instead, he’s been working to make this coffeemaker a web-enabled device. He built it as part of a class project, and has implemented most of what you need to make a cup of Joe automatically.

You can see a small pump attached to the back of the coffee maker. It sucks water from a pitcher (slightly visible to the left of the coffee maker) to fill the reservoir. He experimented with a couple of different water level sensing solutions. His most recent is a PCB with several traces of different length. As those traces are covered by water, a voltage can be read via ADC to establish water level.

He’s using an Arduino and Ethernet shield to add connectivity for the device. The problem is that there aren’t enough ADC pins left on the Arduino to read the water level sensor. Because of this, he added a self-build shield that uses a PIC to do the ADC measurements and push digital data across to the Arduino. A bit complicated, and it doesn’t load the grounds automatically (yet?). But that’s not to say we don’t appreciate complicated coffee hacks.

ATtiny Hacks: SerialCouple – A standalone thermocouple ADC board with serial out

ATtiny Hacks Theme Banner

serialcouple_thermocouple_adc_board

Since we are in the midst of featuring a wide assortment of ATtiny hacks, [Kenneth] wrote in to share a project he has been developing over the last few months, the SerialCouple.

Most all development platforms have the ability to function as an analog to digital converter, but you don’t always need a full-featured board when all you require is serial output for your computer. With his SerialCouple board, [Kenneth] is trying to take some complexity out of the process by building a standalone thermocouple ADC board. The SerialCouple is designed to take analog readings from a thermocouple, converting them to digital values that can be sent to any device over a serial connection. The grunt work is done by a Maxim MAX31855 chip, which converts the thermocouple’s analog data to digital temperature readings. The digital representation of the temperature is then retrieved by the on-board ATtiny2313, which sends the data out the serial port.

If a standalone thermocouple ADC board is something you’ve been looking for, be sure to swing by his site to take a look at his code and schematics.

Continue reading to see a short video demo that explains how the SerialCouple works.

[Read more...]

chipKIT Uno32: first impressions and benchmarks

Following Maker Faire, we’ve had a few days to poke around with Digilent’s 32-bit Arduino-compatible chipKIT boards and compiler. We have some initial performance figures to report, along with impressions of the hardware and software.

[Read more...]

Analog to Digital converter build

analogue_digital_converter

[Daniel Garcia] sent us a quick tutorial he put together demonstrating how to use an ATmega168 to perform analog to digital conversions. This timely tutorial would make for a nice complimentary project for those of you who decided to build your own digital to analog converter after reading our post from a few days ago.

The ATmega168 has six pins that are typically used for digital I/O, but they can be used for analog input as well. In his example, he uses a trimpot as an analog input device, connecting it to one of the aforementioned analog pins. Its value is returned as a 16-bit number which is then displayed on the attached LCD. The LCD display and the breadboard layout used in this project are covered in his previous writeups, so be sure to give those a read through before working through this tutorial.

Using analog voltage references with Arduino

Little Bird Electronics posted an article about using an analog voltage reference with Arduino. This is a tool available when using an analog-to-digital converter. By setting up either an internal or external AREF, you can better use the ADC considering its resolution limitations. For instance, if you are measuring a signal that you know will always be below 2V, an external circuit, such as a voltage divider or an adjustable regulator, can give you a reference voltage just above that upper limit; say 2.5V. This way the 1024 divisions of resolution will be spread across your signal’s range, rather than just the lower half of the ADC readings.

Analog references are common to microcontrollers that have ADCs. Even if you’re not working with an Arduino, read through the article and use what you learn with your uC of choice.

Arduino + Java + Joystick

Interfacing your own hardware with a Java app couldn’t be easier than this example. [Pn] created this proof-of-concept using an Arduino, an analog joystick from a gaming controller, and a few lines of Java code. The Arduino reads an ADC value from the joystick’s x-axis and transmits it over the serial connection ten times a second. The Java program triggers on every serial event, parsing the data based on the @ symbol that the Arduino sends as a start and end condition.

We like this kind of example because there’s nothing extra involved. It lets you take the concept and run with it in any project imaginable. Be it a more complicated Joystick, or simple sensors that you’d like to interface with.

Multiple buttons and a pot on one pin

[Kevin Fodor] shares his method of reading multiple inputs on one pin of a microcontroller. The analog to digital convert function of the microcontroller is used to read a potentiometer but with some careful calculations a resistor network can be built into the circuit that provides a unique voltage value for each button pushed. The only real drawback is that the system cannot read multiple button presses at the same time. Theoretically up to ten momentary push buttons can be used but [Kevin] estimates that only four plus the potentiometer will work reliably.

[Thanks Charper]