An Arduino Device that Monitors Your External IP Address

[Bayres’] dad setup a webcam as a surveillance camera for a remote property. The only problem was that the only stable Internet connection they could get at this property was DSL. This meant that the external IP address of the webcam would change somewhat often; the needed a way to keep track of the external IP address whenever it changed. That’s when [Bayres] built a solution using Arduino and an Ethernet shield.

The main function of this device is to monitor the public IP address and report any changes. This is accomplished by first making a request to checkip.dyndns.org. This website simply reports your current public IP address. [Bayres] uses an Arduino library called Textfinder in order to search through the returned string and identify the IP address.

From there, the program compares this current value to the previous one. If there is any change, the program uses the Sendmail() function to reach out to an SMTP server and send an e-mail alert to [Beyres’] dad. The system also includes a small LCD. The Arduino outputs the current IP address to this display, making it easy to check up on the connection. The LCD is driven by 74HC595 shift register in order to conserve pins on the Arduino.

The system is also designed with a pretty slick setup interface. When it is booted, the user can enter a configuration menu via a Serial terminal. This setup menu allows the user to configure options such as SMTP server, email address, etc. These variables are then edited and can be committed to EEPROM as a more permanent storage solution. Whenever the system is booted, these values are read back out of the EEPROM and returned to their appropriate variables. This means you can reconfigure the device on the fly without having to edit the source code and re-upload.

Solar Panel System Monitoring Device Using Arduino

[Carl] recently upgraded his home with a solar panel system. This system compliments the electricity he gets from the grid by filling up a battery bank using free (as in beer) energy from the sun. The system came with a basic meter which really only shows the total amount of electricity the panels produce. [Carl] wanted to get more data out of his system. He managed to build his own monitor using an Arduino.

The trick of this build has to do with how the system works. The panel includes an LED light that blinks 1000 times for each kWh of electricity. [Carl] realized that if he could monitor the rate at which the LED is flashing, he could determine approximately how much energy is being generated at any given moment. We’ve seen similar projects in the past.

Like most people new to a technology, [Carl] built his project up by cobbling together other examples he found online. He started off by using a sketch that was originally designed to calculate the speed of a vehicle by measuring the time it took for the vehicle to pass between two points. [Carl] took this code and modified it to use a single photo resistor to detect the LED. He also built a sort of VU meter using several LEDs. The meter would increase and decrease proportionally to the reading on the electrical meter.

[Carl] continued improving on his system over time. He added an LCD panel so he could not only see the exact current measurement, but also the top measurement from the day. He put all of the electronics in a plastic tub and used a ribbon cable to move the LCD panel to a more convenient location. He also had his friend [Andy] clean up the Arduino code to make it easier for others to use as desired.

Hacklet 35 – BeagleBone Projects

The Raspberry Pi 2 is just barely a month old, and now that vintage console emulation on this new hardware has been nailed down, it’s just about time for everyone to do real work. You know, recompiling stuff to take advantage of the new CPU, figuring out how to get Android working on the Pi, and all that good stuff that makes the Pi useful.

It will come as no surprise to our regular readers that there’s another board out there that’s just as good in most cases, and in some ways better than the Pi 2. It’s the BeagleBone Black, and for this edition of the Hacklet, we’re focusing on all the cool BeagleBone projects on Hackaday.io.

lcdSo you have a credit card sized Linux computer and a small, old LCD panel. If it doesn’t have HDMI, VGA or composite input, there’s probably no way of getting this display working, right? Nope. Not when you can make an LCD cape for $10.

[Dennis] had an old digital picture frame from a while back, and decided his BeagleBone needed a display. A few bits of wire and some FPC connectors, and [Dennis] has a custom display for his ‘Bone. It’s better than waiting for that DSI display…

bed[THX1082] is making a bed for his son. This isn’t your usual race car bed, or even a very cool locomotive bed. No, this is a spaceship bed. Is your bed a space ship? No, I didn’t think so.

Most of the work with plywood, MDF, paint, and glue is done, which means the best feature of this bed – a BeagleBone Black with an LCD, buttons, a TV, and some 3D printed parts – is what [THX] is working on right now. He’s even forking a multiplayer networked starship simulator to run in the bed. Is your bed a starship simulator?

beer

Beer. [Deric] has been working on a multi-step fermentation controller using the BeagleBone Black. For good beer you need to control temperatures and time, lest you end up with some terrible swill that I’d probably still drink.

This project controls every aspect of fermentation, from encouraging yeast growth, metabolization of sugars, and flocculation. The plan is to use two circuits – one for heating and one for cooling – and a pair of temperature sensors to ensure the beer is fermenting correctly.


If you’re looking for more BeagleBone Projects, there’s an entire list of them over on Hackaday.io with GLaDOs Glasses, Flight Computers, and Computer Vision.

Reverse Engineer then Drive LCD with FPGA

Fans of [Ben Heck] know that he has a soft spot for pinball machines and his projects that revolve around that topic tend to be pretty epic. This is a good example. At a trade show he saw an extra-wide format LCD screen which he thought would be perfect on a pinball build. He found out it’s a special module made for attaching to your car’s sun visor. The problem is that it only takes composite-in and he wanted higher quality video than that offers. The solution: reverse engineer the LCD protocol and implement it in an FPGA.

