Archive for the ‘Arduino’ Category
St. Patrick’s Day is coming up and I thought it’s already time to update the original Valentine’s Day POV display with a new message and make use of the second PCB I had done at BatchPCB. Also, fortunately, John “smeezekitty” (the author of the Attiny13 core used for programming it in Arduino IDE) stopped by my blog and pointed out to an issue with the original firmware, which prompted me to take another hard look at it and the result has been a saving of whopping 20 or so bytes – it was just enough to fit the word “BEER” which, as I mentioned in the original post, we did not have any space in flash left for. Well, now we do and below is the new software Read the rest of this entry »
Stepper motors are great for accurate positioning because they move in discrete steps – a feature that makes them very appropriate for CNC software control. But every once in a while you have an application where you need to press a button and rotate some kind of a jig at a preset angle or move something a preset distance if it’s a stepper-driven linear stage. So, I decided to modify an earlier Arduino sketch I wrote for testing the world’s smallest stepper motor to make it a bit more useful (and clean any bugs in the process). Keep reading to see what came out … Read the rest of this entry »
I can hear you screaming:”Not another LED blinker!” and yet here it is, packaged into yet another transparent Ferrero Rocher chocolate box, just like the first one. Why another ATtiny13 LED project? I needed to change the software to add a new feature and I had another box stashed away after Christmas – that alone should have been a reason enough Additionally, I have to admit right here that there will likely be one more post that includes an ATtiny13, LEDs and chocolates before I let it go (soon, I promise) and move onto more serious things, such as the DVD-CNC project that’s been languishing on and off my workbench for more than a year now.
That said, if you are still interested in programming ATtiny13 with the Arduino IDE to blink 12 Charlieplexed LEDs, respond to motion (shaking) and have the LED on/off sequence scripted in an orderly fashion rather than random or simply 1 through 12, then read on! Read the rest of this entry »
This is a quick follow up on an eariler post describing installation of Atmel AVRISP MKII programmer on a Ubuntu Linux computer. The original post was based on Ubuntu 10.10 and several small changes have sneaked up on us during the upgrade to Ubuntu 12.04
Here are the changes: Read the rest of this entry »
Way too late for the Valentine’s Day yet maybe just in time for the Mother’s Day this year, I’d like to introduce an electronics project that came about as a result of my reluctance to throw away a nice looking empty box. This year Valentine’s Day came around just about the time I was playing with ATTiny13 micros – I was setting my Arduino IDE up to be able to write code for and burn the program into smaller 8-bit AVR MCUs like ATTiny13. Once the box of chocolates has been freed of its original content by my dear wife Tanya, on the way to the trash I turned it over and realised that there’s a lot of space available inside the plastic insert. I could easily tuck a battery, an MCU and a bunch of LEDs in there for a nice blinking light effect. Read the rest of this entry »
But you wouldn’t be using all of its great capabilities if you had to switch back to a text editor every time you needed to program a smaller Atmel chip, such as ATtiny13 for example. The engines behind the Arduino IDE – AVR-GCC compiler for C and C++ and avrdude – an in-system programming software for Atmel’s AVR series of micros – are already there and capable of coding for and programming the smaller chips, we just need to add a little bit of configuration magic to the Arduino IDE to be able to switch hardware freely without leaving your favorite Integrated Development Environment. Here is how: Read the rest of this entry »
Arduino as a system is a great development tool that makes it incredibly easy for a beginner to start programming microcontrollers and for a seasoned programmer to whip up a quick code in a hurry or keep a large embedded project organised when needed. I think it is very valuable for a user-friendly development environment to have a familiar setting to work in: a familiar IDE, set of libraries and a well-known hardware configuration, all of which Arduino provides splendidly.
However, the hardware – the Arduino boards, all 150,000 variations of – may not necessarily work very well for every occasion. Depending on your application there may simply be no space for a 2″x2.5″ board. Additionally, there’s always the question of cost: an MCU chip and a couple of extra components that you actually need for the project may not always justify the cost of the whole Arduino board, voltage regulators, LEDs and all of the extra goodness it provides.
I set out to figure out what it’s going to take to create an MCU development environment in which the code could be developed using all the familiar Arduino tools and then transferred to a stand-alone Atmel MCU so the Arduino board could be reused for future projects, along with all the above mentioned savings. My item of particular interest was to make all this work in Ubuntu Linux – my OS of choice for the last 4 years.
The quest has been helped in no small part by Newark – an electronic components distributor – who has generously provided an Atmel AVRISP MKII programmer – an essential tool for moving the code to stand-alone MCU chips. They carry a whole line of MCU development tools for your MCU family of choice and the AVRISP is one of the most economic ways to get you started programming Atmel chips. Check them out! Read the rest of this entry »
This little wonder of electromechanical engineering came from inside a laser diode sled of an HP CT10L Bluray drive I’ve opened some time ago. The device on the picture consists of several parts, all easily fitting on a dime coin: a bipolar stepper motor with lead screw, a linear stage, a lens, and even an end position sensor (I’ve yet to make use of the sensor though). The entire assembly is only 14mm x 9mm x 4mm. This post is about making this tiny motor move. Keep reading! Read the rest of this entry »