Temperature Data Logger Logs Temperature Over Time

Temperature Data Logger[Husham] not only likes his electronics projects but clearly enjoys documenting them as well. He’s written a nice Instructable on a Temperature Data Logger that he has built and thankfully makes his code available for others to use. The end product is cleanly designed and made for weather-proof outdoor applications.

As you may expect, the brains behind this operation is an Arduino. It is coupled with a Real Time Clock to maintain accurate timing as well as an SD Card Module which is used to store the data collected. In this case, the temperature is read by a LM35 temperature sensor and that value, along with the time, is recorded to a .csv file on the SD card in one minute intervals.

There is also an LCD screen that displays the date, time and current temperature. To save battery life the LCD backlight is normally off. It can be turned on using a magnet that interacts with a hall effect sensor on the top of the case. This worked so well that [Husham] installed a second hall effect sensor on the side of the case that resets the Arduino. Speaking of the case, it is a weather proof PVC electrical box with a conduit adapter installed on the bottom side. A battery pack made up of two used laptop cells housed in a piece of conduit supplies 7.2 volts to the Arduino and other components. Unfortunately, there’s no word on how long the battery pack lasts. Once the data is logged, the SD card can be removed and the .csv file opened in spreadsheet software to make a graph showing temperature change over time.

Bluetooth Enabled Fuel Consumption Monitor

[Malebuffy] bought himself a used boat last year. Fuel isn’t exactly cheap where he lives, so he wanted a way to monitor his fuel consumption. He originally looked into purchasing a Flowscan off the shelf, but they were just too expensive. In the interest of saving money, [Malebuffy] decided to build his own version of the product instead.

To begin, [Malebuffy] knew he would need a way to display the fuel data once it was collected. His boat’s console didn’t have much room though, and cutting holes into his recently purchased boat didn’t sound like the best idea. He decided he could just use his smart phone to display the data instead. With that in mind, [Malebuffy] decided to use Bluetooth to transmit the data from the fuel sensors to his smart phone.

The system uses an older Arduino for the brain. The Arduino gets the fuel consumption readings from a Microstream OF05ZAT fuel flow sensor. The Arduino processes the data and then transmits it to a smart phone via a Bluetooth module. The whole circuit is powered from the boat battery using a DC adapter. The electronics are protected inside of a waterproof case.

[Malebuffy’s] custom Android apps are available for download from his website. He’s also made the Arduino code available in case any one wants to copy his design.

Binary Clock Would Make Doc Brown Proud

[Brett] was looking for a way to improve on an old binary clock project from 1996. His original clock used green LEDs to denote between a one or a zero. If the LED was lit up, that indicated a one. The problem was that the LEDs were too dim to be able to read them accurately from afar. He’s been wanting to improve on his project using seven segment displays, but until recently it has been cost prohibitive.

[Brett] wanted his new project to use 24 seven segment displays. Three rows of eight displays. To build something like this from basic components would require the ability to switch many different LEDs for each of the seven segment displays. [Brett] instead decided to make things easier by using seven segment display modules available from Tindie. These modules each contain eight displays and are controllable via a single serial line.

The clock’s brain is an ATmega328 running Arduino. The controller keeps accurate time using a DCF77 receiver module and a DCF77 Arduino library. The clock comes with three display modes. [Brett] didn’t want and physical buttons on his beautiful new clock, so he opted to use remote control instead. The Arduino is connected to a 433MHz receiver, which came paired with a small remote. Now [Brett] can change display modes using a remote control.

A secondary monochrome LCD display is used to display debugging information. It displays the time and date in a more easily readable format, as well as time sync information, signal quality, and other useful information. The whole thing is housed in a sleek black case, giving it a professional look.

Digital to Analog to Digital to Analog to Digital Conversion

[Andy] had the idea of turning a mixing desk into a MIDI controller. At first glance, this idea seems extremely practical – mixers are a great way to get a lot of dials and faders in a cheap, compact, and robust enclosure. Exactly how you turn a mixer into a MIDI device is what’s important. This build might not be the most efficient, but it does have the best name ever: digital to analog to digital to analog to digital conversion.

