This project makes firmware upgrades easy: The target has an Infrared receiver and the data is sent via IR. The IR transmitter is based on AVR-USB.The host-side consist of host-program for Win32 PC using Libusb-Win32, device based on ATmega8 using firmware-only USB driver by Objective Development and infrared hardware unit.Host program was compiled using Lazarus Freepascal. Device firmware was compiled using WinAVR (AVR-GCC).The implementation uses custom device class, required simple inf file and libusb driver on PC. [via]
Atmel AVR Infrared Downloader - [Link]
This device monitors household power usage and logs it to an SD card. A simple analog front-end amplifies the signals from voltage and current detectors and an ATmega168 microcontroller computes the power consumption using the formula P=V*I. The voltage and current are each sampled at 9615 Hz so the integration should be fairly accurate even for highly non-sinusoidal loads such as computers or fluorescent bulbs. A graphical LCD shows the power usage as a strip chart and can also act as an oscilloscope to display the voltage and current waveforms. The current is amplified in three stages (1x, 10x, and 100x) so that different gains can be used giving accurate readings for both high and low power usage. [via]
An AVR-based power usage logger - [Link]
As I mentioned earlier this week, I recently “lost” an ATmega168 due to flashing the configuration fuses to disable the RESET pin, without realizing that this makes the device impossible to reflash with SPI. This is particularly frustrating because the device is still 100% functional, just completely deaf to ordinary serial programmers. The only way to recover the device is using what Atmel calls “High Voltage Parallel Programming Mode” which very few programmers support, most importantly, not the USBtinyISP I otherwise love.
Fortunately, my trusty Arduino came to the rescue – I created an Arduino-based AVR programmer that uses the high voltage programming mode and can fix pesky fuses like RSTDISBL.
The Arduino has just enough IO to implement the entire HV protocol plus a “go” button. So far I have only implemented setting LFUSE and HFUSE in software, but there is no reason why the code couldn’t be extended to support chip erase and programming the entire flash as well.
Arduino-based AVR High Voltage Programmer - [Link]
I guess the most popular microcontrollers now a days in Bangladesh are ATmega8 and ATmega32. These microcontrollers have inverted reset, that does not work with the second circuit. So I am posting a circuit specially for these sort of noninverted IC. If your AVRs reset pin in datasheet have a bar on the name of it. ( Reset ) (or has a circle outsidethe pin of it), then this programmer is suitable for you. In the circuit diagram I have already shown the pin out of the BC 547 ic.
Simplification of the LancOs’s SI Prog - [Link]
This is for those of you that want a quick prototyping system that will plug into a breadboard without taking up too much space. It will mount at a 90 degree angle to the breadboard like a video card on a computer motherboard.
- AVR Studio Compatible
- Atmel ATMEGA168 AVR
- 16MHz Crystal
- VCC, 5V, and 3V Power Supplies
- ICSP, 1-wire Debug
- ~$15 In Parts
QuickAVR part 1 - [Link]
Quick AVR part 2 – [Link]
Quick AVR part 3 - [Link]
If you’ve ever bent the pin on a microcontroller while trying to insert it into a DIP programming socket, you’re not alone. Aligning those crazy pins again and again, while intermittently prying them out of the programming socket and then inserting your freshly burned chip into a target circuit, can lead to a long and sleepless night. Luckily, there is a cure for the bent pin nightmare. And this prescription costs less than $35.
A Rapid AVR Prototype Programmer - [Link]
Nowadays, USB is the most popular connection connection between PC and peripherals such as AVR programmers, printers, scanners etc. For that reason I had to modify my old serial AVR In-System-Programmer (ISP) to work with USB connection. You can say, “use a USB to Serial adaptor to connect your AVR ISP with your PC”. Yes, that could be a solution but it would cost me more money than a singe FT232BM chip because I had to include an USB to RS232 adaptor and a power supply for my programmer.
USB AVR In-System-Programmer - [Link]
If you want to build a simple and inexpensive digital voltmeter here is a mini 3 digit display digital voltmeter (this one PIC version).It’s an AVR based voltmeter module.The module has general purpose digital IO pins. You could use it as well to read a digital sensor and display the value.It can be freely programmed, calibrated and even be programmed with a non linear formula. It’s a display where you can define the relation between the measured value and the displayed number. [via]
Mini 3 digit display digital voltmeter - [Link]
Linus Akesson and friends have created the “Craft” demo – using an ATmega88 to generate 4 channels of 8-bit sound and 3D graphics. [via]
Timing is crucial: One display line takes 24 μs, and is followed by a 7.75 μs break called the horizontal blanking period. After 480 such lines, there’s a longer break (1428.75 μs, equal to 45 full display lines) before it all starts over. Two digital signals are used to synchronize the sender (graphics card, custom demo hardware etc.) and the receiver (monitor).
Sound is generated during the horizontal blanking periods. That gives a sample rate of 31496 kHz. Of course, only the really timing critical part (waveform generation) is performed during the horizontal blanking. Melody, rhythm, amplitude envelopes, arpeggios etc. are handled by a playroutine which gets called once for every video frame, during vertical blanking.
AVR demo platform rocks the color VGA +audio - [Link]