Training Fish to feed Themselves

We’ve featured quite a few aquarium and fish feeder hacks on our blog. [RoboPandaPDX] thought of taking it up a notch and make an interactive fish feeder. He built a Fish feeder that train’s them to feed themselves.

A copper bar hangs from the middle of a metal cylinder – much like a bell. The end of the bar has a fish lure. When a fish pushes the lure, the copper bar touches the metal cylinder and  closes the circuit. This signal goes to an Arduino. To catch the attention of the fishes and to “teach” them, an RGB LED is used. The fish need to figure out that the feeder will dispense food only when the LED is ON and the Lure is pushed. If the fish figure that out, and push the lure when the LED is on, a servo is activated which pushes the feeder to deliver 1 unit of fish food. While at it, he added a couple of bells and whistles. A buzzer to indicate when the Lure switch is closed and a 2 line LCD shows how many times the switch has been activated and how long the program has been running.

A Sparkfun  open logger stores the hit count and the minutes and seconds of the hit for data analysis later on. The good news is that it seems to be working. The current code activates the feeder for 30 to 60 minutes every day, which is indicated by the LED. At the end of 9 days,  [RoboPandaPDX] found that the goldfish would hit the Lure when the LED turned on, and then turn around to face where the feeder would dispense food in to the tank. His next plan is to put up some obstacles along the path to see if the fish learn some new tricks. His schematic looks a little iffy (the Lure switch is connected to the RST pin of the Arduino), and it seems he cannot remember why he ever did that. He’s happy that it works though, but we’re sure that’s not the right way to wire it up.

[RoboPandaPDX] is looking for suggestions on improving his interactive feeder, so if you have any, do add them in the comments below.

If you need some more fish feeder ideas, check out this and this that we blogged about earlier.

Resource monitoring solution

Electricity, Gas and Water – three resources that are vital in our daily lives. Monitoring them using modern technology helps with conservation, but the real impact comes when we use the available data to reduce wasteful usage over time. [Sébastien] was rather embarrassed when a problem was detected in his boiler only during its annual inspection. Investigations showed that the problem occurred 4 months earlier, resulting in a net loss of more than 450 cubic meters, equivalent to 3750 liters per day (about 25 baths every day!). Being a self professed geek, living in a modern “connected” home, it rankled him to the core. What resulted was S-Energy – an energy resource monitoring solution (translated) that checks on electricity, gas and water consumption using a Raspberry Pi, an Arduino, some other bits of hardware and some smart software.

[Sébastien] wanted a system that would warn of abnormal consumption and encourage his household folks to consume less. His first hurdle was the meters themselves. All three utilities used pretty old technology, and the meters did not have pulse data output that is commonplace in modern metering. He could have replaced the old meters, but that was going to cost him a lot of money. reflective-power-meter-sensorSo he figured out a way to extract data from the existing meters. For the Electricity meter, he thought of using current clamps, but punted that idea considering them to be suited more for instantaneous readings and prone for significant drift when measuring cumulative consumption. Eventually, he hit upon a pretty neat hack. He took a slot type opto coupler, cut it in half, and used it as a retro-reflective sensor that detected the black band on the spinning disk of the old electro-mechanical meter. Each turn of the disk corresponds to 4 Watt-hours. A little computation, and he’s able to deduce Watt-hours and Amps used. The sensor is hooked up to an Arduino Pro-mini which then sends the data via a nRF24L01+ module to the main circuit located inside his house. The electronics are housed in a small enclosure, and the opto-sensor looks just taped to the meter. He has a nice tip on aligning the infra-red opto-sensor – use a camera to check it (a phone camera can work well).

Continue reading “Resource monitoring solution”

Putting new into the old – a Phonograph upgrade.

[smellsofbikes] recently came into possession of a 1970’s “stereo radio phonograph” cabinet consisting of a vinyl record player, AM and FM radio, and eight track tape player. The radio worked, the turntable didn’t sound too nice, and the tape player didn’t work at all. A new needle fixed the turntable, but the eight-track was in bad shape. So he replaced the tape player with a BeagleBoneBlack which plays streaming internet radio.