The process starts by generating a sine wave on an Arduino with some direct digital synthesis. A 480 Hz square wave is generated on an ATTiny85. Both of these signals are then fed into a 74LS08 AND gate. According to the schematic [Andy] posted, these signals are going into two different gates, with the other input of the gate pulled high. The output of the gate is then sent through a pair of resistors and combined to the ‘audio out’ signal. [Andy] says this is ‘spine-crawling’ for people who do this professionally. If anyone knows what this part of the circuit actually does, please leave a note in the comments.

The signal from the AND gates is then fed into the mixer and sent out to the analog input of another Arduino. This Arduino converts the audio coming out of the mixer to frequencies using a Fast Hartley Transform. With a binary representation of what’s happening inside the mixer, [Andy] has something that can be converted into MIDI.

[Andy] put up a demo of this circuit working. He’s connected the MIDI out to Abelton and can modify MIDI parameters using an audio mixer. Video of that below if you’re still trying to wrap your head around this one.

Continue reading “Digital to Analog to Digital to Analog to Digital Conversion”

Controlling Nokia Phones with Arduino

While [Ilias Giechaskiel] was waiting for his SIM900 shield to arrive, he decided to see what he could do with an old Nokia 6310i and an Arduino. He was researching how to send automated SMS text messages for a home security project, and found it was possible to send AT commands via the headphone jack of Motorola phones. But unfortunately Nokia did not support this, as they use a protocol known as FBus. With little information to go on, [Ilias] was able to break down the complicated protocol and take control with his Arduino.

With the connections in place, [Ilias] was able to communicate with the Nokia phone using a program called Gnokii — a utility written specifically for controlling the phone with a computer. Using the Arduino as an intermediary, he was eventually able tap into the FBus and send SMS messages.

Be sure to check out his blog as [Ilias] goes into great detail on how Nokia’s FBus protocol works, and provides all source code needed to replicate his hack. There is also a video demonstration at the end showing the hack in action.

What’s in a Name?

Take thirty seconds out of your day and try to make fun of the last name of the person who wrote this post. Go ahead, it’s okay. You probably won’t need more than ten seconds to come up with something that uses the same first, middle, and last letter. While nothing can be done to prevent last name-based harassment in the schoolyard, first names are another matter. [Ranthalion] recently dined with friends who are expecting twins and have yet to decide on names for them. It’s difficult enough to name one child, and we can imagine ourselves spending an entire day or two getting funny name pairs for twins out of our systems (Flora and Fauna, Scylla and Charybdis, &c). With the baby shower two weeks away, [Ranthalion] had to act fast in creating his Baby Namer.

It needed to be something he could make relatively cheaply with parts on hand. Although he made a prototype with an Arduino, he wasn’t about to just give one away. [Ranthalion]’s Baby Namer uses two arrays, one with awesome names like, well, Sharktooth Chompenstein, and one with regular names from census data such as Bob, Carol, Ted, and Alice. Things got a bit hairy with the volume of names he got from census data and he learned the value of PROGMEM for storing things.

On startup, it displays four names from the Awesome pile as a gag and then pulls from the Ho-Hum group. However, each time it pulls a regular name, there’s a 25% chance that part of an Awesome name will be included. Get thee to the gits and have a laugh at other names on the Awesome list.

Z80, CP/M, And FAT File Formats

[Gary Kildall] and CP/M are the great ‘also ran’ of the computing world; CP/M could run on thousands of different 1980s computers, and [Gary] saw a few million in revenue each year thanks to CP/M’s popularity. Microsoft, DOS, and circumstances have relegated [Kildall] and CP/M to a rather long footnote in the history of microcomputers, but that doesn’t mean CP/M is completely dead yet. [Marcelo] wrote a Z80 emulator running CP/M inside an Arduino Due, and he did it in such a way that it’s actually convenient and useful to use.

Instead of using CP/M disk images, [Marcelo]’s emulator emulates CP/M disk drives on top of a regular FAT file system. Drives are mapped to folders in the FAT file system, so a folder named ‘A’ will show up as the A: disk in CP/M. Drives up to P: are supported, the maximum number of drives available under CP/M. The BIOS resides in the root directory of the SD card, and so far Microsoft Basic, Turbo Pascal, UCD Micromumps, and Wordstar work just fine.

The Arduino project was built upon one of [Marcelo]’s earlier projects that put the CP/M emulator on Windows. The version for the Due works exactly how you think it would, with a serial connection and terminal emulator providing the IO, and the huge amount of processing power and RAM available on the Due doing all the heavy lifting.