Put aside all of the projects that use an Arduino to blink a few LEDs or drive one servo motor. [IngGaro]’s latest project uses the full range of features available in this versatile microcontroller and has turned an Arduino Mega into a fully-functional home alarm system.
The alarm can read RFID cards for activation and control of the device. It communicates with the front panel via an I2C bus, and it can control the opening and closing of windows or blinds. There is also an integrated GSM antenna for communicating any emergencies over the cell network. The device also keeps track of temperature and humidity.
The entire system can be controlled via a web interface. The Arduino serves a web page that allows the user full control over the alarm. With all of that, it’s hard to think of any more functionality to get out of this tiny microcontroller, unless you wanted to add a frickin’ laser to REALLY trip up the burglars!
It seems as though [Nathan] has taken some serious inspiration from the Warthog. The iconic armored buggy from Halo video games has a turret mounted to the roof. Although [Nathan]’s buggy only shoots paintballs from its turret.
Mounting paintball markers (guns) to various objects such as vehicles, robots, or other machines isn’t quite as straightforward as it seems. Vibrations from anything can transfer through a clamping system and cause paintballs to break. This, of course, inhibits the functionality of the marker and is a messy cleanup to boot. Then there has to be a way to fire the paintballs, which is usually handled by soldering to the electrical connections in the marker. And the entire rig has to stand up to the normal jostling and sudden turns from the buggy.
[Nathan] has solved these problems first by creating a custom fast-change mount that allows any malfunctioning markers to be changed rapidly. The electronic firing mechanism is handled by an ATtiny microcontroller and there is a custom electrical connection that is automatically made when the marker is bolted to the mount.
The new system allows markers to be changed in about 30 seconds, much better than any other system. Maybe in the future [Nathan] can upgrade the buggy’s turret to accommodate a paintball minigun.
Lithium ion batteries are becoming more and more common these days, but some of the larger capacity batteries can still carry a pretty hefty price tag. After finding Acer’s motherboard schematics online and doing a little reverse-engineering, [Tiziano] has found a way to reuse batteries from his dead laptop, not only saving the batteries from the landfill but also cutting costs on future projects.
These types of batteries have been used for many things in the past, but what makes this project different is that [Tiziano] is able to monitor the status of the batteries and charge them using I2C with an Arduino and a separate power supply, freeing the batteries from the bonds of the now-useless laptop.
With this level of communication between the microcontroller and the battery pack, there is little chance of the batteries catching on fire when they’re used in another project. Since the Arduino can also monitor the current amount of charge in the batteries, there is also a reduced risk that they will be damaged from under- or over-charging.
This wasn’t just as simple as hooking up the positive and negative leads of a power supply to the battery. [Tiziano] also had to model the internal resistance of the motherboard that the battery expects to see, and get the supply voltage just right so the battery’s safety protocols wouldn’t kick in to prevent them from charging. After a few other hurdles were jumped, [Tiziano] now has a large capacity lithium ion battery at his disposal for any future projects.
Tektronix’s MSO2000 line of oscilloscopes are great tools, and with the addition of a few ‘application modules’, can do some pretty interesting tasks: decoding serial protocols, embedded protocols like I2C and SPI, and automotive protocols like CAN and LIN. While testing out his MSO2012B, [jm] really liked the (limited time) demo of the I2C decoder, but figured it wasn’t worth the $500 price the application module sells for. No matter, because it’s just some data on a cheap 24c08 EEPROM, and with a little bit of PCB design <<removed because of DMCA takedown>>
The application module Tektronix are selling is simply just a small EEPROM loaded up with an <<removed because of DMCA takedown>>. By writing this value to a $0.25 EEPROM, [jm] can enable two applications. The only problem was getting his scope to read the EEPROM: a problem easily solved with a custom board.
The board [jm] designed <<removed because of DMCA takedown>>, with the only additional components needed being an EEPROM, a set of contacts for reading a SIM card, and a little bit of plastic glued onto the back of the board for proper spacing.
UPDATE: Learn about the DMCA Takedown Notice that prompted this post to be altered: http://hackaday.com/2014/08/05/hardware-security-and-a-dmca-takedown-notice/
The Raspberry Pi Model B+ was just released, and now everyone who picks one of those up has a few more GPIO pins to play around with. For the millions of people with the two-year-old version of the Pi, we’re still stuck with the same old, same old: 17 GPIOs on the big header, and that’s about it as far as toggling pins goes.
The Broadcom SoC on the Pi has far more GPIO pins than are broken out on the large header, and a few of those go to the CSI camera interface. These GPIOs can be broken out with a few flat cables (Portuguese, Google Translatrix), giving you four more GPIOs, and this technique can also be used with the new, expanded Model B+.
The CSI camera connector has two I²C lines that go directly to the camera, controllable in Linux as GPIO0 and GPIO1. There are two more GPIO connectors on the CSI connector controllable as GPIO5 and GPIO21. By carefully slicing and soldering wires to a flat cable, these GPIO lines can be broken out onto a breadboard.
There’s a video below demonstrating these GPIO lines being used to control a few LEDs. Of course, anything that is possible with a normal Raspi GPIO is possible with the CSI connector GPIO lines.
Continue reading “Adding GPIOs To The Raspberry Pi With The Camera Interface”
VGA, DVI, and HDMI ports use Display Data Channel (DDC) to communicate with connected displays. This allows displays to be plug and play. However, DDC is based on I2C, which is used in all kinds of electronics. To take advantage of this I2C port on nearly every computer, [Josef] built a VGA to I2C breakout.
This breakout is based on an older article about building a $0.25 I2C adapter. This adapter hijacks specific lines from the video port, and convinces the kernel it’s a standard I2C device. Once this is done, applications such as i2c-tools can be used to interact with the port.
[Josef] decided to go for overkill with this project. By putting an ATmega328 on the board, control for GPIOs and LEDs could be added. Level shifters for I2C were added so it can be used with lower voltage devices. The end product is an I2C adapter, GPIOs, and LEDs that can be controlled directly from the Linux kernel through an unused video port.
NFC tags are cool, but programming them to do your bidding – whether unlocking your computer, making an Arduino vending machine, or a smart home application – requires using an NFC device to program the tag over the air. An NFC tag programmable with any ‘ol microcontroller would certainly have some interesting applications, and Elecfreaks’ DNFC tag is just the thing to test out these ideas.
While NFC tags are reprogrammable, reprogramming them requires an NFC controller, be that through a dedicated hardware, a phone, or an Arduino shield. The DNFC tag is reprogrammable with a microcontroller with an I2C interface thanks to TI’s RF430CL330H dynamic NFC transponder IC. It still does everything you would expect from a NFC tag – MIFARE compatible. NDEF reading and writing, and everything else – but you can program it through an Arduino, Pi, or any other board with an I2C interface.
TI has an app note on using the chip inside the DNFC for automatic Bluetooth pairing, and Elecfreaks themselves have a few use cases in mind that include putting WiFi credentials on an Arduino board without putting the SSID in code and other Internet of Things™ applications. We’re thinking this is one of those devices that is eminently useful, but for something we just can’t think of off the top of your head. If you’ve got an idea for how to use an I2C programmable NFC tag, drop a note in the comments.
Elecfreaks is doing an Indiegogo campaign for the DNFC, $13 for one. I picked one up, but it’s flexible funding, so buy it or don’t. I don’t care.