Public Transportation Display

display_cropped

[Adrian] and [Obelix] wanted to have an easy way to know when to expect the public transportation, so they hacked an LED dot matrix display to show arrival times for stops near their dorm.

They found the display on Ebay with a defective controller which they replaced with an ATmega328p. They connected the display to the internet by adding a small TP-Link MR3020 router and connecting it to the ATmega328p via a serial line. Their local transportation office’s web page is polled to gather wait times for the stops of interest. All rendering of the final image to display to the dot matrix display is done on their PC, which then gets pushed through to the MR3020, which in turn pushes it out to the ATmega328p for final display.

[Adrian] and [Obelix] warn about setting proper watchdog timers on the display driver to make sure bugs in the controller don’t fry the dot matrix elements. Their ATmega328p dot matrix driver code can be found on [Adrian]‘s GitHub page.

Check out a video of the display in action after the jump.

[Read more...]

Artemis Synthesizer Kit

The Artemis Synthesizer was created as a kit for Boston University’s Artemis Project. This project aims to teach female rising high school freshmen about computer science with hands-on activities. [Chris] based the kit on a ATMEGA328P microcontroller and a MCP4921 digital to analog converter. It can be used in a keyboard mode, where the buttons toggle various notes of the scale, or in a sequencer mode, where the buttons are used to toggle pre-programmed sequences.

[Chris] wanted the kit to be usable by the students after the workshop, so he used an optical link dubbed the “Optoloader” to program new sequences and waveforms into the device. A web based application allows for waveforms and sequences to be built in the browser, then programmed by holding a phototransistor up to a blinking square. The square flashes black and white corresponding to a Biphase Mark Code encoded message. This is decoded by the microcontroller on the synthesizer and stored in memory. As a result, no special hardware is needed to play new waveforms and sequences.

[Chris] has a thorough write up for the project, including feedback surveys from the students. He plans to add more specific information about the Optoloader in the future.

Check out a video of the kit in action after the break.

[Read more...]

Video: Working with the 3pi robot’s line sensors

This week, we are serving up part five in our series where we are using the Pololu 3pi robot as a fancy development board for the ATmega328p processor. This week we are taking a quick break from working with the perpherals specific to the processor and will show how to work with the 3pi’s line sensors. A quick look at the schematic for the 3pi might lead you to think that you should be reading the line sensors with the A2D peripheral. Even though they are wired to the A2D pins, they need to be read digitally. In the video, [Jack] will show how to read raw values from the sensors and then how to calibrate the results so that you can get a nice clean 8-bit value representing what the sensors are seeing. Of course, that would happen under normal circumstances. Murphy had his way in this video and it turned out that our studio lighting was interfering a bit with the sensor readings when we were shooting so we didn’t get as good of a calibration as we would have liked when we shot.

Video is after the break.

In case you have missed the previous videos here are some links:

Part 1: Setting up the development environment
Part 2: Basic I/O
Part 3: Pulse Width Modulation
Part 4: Analog to Digital conversion

[Read more...]

Video: PWM on the ATmega328p

This week we continue on with another video in our series about how to program for the ATmega328p processor using C. The ATmega328p is at the heart of many Arduino boards. If you have been using them but want to add some more horsepower to your projects, this series of videos is for you. In this video, [Jack] talks about various types of pulse width modulation (PWM). You can use PWM to control the speed of a motor, the brightness of a LED, or to generate analog waveforms. [Jack] shows how to set up the processor to do locked anti-phase PWM to drive the wheels of the 3pi robot and then demos a short program that shows the code in action.

If you missed the previous posts in this series and would like to check them out…
Intro and how to set up the development environment : Click Here
Working with I/O pins: Click Here

Video is after the break…
[Read more...]

Video: performing I/O with the ATmega328p

Today we continue on with part 2 of our series where [Jack] shows how to program for the ATmega328p processor using the Pololu 3pi robot. In this video, he starts to dig deeper than last week’s video by showing you how to program in C so that you are directly reading inputs and directly sending data to outputs. Specifically, this video shows how to set up your I/O pins and then how to interface with LEDs, buttons, and a beeper.

There were a few comments on last week’s video about not wanting to buy a 3pi robot to learn on. That’s fine. For this series there really is no reason that you need to use the 3pi robot. We picked it because it is a great device to learn about the ATmega processors since it has so many things that you can play around with to get your feet wet but there really is no reason that you couldn’t wire up a DIP version on a perfboard and still follow along with these videos. In fact, if you have a good writeup about the cheapest possible way to get started with the ATmega series of processors, we’d love to hear about it.

Looking for part 1 of this series? [Click Here]

Video is after the break.
[Read more...]

DWex watch looks for future development

[FlorinC] sent in his DWex Arduino watch, with intentions for it double as an experimenting base. Inspired by the MakerBotWatch, it runs an ATmega328P, DS1337 RTC,and 24 LEDs to display the time. [FlorinC] tells us the (yet to come) case and strap will be similar to Woz’s watch to ensure airport security tackles him. As for experimenting, the PCB contains an ICSP6 and also an FTDI connector for those “other-than-watch purposes”. We’re not all sure what else could be done with a watch; we racked our brains and came up with a compass, but with the source code and Eagle files available maybe you have a better idea?

Follow

Get every new post delivered to your Inbox.

Join 94,080 other followers