Adding An OLED To My Computer

As part of my work I end up with hundreds of small TFT and OLED displays scattered around doing nothing. One of them, the PG25664CG OLED screen (16 shades of green) I figured would be about the same size and shape as a 5.25″ drive bay in a PC.

And guess what? I was right! An absolutely (well, a couple of mm out) perfect match. So I decided I should build one into my computer to display stuff. No idea what stuff yet, but stuff anyway. I’ll decide later when I have written the software for it all. Continue reading

Splitting Up Text in C

A common question I often find is:

How can I split this incoming data into parts?

It’s especially asked in conjunction with reading data through serial. So I thought I’d introduce you to two completely different approaches, each with benefits and drawbacks depending on the kind of data you are splitting.

Continue reading

What Exactly is a GPIO Pin?

I was hoping to make this the topic of my first ever video tutorial, but I still haven’t got round to cleaning my desk of all the junk and setting up a holder for my phone to use as a camera. Plus I am suffering from a bad cold right now and sound awful. So text it is.

I’d like to help you get to know exactly what a digital IO pin of an Arduino actually is and how it works. Many questions I come across along the lines of “How does this work”, or “Why do you need to do this”, or similar, can be answered easily if you know exactly what goes on inside an IO pin. Continue reading

Designing a Development Board

So I heard you were thinking about designing your own development board. That’s nice. But do you know how?

It’s one thing to go “I’d like to build my own development board”, but it’s quite a long step from there to “I have built my own development board and it works”.

There’s a number of steps you should go through before you even set pen to paper.

Why build another development board? Continue reading

The Importance of Sharing Grounds

A lot of the time on the Arduino forums we get questions regarding wiring things together. One common format is:

I want to connect my 12V powered LED strip to my Arduino but I can’t get it to communicate. I have checked all the connections and they seem fine. I have a 12V power supply for the LEDs and the Arduino is powered from the computer.

And 9 times out of 10 the first question we have to ask in return is:

Have you connected the grounds together?

And guess what the reply to that usually is? Yep:

No, do I need to? And isn’t that dangerous, connecting a 12V ground to the 5V Arduno ground?

Continue reading

Cheap 433MHz Transmitters

I decided the other day that it would be a good idea to spend 99p on a 433MHz transmitter and receiver pair from eBay. Not to use, but to take a look and see just how bad these modules are (and I expected them to be pretty awful too).


These modules are the absolute bare minimum you can get away with for transmitting data. There isn’t actually any modulation as such, the data pin on the transmitter (which is the smaller of the two modules) just turns the carrier frequency on and off. This is called On Off Keying, or OOK (No, not Ook, Ook! or Ook?, but OOK). The receiver just tells you if it can “hear” that carrier frequency.  There’s no data protocol, no packets, no nothing. You just tickle one end and the other end giggles.

They’re great for sending UART data across the air waves. Connect the transmitter to the TX pin of one Arduino and the receiver to the RX pin of another and you can send data between them pretty simply.

Sounds great, yes? Well, actually no, not really. Let’s take a look why. Continue reading