Hopefully, this fix is temporary, since he has carefully disconnected the tape player connections in the hope of fixing it soon. The swap out involved a fair bit of engineering, so he’s split his build log into several bite sized chunks. The first step was to set up the BBB, upgrade it and add in all the network and audio related stuff. Audio on the BBB is available only via the HDMI port, but [smellsofbikes] had a USB soundcard handy, so the next step was setting that up. He installed mpg321 – the command line mp3 player and set it up to play music streaming from somafm. Next up was getting some scripts and programs to run automatically during system bootup. The final part of the setup was adding a WiFi router as a repeater connected to the BBB via an ethernet cable. He could have used a tiny WiFi USB dongle, but he already had the router lying around, and he wanted to dedicate USB to audio functions alone, and use the Ethernet port for Internet.

He then worked on identifying the wires that go from the tape player to the amplifier, spliced them, and hooked them up to the audio sound card on the BBB. With this done, the upgrade was more or less complete – the system played streaming music and stations could be switched remotely (via SSH to BBB). [smellsofbikes] reckoned it would be nice to use the existing controls in the phonograph cabinet to control the internet streaming music, instead of controlling it via a remote computer. The cabinet had 4 indicator lamps that indicated which track was being played and a button to switch between tracks. He removed the old indicator panel and put in a fresh PCB, designed in KiCad and cut on his LPKF circuit board plotter. An aluminum knob machined out of hex bar-stock works as the new track change button. At this point, he called it a wrap. The BBB and Asus router go inside the cabinet, and the old (non-functional) tape player is put in place. Quite an interesting build, and we look forward to when he actually gets the tape player working. [Alan Martin], aka “The Most Interesting Engineer In The World” has told him that “it is a moral imperative that you repair the eight-track and get it working”. [Alan] has promised to send [smellsofbikes] a suitcase full of brand new, still in their plastic wrappers, eight-track tapes when he gets it working.

Fail Of The Week : Measuring DC Current Has To Be Easy, Right?

[DainBramage] needed a DC ammeter to check how long his amateur radio station would be able to stay powered on battery backup power. The one’s he already had on hand were a Clamp Meter, which could only measure AC, and another one that measured just a few milliamps. Since he didn’t have one which could measure up to 25A, he decided to build his own DIY DC Ammeter with parts scavenged from his parts bin. Measuring DC current is not too difficult. Pass the current to be measured through a precision resistor, and measure the voltage drop across it using a sensitive voltmeter.

I = V/R

So far, so good. If it’s late at night and you’ve had a lot of coffee, busy building your DC ammeter, things could head south soon. [DainBramage]’s first step was to build a suitable Shunt. He had a lot of old, 1Ω, 10W resistors lying around. He made a series-parallel combination using nine of them to create a hefty 1Ω, 90W shunt (well, 0.999999999 Ohms if you want to be picky). This gave him a nice 1 Volt per Amp ratio, making it easy to do his measurements.

Next step was to hook up the shunt to a suitable voltmeter. Luckily, he had a Micronta voltmeter lying around, ripped out from a Radio Shack product. Since he didn’t have the voltmeter data, he hooked up a 10k resistor across the meter inputs, and slowly increased the voltage applied to the meter. At 260mV, the needle touched full-scale and the voltage across the inputs of the voltmeter was 33mV. [DainBramage] then describes the math he used to calculate the resistors he would need to have a 10A and a 25A measurement range. He misses his chance to catch the fail. His project log then describes some of the boring details of putting all this together inside a case and wrapping it all up.

A while later, his updates crop up. First thing he probably realized was that he needed more accurate readings, so he added connectors to allow attaching a more accurate voltmeter instead of the analog Micronta. At this point, he still didn’t catch the fail although it’s staring him straight in the face.

His head scratching moment comes when he tries to connect his home made ammeter in series with the 12V DC power supply to his amateur radio station. Every time he tries to transmit (which is when the Radio is drawing some current), the Radio shuts off.  If you still haven’t spotted the fail, try figuring out how much voltage gets dropped across the 1Ω shunt resistor when the current is 1A and when it is 5A or more.

Making a Homemade Stephen Hawking

It isn’t easy communicating when you have any form of speech impairment. In such cases, a Speech-generating device (SGD) becomes essential to help you talk to the world. When coupled with other ailments that limit body movement, the problem becomes worse. How do you type on a keyboard when you can’t move your hands, and how do you talk when your voice box doesn’t work. Well known Scientist Stephen Hawking has been battling this since 1985. Back then, it took a lot of hardware to build a text entry interface and a text to speech device allowing him to communicate.

