Now that school is out, I will have more time to work on my projects. First off, I got a new AVR programmer so now I can get to work on the quadcopter control board. I also started putting together the frame. I started over on the 74C922 emulator because I was having trouble with my previous code. The code for the power supply is slowly getting worked on, but I think I may re-do some parts of it because they aren’t as efficient as I would like. So far on that I can: use the display, set the output voltage and current with the DAC, read the drawn current and output voltage with the ADC, read the button inputs, and read the encoders. To do: Make the voltage output match the read voltage from ADC and make a simple menu system for controlling the supply.
On a completely unrelated note, my friend and I had some fun with my tennis ball mortar. Check it out below!
So, while I am waiting on parts to build my quadcopter, I am also working on building a 7400 series drum machine. That’s right, 7400 series drum machine. I wish I had designed this, but I am _very_ slowly building this: 7400 Drum Machine. Why the sudden interest in 7400 chips? My grandpa stopped by a couple days ago with some real goodies. An entire tackle-box PACKED with mostly 7400 chips. There are also some 4000 series and several LM566 VCOs, EPROMS, and various other chips. It turns out that I now have most of the chips needed to build that drum machine.
There are a couple snags, though. Matt (the creator) used a couple (nowadays) rare chips in the design. One of them is the 74C922 16-key encoder. Yes, you can still buy these from some places, but they go for about twenty bucks a pop. Ouch.
Since I’m not entering any contests, like Matt did, I figured I might cheat a little bit. The 74C922 is a pretty simple chip; all it does is scan a 4×4 switch matrix and output BCD – binary coded decimal. It stores the last key pressed and toggles a “data available” output when a valid entry is made. This sounds like the perfect task for an AVR with some custom code.
Thus the 74C922 Emulator was born. My goal is to create an *almost* drop in replacement using an ATTiny2313. It will not be perfect, because the ‘tiny is 20 pins and the 74C922 is 18, but one should easily be able to make an adapter to plug my chip in.
There will be some people who call this “dirty” or “uncool” because I reverted to a microcontroller to replace basic logic chips. Okay, get me a 74C922 for 5 bucks – shipped. It isn’t cheating when you have to use modern technology to replace things that are no longer available.
You can take a look at the code on github as I develop it. I just started before I typed up this post, so it is not even close to being done, but it is there anyway.
The title is pretty self-explanatory. I made a video of the main board getting assembled. The timelapse stops around the 2:40 mark and I explain some things.
Good news: the PCBs for the tinyCopter came in a couple days ago! Thanks to Laen over at the DorkbotPDX PCB order service for the stellar-quality boards! Now I can get to work assembling and testing the boards.
Now that I’ve more time to plan this project, I am really leaning towards using an off-the-shelf transmitter and receiver. The nRF24LU1+ is a really great chip, but unfortunately there is little information on actually programming (flashing firmware, not writing code) and actually using it. It looks like I may have ordered the extra components is vain, but such is the nature of developing (relatively) new devices.
Check out my photostream for more pictures!
This is fairly big news. From now on, I will be using github for posting and maintaining my project files. I already have a repository for the tinyCopter and Digital PSU projects, and will continue to add more. I have several projects going up there way before I do a write ups for them here, so don’t panic if you see stuff there that I have never talked about here.
Check out my github page here!
Well, here it goes. I just placed three orders for circuit boards for the main quadcopter components. This is what I’m going with:
Main control board. ATxmega256A3U, MPU-6050, MTK3339 GPS (eventually).
Computer side of the TX/RX system. Based on the nRF24LU1+.
Quadcopter side of the TX/RX system. Designed to sit on top, not unlike an Arduino shield. Based on the nRF24LU1+.
As you can see, I’ve got quite a bit of work (and money) put into this already. I still will have to buy motors, buy or design ESCs, and write code. I sure hope this turn out.
If you are subscribed to me on YouTube (if you aren’t, why not?), you know that a little while ago I started work on a power supply project. It is based off of the one that Dave Jones of the EEVBlog is building. Mine is slightly different, but has the same major components.
After I wore out(!) the first set of rotary encoder with my constant testing of the firmware, the new encoders didn’t work anymore. I tried everything with my code. I tried countless examples on how to get rotary encoders working on an Arduino. I tried changing the interrupt type, the interrupt routine, and the constants that define my pin setup.
The project sat on my desk for a while, getting nowhere. Suddenly, I had the idea to look at the datasheet again for the encoders I was using (EN16-V22AF15 ‘s) to see if I had missed something while wiring them. Lo-and-behold, there was my problem! When I wired the new encoders, I had (wrongly) assumed that all encoders had a standard pinout, and wired them the same as the old ones. Once I switched things around, they started working!
Now I can get the code finished, so the rest of you can build your own as well!
For my quadcopter project, I needed to figure out a way to control it. Many people just use an off-the-shelf TX/RX system for RC cars and planes, and there are many 2.4GHz versions of these, but I wanted to try something custom. While reading this thread on the RCGroups forum, I noticed the author kept talking about wireless capabilities integrated into his MSP430 control board. To do that, it uses the CC2500, a 2.4GHz RF transceiver module. This little device only needs a couple of decoupling capacitors and an antenna to operate, and has a convenient SPI interface. Using the diagram from this PDF, I designed a PCB for me to try.
When I acquire more funds, I will get the PCB made and report back on how it works. For now, here is the layout in EAGLE.
Layout for the CC2500 breakout board.
My friend and I built a new marble track in his basement! Check it out!
Well, I finished routing the PCB for the quadcopter controller.
The finished PCB for the quadcopter.
You can also get the design files here. Please note that these files are current as of this post but are subject to change.