A State Machine is defined as a pattern that allows an object to change it's state as a result of an external stimulus. When the number of states is known and of a limited number it is called a Finite State Machine..
The RFScanner Prrof-of-concept application was created to scan and monitor active channels for the inexpensive 433MHz RF communcations devices. Used together with the HT-12E/HT-12D EncoderDecoder chips these devices offer a fairly simple way to communicate.
My Significant Other uses a calendar to keep track of all our important appointments and hangs the calendar on the refrigerator using those little magnets she collects from places she's visited. Well the dang thing kept falling because the magnets weren't strong enough so her solution was to use more magnets. I recently purchased some earth magnets for a project I completed and had a few left over so we put out heads together and came up with a solution that works very well.
I recently purchase several pairs of the 433Mhz RF Transmitter/Receiver modules from a vendor on ebay. They are very inexpenisve and they use the Amplitude Ship Keying (ASK) protocol, which allows the developer to transfer data between the two devices wirelessly using RF. But very early on I realized that the communications I required for my project would be very simple, just a notification to turn a device on and off. Durring my research I found that the HT-12D/HT-12E encoder/decoder devices allow the transfer of 4 bits of data without one having to deal with the ASK protocol.
About a year ago a friend sent me a link to the Nextion web site where they advertise touch screen displays of various sizes. At the time I didn't have the need for a display with that much resolution and consequently never did any research on the display. But in the last couple of months I started doing some research and became intrigued with the display and so I broke down and ordered an 2.8" 320x240 Nextion touch display.
I used to struggle when it came time to remove my print, using blue tape when the printer finished but with this simple trick you can remove the product easily!
The Stopwatch project is an inexpensive bench Stopwatch/Timer, hardware/firmware solution that I have had on my long list of projects to do for some time. It has a simple interface; a 20x4 LCD display times and 4x4 keypad to configure the times. There are two main segments in the Stopwatch project; the clock source, an ATtiny2313 MCU that provides the clock pulses to the the Stopwatch segment, an ATMega328P that provides everything else.
In this the second and final article of the Garage Light series I will be providing the receiver and associated circuitry and code to complete the project. When I started this project I didn't have a clear design and as a result got into a just one more feature mode and ended up with a nice design.
As the old saying goes, "Necessity is the mother of invention" and in this case the need was a light in the garage that could be turned on for a period of time when motion is detected. We tried putting a couple of inexpensive motion sensitive, battery operated lights along the path to the recycle and garbage bins but they are so faint and you have to get so close to trigger them that it just didn't do the job.
You've got your finger on the mouse button ready to pull the trigger and finally order that Raspberry Pi 2 that just came out but you don't know if you've got the time to do the research to learn how to set it up and start programming it. In this first of n part series of articles I will walk you through the process of getting the Pi configured. In future articles we will configure the Pi to program in the C/C++ and Python languages.
In this, the third in the Raspberry Pi series of articles we will be building on previous articles to develop a simple solution for what I would call an Internet of Things Hello World project. In my previous articles we discussed initially setting up the Raspberry Pi and in the second article using Mosquitto as a message broker. In this article we will be introducing several new software, middleware and firmware packages as well as a new hardware device the ESP8266-12e WiFi adapter. If you haven't read my previous articles I suggest you read them before continuing.
In this, the second article in an ongoing series dedicated to the amazing Raspberry Pi we will be configuring the Pi as an MQTT message broker using Mosquitto. Mosquitto is a lightweight, but powerful publish/subscribe model messaging system that can be installed on a wide variety of platforms. Our goal in this tutorial is to install, configure and test the software on a Raspberry Pi 2 and to be able to publish and subscribe to messages on not only the Pi but other computers as well.
There are many ways to drive small current motors, those requiring 500mA or less but the L293H Quadruple Half-H driver is a versatile chip that was designed for use with motors, can very easily be controlled with a micro-controller and can be purchased JameCo Electronics. Using this chip we can drive either 2 DC motors or one Stepper motor and we will learn how to do both in this tutorial. The components needed to complete this exercise are an ATMega328p Micro-controller to interface with and control the L293D device but any controller may be used, the L293D component and one dc motor and/or one stepper motor.
While doing the research for this article I found that there is quite a bit of information on the net regarding this subject but one has to go to various places to get the whole picture so in this article I am attempting to gather all that information and offer it in one place, here! All examples are compiled using Atmel Studio 6.0 SP2 and the ATMega1280, but with a little customization can be modified to work with any Atmel Microcontroller.
In order to learn the assembler programming language some knowledge must be known about the hardware we are using. In this tutorial we will start with a brief introduction to the inner workings of the AVR micro controller then move on to pure assembler and finally show how to mix 'C' and assembler languages.
One of the most important functions in embedded electronics is the abitlity to communicate with other processors or integrated circuits and one of the primary ways that the Arduino Due can accomplish this is with the UART/USART Controllers. For those not familiar with this method of communications I recommend the Serial Communication article at Sparkfun.com.
In this edition of the continuing series of articles uncovering the mysteries of the Arduino Due we will be tackling the problem of creating a Pulse Width Modulation (PWM) signal. To do this we will use two techniques; first the old fashion way with a timer and secondly with the PWM Controller which is specific to the SAM3X8E processor. If you look at the pinout for the Arduino Due you will see that Pins 2-13 are set aside for PWM with 4 of them using the PWM Controller and the rest use the various timer channels.
The Arduino Due has 2 SPI units on board and when configured as Master uses 4 chip select lines to allow selection of up to 16 slaves per SPI unit. The SPI Controller is a sophisticated controller that can be configured in a variety of ways that should solve most serial communications needs.
This is the first in a series of articles that will cover the inner workings of the Arduino Due 32bit board based on the Atmel SAM3X8E ARM Cortex-M3 processor. Each article in this series will cover a discrete sub-system within the micro controller and in this first article we will begin with a discussion of the Parallel I/O controller.