This project is a soup to nuts demonstration of replacing electronics drivers; the skill is certainly not limited to LCD modules. He starts by disassembling the hardware to find what look like differential signaling lines. With that in mind he hit the Internet looking for common video protocols which will help him figure out what he’s looking for. A four-channel oscilloscope sniffs the signal as the unit shows a blue screen with red words “NO SIGNAL”. That pattern is easy to spot since the pixels are mostly repeated except when red letters need to be displayed. Turns out the protocol is much like VGA with front porch, blanking, etc.

With copious notes about the timings [Ben] switches over to working with a Cyclone III FPGA to replace the screen’s stock controller. The product claims 800×234 resolution but when driving it using those parameters it doesn’t fill the entire screen. A bit more tweaking and he discovers the display actually has 1024×310 pixels. Bonus!

It’s going to take us a bit more study to figure out exactly how he boiled down the sniffed data to his single color-coded protocol sheet. But that’s half the fun! If you need a few more resources to understand how those signals work, check out one of our other favorite FPGA-LCD hacks.

Continue reading “Reverse Engineer then Drive LCD with FPGA”

A SEGA Dreamcast Controller With a Built-in Screen

[Fibbef] was hard at work on a project for a build-off competition when he accidentally fried the circuit board. Not one to give up easily, he opted to start a new project with only two days left in the competition. He managed to modify a SEGA Dreamcast controller to hold a color screen in that short amount of time.

The Dreamcast controller’s shape is somewhat conducive to this type of mod. It already has a small window to ensure the view of the visual memory card is not obstructed. Unfortunately [Fibbef’s] screen was a bit too large for this window. That meant he would have to expand the controller and the circuit board.

After taking the controller apart, he desoldered the memory card connectors. He then cut the circuit board cleanly in half vertically. He had to re-wire all of the traces back together by hand. It turned out initially that he had messed something up and accidentally fried the right half of the controller. To fix it, he cut a second controller in half and soldered the two boards together.

With some more horizontal space to work with on the PCB side of things, [Fibbef] now needed to expand the controller’s housing. He cut the controller into several pieces, making sure to keep the start button centered for aesthetics. He then used duct tape to hold popsicle sticks in place to make up for the missing pieces of the case. All of the sticks were then covered with a thick layer of ABS cement to make for a more rigid enclosure. All of this ended up being covered in Bondo, a common trick in video game console mods. It was then sanded smooth and painted with black primer to make for a surprisingly nice finish.

The screen itself still needed a way to get power and a video signal. [Fibbef] built an adapter box to take both of these signals and pass them to the controller via a single cable. The box as a USB-A connector for power input, and a composite connector for video. There’s also a USB-B connector for the output signals. [Fibbef] uses a standard printer USB cable to send power and video signals to the controller. The end result looks great and serves to make the Dreamcast slightly more portable. Check out the demo video below to see it in action. Continue reading “A SEGA Dreamcast Controller With a Built-in Screen”

Dedicated Automobile Traffic Monitor with Raspberry Pi

[j3tstream] wanted an easier way to monitor traffic on the roads in his area. Specifically, he wanted to monitor the roads from his car while driving. That meant it needed to be easy to use, and not too distracting.

[j3tstream] figured he could use a Raspberry Pi to run the system. This would make things easy since he’d have a full Linux system at his disposal. The Pi is relatively low power, so it’s run from a car cigarette lighter adapter. [j3tstream] did have to add a custom power button to the Pi. This allows the system to boot up and shut down gracefully, preventing system files from being corrupted.

After searching eBay, [j3tstream] found an inexpensive 3.2″ TFT LCD touchscreen display that would work nicely for displaying the traffic data. The display was easy to get working with the Pi. [j3tstream] used the Raspbian linux distribution. His project page includes a link to download a Raspbian image that already includes the necessary modules to work with the LCD screen. Once the image is loaded, all that needs to be done is to calibrate the screen using built-in operating system functions.

The system still needed a data connection. To make things simple and inexpensive, [j3tstream] used a USB WiFi dongle. The Pi then connects to a WiFi hot spot built into his 4G mobile phone. To view the traffic map, [j3tstream] just connects to a website that displays traffic for his area.

The last steps were to automate as much as possible. After all, you don’t want to be fumbling with a little touch screen while driving. [j3tstream] made some edits to the LXDE autostart file. These changes automatically load a browser in full screen mode to the traffic website. Now when [j3tstream] boots up his Pi, it automatically connects to his WiFi hotspot and loads up local traffic maps.

NeXT Cubes And LCD Monitors

The NeXT slabs and cubes were interesting computers for their time, with new interesting applications that are commonplace today seen first in this block of black plastic. Web browsers, for example, were first seen on the NeXT.

Running one of these machines today isn’t exactly easy; there are odd video connectors but you can modify some of the parts and stick them in an LCD monitor. It’s a tradeoff between a big, classic, heavy but contemporary CRT and a modern, light, and efficient LCD, but it’s still a great way to get a cube or slab up and running if you don’t have the huge monitor handy.

The NeXT cube doesn’t have a single wire going between the computer and the monitor; that would be far too simple. Instead, a NeXT Sound Box sits between the two, providing the user a place to plug the monitor, keyboard, mouse, and audio connectors into. [Brian] took the board from this Sound Box and put it inside an old NEC LCD monitor he had sitting around. 12V and 5V rails were wired in, the video lines were wired in, and [Brian] created a new NeXT monitor.

There are two versions of the NeXT Sound Box – one for ADB peripherals (Apple IIgs and beige Macs), and another for non-ADB peripherals. [Brian] also put together a tutorial for using non-ADB peripherals with the much more common ADB Sound Board.