This is a project I did a couple of years back for a business friend of mine to automatically log all his phone calls into his computer. The hardware (pictured above) uses an microprocessor to monitor the phone calls (incoming and outgoing) and send the data out the serial port to be read by the computer.
The hardware is controlled by an Atmel AVR ATmega32 microprocessor. The processor uses optoisolators to see if the phone is off-hook and to check if the incoming line is ringing. If the phone is off-hook a DTMF decoding chip CM8870CP is used to decode the number that is dialed. If it is an incoming call an FSK decoding chip XR2211 is used to decode the Caller ID data.
Phone Call Logging Project - [Link]
Arduino Blog » Blog Archive » Breakfast at Arduino. [via]
For the second year in a row we decided to announce our new products at Maker Faire in NYC.
Tomorrow morning, if you come to the Arduino tent, you will be able to see:
Arduino 1.0, we finally froze the Arduino API, the IDE and the layout of the boards. We’ve made some minor additions to the Arduino connectors to make them more flexible. Tomorrow you will be able to download the release candidate and in 1 month of frantic testing with the community, the platform will be ready and stable.
Arduino Leonardo, a low cost Arduino board with the Atmega32u4. It has the same shape and connectors as the UNO but it has a simpler circuit. On the software side it has a nifty USB driver able to simulate a mouse , a keyboard, a serial port (with more drivers coming later). As usual for Arduino, everything will be released as open source (Core, Bootloader, Hardware).
Arduino Due, a major breakthrough for Arduino because we’re launching an Arduino board with a 32bit Cortex-M3 ARM processor on it. We’re using the SAM3U processor from ATMEL running at 96MHz with 256Kb of Flash, 50Kb of Sram, 5 SPI buses, 2 I2C interfaces, 5 UARTS, 16 Analog Inputs at 12Bit resolution and much more.
Instead of just releasing the finished platform we are opening the process to the community early on. We’re going to be demoing the board and giving away some boards to a selected group of developers who will be invited to shape the platform while it’s been created. After Maker Faire, we will begin selling a small batch of Developer Edition boards on the Arduino store (store.arduino,cc) for members of the community who want to be join the development effort. We plan a final and tested release by the end of 2011
Arduino Wifi Shield. It adds Wi-Fi communication capabilities to any Arduino. Instead of using any of the classic WiFi modules on the market we wanted to have something that will provide the maximum level of hackability to the user. The shield is based on a wifi micro module made by H&D Wireless coupled with a powerful AVR32 processor that carries the full TCP-IP stack leaving room to add your own protocols and customisations. We’ve also worked hard to make sure that you will be able to migrate your code from the Ethernet Shield with minor changes.
We’re also going to show some prototypes of new platforms we’ve been working on: We have robots, new IDEs and more.
It has been a crazy few months and we want to thank ATMEL very much the support that we got on all the new products.
Come over to Maker Faire and have a look for yourself!
Arduino 1.0, Arduino ARM, Arduino Wifi and Arduino Leonardo… – [Link]
Atmel announced additional unique features to the already-successful 8/16-bit AVR XMEGA microcontroller (MCU) family with the industry’s lowest power consumption of 100nA with 5µS wake-up time. The new Atmel AVR® XMEGA® family includes full-speed USB, the fastest and highest-precision analog systems, a Direct Memory Access (DMA) controller and the innovative event system that maximize real-time performance and throughput while reducing CPU load. This new family lowers overall system cost through higher integration, capacitive touch support, and ultra-low power consumption. The AVR XMEGA microcontrollers are designed for applications in the industrial, consumer, metering and medical segments. [via]
Atmel AVR XMEGA Series with USB and High-precision Analog - [Link]
About two months ago, Atmel announced a smart new set of AVR development boards, the XPlained series. One of these boards (which I’ve just recently purchased for $30) boasts a shiny new AVR XMega microcontroller. What? An XMega you say? Why yes, haven’t you heard? Come now, they’ve been around for fully three years at this point. Well, don’t worry if this is fresh news, you’re not alone. For some reason, adoption of the powerful new XMega MCU has been slow amongst hobbyists.
Explaining the XMega XPlained (Dev. Board) - [Link]
I developed a nifty way to send data from any microcontroller to any PC running any operating system with zero components and hardware you probably already have sitting in front of you. Traditional interface methods (namely serial port and usb port, both have been referenced on Electronics-Lab) have drawbacks. For serial, you need a level converter IC (like a max232) and an archaic PC with a serial port, or a USB serial port adapter (many of which don’t run on Linux or newer versions of windows), and a crystal specifically chosen for transfer at a certain bit rate. FTDI makes a series of USB/serial interfaces, but they’re expensive and SMT only I don’t feel like paying even more for a breakout board just to communicate with a $1 microcontroller. Also, many ATMEL chips (most of the ATTiny series) don’t have rs232 capability built in, so you have to bit bang it in software (not fun). USB is another option, but requires a crystal and some level conversion circuitry, and isn’t supported by most small/cheap ATMEL chips. It’s built in some simple PICs (like some of the 18F series) but I don’t want to switch architecture just to send a few bytes to a PC! The V-USB project helps ATMEL chips bit-bang the USB protocol, and I’ve gotten it to work, but it’s not easy (their hello world program is hundreds of lines of code), and you have to mess with writing USB drivers or interfacing pre-made USB drivers with OS-specific solutions, it’s not fun either.
I’ve long wished there were an easier way! In this post, I demonstrate a simple way to send data from a microcontroller to a PC (and a more advanced second example showing bidirectional communication) using PC a sound card! Although the one built in most PCs would work, I decided to do it with $1.30 sound cards that are all over eBay. The chip sends pulses of data to the PC and a Python script (which can be run on virtually any OS) listens to the sound card with the pyAudio library and waits for data. When it’s received, it measures distances between pulses and dumps data values to the screen (optionally logging them to a CSV file ready for graphing by Excel or some other program). A series of calibration pulses precede the data stream allowing the PC to adapt to incoming data at any speed (no specific clock speed or crystal is required).
Although it’s not a refined method suitable for consumer applications, it sure is a useful hack for anyone looking to quickly exchange data between a microcontroller and a PC!
Sound Card Microcontroller / PC Communication - [Link]
Pulse Width Modulation (PWM) is a technique widely used in modern switching circuit to control the amount of power given to the electrical device. This method simply switches ON and OFF the power supplied to the electrical device rapidly. The average amount of energy received by the electrical device is corresponding to the ON and OFF period (duty cycle); therefore by varying the ON period i.e. longer or shorter, we could easily control the amount of energy received by the electrical device. The Light Emitting Diode (LED) will respond to this pulse by dimming or brighten its light while the electrical motor will respond to this pulse by turning its rotor slow or fast.
Working with Atmel AVR Microcontroller Basic Pulse Width Modulation (PWM) Peripheral – [Link]
The rapid penetration of the internet networks into many of today’s modern homes and personal gadgets (e.g. smart phone and smart pads) opening a tremendous useful and interesting embedded system application that could be integrated into our house or known as the intelligent house. For example by putting a small embedded system web server in our house, we could easily monitor such as alarm, temperature or even turn on/off the lamp or the garden’s water sprinkle; eventually from any remote location through the wireless personal gadget; Or perhaps you just want to impress your relative or friend with a very accurate digital clock which automatically synchronized the time through the Network Time Protocol (NTP) over the internet at your home or office.
Integrating Wiznet W5100, WIZ811MJ network module with Atmel AVR Microcontroller – [Link]
Sometimes we need to extend or add more I/O ports to our microcontroller based project. Because usually we only have a limited I/O port left than the logical choice is to use the serial data transfer method; which usually only requires from one up to four ports for doing the data transfer. Currently there are few types of modern embedded system serial data transfer interface widely supported by most of the chip’s manufactures such as I2C (read as I square C), SPI (Serial Peripheral Interface), 1-Wire (One Wire), Controller Area Network (CAN), USB (Universal Serial Bus) and the RS-232 families (RS-423, RS-422 and RS-485). The last three interface types is used for long connection between the microcontroller and the devices, up to 1200 meters for the RS-485 specification, while the first three is used for short range connection.
Using Serial Peripheral Interface (SPI) Master and Slave with Atmel AVR Microcontroller – [Link]
I2C (read as I Squared C) bus first introduced by Philips in 1980, because of its simplicity and flexibility the I2C bus has become one of the most important microcontroller bus system used for interfacing various IC-devices with the microcontroller. The I2C bus use only 2 bidirectional data lines for communicating with the microcontroller and the I2C protocol specification can support up to 128 devices attached to the same bus. Today many I2C IC-devices available on the market such as Serial EEPROM, I/O Expander, Real-Time Clock, Digital to Analog Converter, Analog to Digital Converter, Temperature Sensor and many more.
How to use I2C-bus on the Atmel AVR Microcontroller – [Link]
Atmel has announced their AVR Xplained series of dev boards.
Atmel AVR Xplained is a series small-sized and easy-to-use evaluation kits for 8- and 32-bit AVR microcontrollers. It consists of a series of low cost MCU boards for evaluation and demonstration of feature and capabilities of different AVR familie. Example projects and code drivers are provided in AVR Studio 5. Code functionality is easily added by pulling in additional drivers and libraries from the AVR Software Framework.
The AVR Xplained series also consists of a range of add-on boards that can be stacked on the MCU boards to create platforms for specific application development. A wide range of add-on boards is available, including, intertial pressure and temperature sensors, ZigBee RF, and Cryptographic authentication.
List price for MCU boards is around $30, with sensor modules between $25-54.
Details on features and availability are available from Atmel.
Atmel AVR Xplained dev boards – [Link]