How Arduino’s Serial transmissions are constructed, and a basic demonstration of the ATtiny85 sending Serial-like messages using an internal timer and some basic bit manipulation.
Continue reading Getting an ATtiny85 to Transmit Over Serial
How Arduino’s Serial transmissions are constructed, and a basic demonstration of the ATtiny85 sending Serial-like messages using an internal timer and some basic bit manipulation.
Continue reading Getting an ATtiny85 to Transmit Over Serial
An Arduino equipped with a camera sounds like a great start for a wide variety of projects. Unfortunately, the Arduino’s hardware is really not up to the data volumes and rates required for meaningful image processing. This problem has a few partial solutions. In this post I will present one of them – a serial-connection camera with the VC0706 chip, and the dedicated code library by Adafruit.
In me previous rant, I mentioned that even Arduino’s own SoftwareSerial library suffers from issues that make it unreliable. Here’s how you can see that for yourself.
I was never a big fan of using Arduino libraries (i.e. libraries written by people other than yourself), but this time it’s gone too far. They simply can’t be trusted. They do more harm than good. These libraries are evil. Do you think I’m exaggerating? Well cover your nose, because we’re about to go where things really stink!
If you have some background in computer programming languages, and you just started working with low-memory MCUs, you may be tempted to do some dynamic allocation in your programs. After all, that’s what smart memory management is all about, right? Well, the truth is that in the vast majority of cases, dynamic allocation in MCUs will be pointless and even detrimental. In this post, I will explain why.
Continue reading Why You Don’t Want To Use Dynamic Allocation On Your MCU
The Serial Monitor of the Arduino IDE is used extensively by most, if not all, Arduino programmers. it is also unbelievably basic, and provides only the simplest of capabilities. On the plus side, that makes it easy to operate, but it also causes some frustrations. Isn’t it time for a better alternative?
When I found this ancient QuickShot Joystick which seemed to be still in working order, I just had to make it work again. Of course, no modern computer knows how to interface with such a dinosaur, so I build a “translator” system using and Arduino Leonardo. Here’s how.
Continue reading Reviving an old joystick with an Arduino Leonardo
These error messages are not only common, but also very annoying. Their text is unfriendly and unhelpful; so what’s really the problem, and what can you do to fix it if and when it happens to you?
Continue reading Dealing With “AVRDude: stk500_getsync(): not in sync” Errors
I finished the 595 Beginner’s Guide with a fairly simple example project. As a supplement, here’s another project, based on the same setup but just a little bit more complex, where we manipulate another input pin on the IC – and by doing that, control the output LED brightness!
After playing with the Arduino for a certain period, you may feel an urge to move forward to stand-alone microcontrollers. The official way to program AVR MCUs is with the Atmel Studio IDE and an Atmel programmer/debugger, such as Atmel-ICE. But Atmel Studio is only for Windows, and the programmers are pretty expensive. Here’s an alternative.
Continue reading Programming AVR Microcontrollers With Linux (The Relatively Easy Way)