Author Archives: DP

Full Arduino code for poultry egg incubator with humidity sensor

via Dangerous Prototypes

A DIY Arduino-based poultry egg incubator with humidity sensor @ Neil writes:

This device makes use of an always on motor which turns the eggs six full turns every 24 hours. Many of our other incubators have motors which have to be set up to run for a certain length of time a certain number of times per day, but the code for these is either specific to a particular motor or far more complicated (but of course more flexible) if the end-user of the incubator is to set these timings.
This device makes use of a DS18b20 digital temperature sensor, a 1602 LCD display module, a DHT11 humidity sensor, and is based around an Arduino Pro Mini, together with some relays, resistors, buttons, terminals, and other components available everywhere – easily salvaged from old and broken electronics even.

See project info and the full source code on REUK blog.

Raspberry Pi Controlled DC Load

via Dangerous Prototypes

Dr. Scott M. Baker has published a new build:

In this video I build a DC Load that’s controlled by a raspberry pi. I’ve built dc loads before, but this time I decided to up the goal to supporting 100w (it actually handled 200w) using three mosfets instead of one. I drive it with a DAC and read back the actual state using an ADC. The CPU board is a raspberry pi, and I have a VFD, encoder, and some buttons for control. It also has a web UI.

Project info at

Check out the video after the break.

Building a better bit-bang UART – picoUART

via Dangerous Prototypes

Ralph Doncaster writes, ” The screen shot above is from picoUART running on an ATtiny13, at a baud rate of 230.4kbps. The new UART has several improvements over my old code. To understand the improvements, it helps to understand how an asynchronous serial TTL UART works first. Most embedded systems use 81N communication, which means 8 data bits, 1 stop bit, and no parity. Each frame begins with a low start bit, so the total frame is 1 start bit + 8 data bits + 1 stop bit for a total of 10 bits. Frames can be sent back-to-back with no idle time between them. The data is sent at a fixed baud rate, and when either the receiver or transmitter varies from the chosen baud rate, errors can occur.

See the full post on Nerd Ralph blog.

App note: Low ESR tantalum capacitors make a difference in circuit designs

via Dangerous Prototypes

App note from Vishay about how ESR in tatalum capacitors affect circuit performance. Link here (PDF)

When choosing a capacitor for any application, there are a few key characteristics that must be understood in order to analyze its suitability for the circuit. In a simple capacitor equivalent circuit model, there are three key characteristics that affect circuit performance: capacitance, equivalent series resistance (ESR), and inductance. The magnitude of these elements and how they change over temperature, frequency, and applied voltage are different for each capacitor technology.

App note: Enhancing system security with Macronix(TM) flash

via Dangerous Prototypes

Technical note from Macronix about built-in and hardware security strategies on their flash memories. Link here (PDF)

Attacks on a system typically alter or copy the content of the Flash image for three primary reasons, which are to:

  • operate the system in an unauthorized manner with the purpose of committing fraud against the user or service provider.
  • disrupt the functionality of many systems through a denial of service.
  • reverse-engineer the system in order to clone its data/code or to exploit its security weaknesses.

To achieve the above goals, both hardware and software skills are needed. The attack may come from direct tampering of a single system or from software spread through viruses in connected devices. The systems that more frequently have to deal with security are those connected to payment/billing services such as Set-Top Box, mobile devices (such as smart phones) and metering devices.