But [Marquis de Geek] did a quick hack using just a few parts to make a Voice Box that sounds like Stephen Hawking. Using an arcade push button to act as a single button keyboard, an Arduino, a 74HC595 shift register, a 2-line LCD, and the SP0256 hooked to an audio amplifier / speaker, he built the stand-alone speech synthesizer which sounds just like the voice box that  Stephen Hawking uses. Although Dr. Hawking’s speech hardware is quite complex, [Marquis de Geek]’s hack shows that it’s possible to have similar results using off the shelf parts for a low cost solution.

There aren’t a lot of those SP0256-AL2 chips around. We found just a couple of retailers with small stock levels, so if you want to make one of these voice boxes, better grab those chips while they last. The character entry is not quick, requiring several button presses to get to the character you want to select. But it makes things easier for someone who cannot move their hands or use all fingers. A lot of kids grew up using Speak and Spell, but the hardware inside that box wasn’t the easiest to hack into. For a demo of [Marquis de Geek]’s homemade Hawking voice box, check the video below.

Continue reading “Making a Homemade Stephen Hawking”

Turn your BeagleBoneBlack in to a 14-channel, 100Msps Logic Analyzer

The BeagleBoneBlack is a SoC of choice for many hackers – and quite rightly so – given its powerful features. [abhishek] is majoring in E&E from IIT-Kharagpur, India and in 2014 applied for a project at beagleboard.org via the Google Summer of Code project (GSoC). His project, BeagleLogic aims to realize a logic analyzer using the Programmable Real-Time units on board the AM335X SoC family that powers the BeagleBone and the BeagleBone Black.

The project helps create bindings of the PRU with sigrok, and also provides a web-based front-end so that the logic analyzer can be accessed in much the same way as one would use the Cloud9 IDE on the BeagleBone/BeagleBone Black to create a new application with BoneScript.

Besides it’s obvious use as a debugging tool, the logic analyzer can also be a learning tool that can be used to understand digital signals. BeagleLogic turns the BeagleBone Black into a 14-channel, 100Msps Logic Analyzer. Once loaded, it presents itself as a character device node /dev/beaglelogic. In stand-alone mode, it can do binary captures without any special client software. And when used in conjunction with the sigrok library, BeagleLogic supports software triggers and decoding for over 30 different digital protocols.

The analyzer can sample signals from 10Hz upto 100MHz, in 8 or 16 bits and up to a maximum of 14 channels. Sample depth depends on free RAM, and upto 320MB can be reserved for BeagleLogic. There’s also a web interface, which, once installed on the BeagleBone, can be accessed from port 4000 and can be used for low-volume captures (up to 3K samples).

[abhishek] recently added the BeagleLogic Cape which can be used to debug logic circuits up to 5V safely. Source files for BeagleLogic as well as the Cape are available via his github repos. [abhishek] blogged about his project on his website where there’s a lot more information and links to be found. Catch a video of BeagleLogic after the break.

Continue reading “Turn your BeagleBoneBlack in to a 14-channel, 100Msps Logic Analyzer”

Non-Arduino powered by a piece of Computing history

Sometimes it is a blessing to have some spare time on your hands, specially if you are a hacker with lots of ideas and skill to bring them to life. [Matt] was lucky enough to have all of that and recently completed an ambitious project 8 months in the making – a Non-Arduino powered by the giant of computing history – Intel’s 8086 processor. Luckily, [Matt] provides a link to describe what Non-Arduino actually means; it’s a board that is shield-compatible, but not Arduino IDE compatible.

He was driven by a desire to build a single board computer in the old style, specifically, one with a traditional local bus. In the early days, a System Development Kit for Intel’s emerging range of  microprocessors would have involved a fair bit of discrete hardware, and software tools which were not all too easy to use.

Back in his den, [Matt] was grappling with his own set of challenges. The 8086 is a microprocessor, not a microcontroller like the AVR, so the software side of things are quite different. He quickly found himself locking horns with complex concepts such as assembly bootstrapping routines, linker scripts, code relocation, memory maps, vectors and so on. The hardware side of things was also difficult. But his goal was learning so he did not take any short cuts along the way.

[Matt] documented his project in detail, listing out the various microprocessors that run on his 8OD board, describing the software that makes it all run, linking to the schematics and source code. There’s also an interesting section on running Soviet era (USSR) microprocessor clones on the 8OD. He is still contemplating if it is worthwhile building this board in quantities, considering it uses some not so easy to source parts. If you are interested in contributing to the project, you could get lucky. [Matt] has a few spares of the prototypes which he is willing to loan out to anyone who can can convince him that they could add some value to the project.

Continue reading “Non-Arduino powered by a piece of Computing history”