Categories
algorithm Arduino robot software

SmartCar Bot Upgrade – Software and Control

In the previous part I described the changes to the original SmartCar project related to hardware and sensors.

In this post I’ll continue with the changes made to the software and control software, and the resulting improvement in the behaviors of the rover example application.

Categories
algorithm Arduino software

One Pin Serial Comms

There never seems to be enough pins on a microcontroller to do everything you want, especially with really small processors. So it can be difficult to dedicate two or more precious pins for serial comms interfaces. For simple messaging, it turns out that one pin and some signalling can do the job.

Categories
AI2 algorithm Arduino software

App Inventor (AI2) Joystick User Control

App Inventor (AI2) is an easy way to create Android apps. While originally designed for teaching, it still allows building advanced and complex apps, and was the tool I chose to build a software 2-axis joystick interface for wireless vehicle control.

This article describes the implementation of the joystick as a standalone component that can be integrated into other applications.

Categories
algorithm Arduino software

Interrupts and C++ Class Instances

When you need to process an interrupt, there is nothing else you can do but process it. Most Arduino examples show how to do this in a ‘C’ context. Processing interrupts in a C++ class is a lot less trivial, as class scoping rules and constructs get in the way, and specific arrangements need to be taken to ensure data is processed correctly.

Categories
algorithm Arduino software

The Over The Top (OTT) Servo Tester

A Servo Tester is a useful addition to any Maker’s toolbox, especially if they need to work with servos.  I have always ‘made do’ when setting up servos by setting up an Arduino and modifying the standard examples to do what I needed at the time (setting the mid point, calibrating for servo swing, etc).

I finally decided that I needed a more permanent tool and made my own.

Categories
algorithm Arduino software

Virtual arrays using an SD card

It is common for operating systems to use a hard disk swap files to increase the amount of available system RAM by swapping blocks(or pages) of memory between real RAM and the hard drive. As many applications use RAM linearly, this imposes relatively modest decrease in performance for the bigger benefit of increased temporary RAM.

It seemed to me that, for particular applications, this concept could be applicable to providing management of arrays to increase what could be stored in a microcontroller’s very limited memory resources.

Categories
algorithm Arduino software

Neopixel Fades and Color Transitions

Whilst updating an old application that implemented PWM color control of hard-wired RBG leds to NeoPixel type devices, I had to work out a new way to transition between colors. PWM is not an applicable technique when using serially controlled LEDs.

Here’s what resulted.

Categories
algorithm Arduino Parola software

Parola A to Z – Handling non ASCII characters (UTF-8)

A question that I am asked on a regular basis is why particular characters in messages are not displayed ‘as-expected’ by the Parola library. These characters, often typed in from the Serial monitor or embedded within strings, contain non-ASCII characters. Here’s what is happening.

Categories
algorithm Arduino electronics PCB software

Making music with a Yamaha YM2413 Synthesizer – Part 3

Part 1 and part 2 of this series set up the hardware and software infrastructure to support end-user applications using the YM2413 synthesizer. These are discussed in this final instalment.

Categories
algorithm Arduino electronics PCB software

Making music with a Yamaha YM2413 Synthesizer – Part 2

The first part concluded with the YM2413 hardware and an amplifier on a test Arduino Uno shield. In this and the next part we explore the interface to the device and how to control the hardware to make music.

Design a site like this with WordPress.com
Get started