Colorduino Scrolling Text: Updated!

34,141

64

33

Introduction: Colorduino Scrolling Text: Updated!

In this instructable you're going to learn how to do scrolling text on a RGB LED Matrix using the colorduino board from iTead studios. The colorduino is basically a RGB LED Matrix driver that takes a lot of the work out of driving LED Matrixes. In a combination with different libraries it is really easy to create cool effects and graphics with it. Its an inexpensive project and fun to play around with :).

Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

Step 1: Parts

This project does not require many external components.

Parts List
==========

RGB LED Matrix
    - (this is the cheapest and the one I use)  Ebay
    - (Available from colorduino site) iTead

Colorduino
    - iTead 

FTDI or Arduino
for programming


    - Sparkfun

Jumper Wires 
Male to Male  


    - Australian Robotics

The arduino IDE installed and basic knowledge of uploading sketches.

Step 2: Wiring the Colorduino

The next step is to upload the attached code to the colorduino. To do this you can either use an FTDI adapter or another arduino. Since my FTDI adapter was broken i used my arduino to upload the code. This is good if you want put an Atmega328 chip into a breadboard and be able to program it. This method only works if you have an arduino with a replaceable chip.

1. First step to using the arduino as an FTDI programmer is to take out the Atmega328 Chip
2. Connect the wires as told in the Pin Connections table below
3. Change the board type in the Arduino IDE to: Arduino Duemilanove
4. Change to appropriate serial port

Pin Connections
=============

Colorduino || Arduino 

DTR         ->  Reset
GND        ->  GND
TXD         ->   Pin 1
RXD        ->   Pin 0
VDD        ->   +5v

============

Step 3: Programming the Colorduino

Libraries:

In order to achieve scrolling text, two libraries are required. The Scroll library created for this instructable, as well as a modified version of the Colorduino Library by frederickk

Colorduino Library: https://github.com/Electromondo-Coding/Colorduino

Scroll Library: https://github.com/Electromondo-Coding/ColorduinoScrollerLibrary

Installing:

To install the libraries, download the zip of the repo by hovering over the 'Clone/Download' and choosing 'Download Zip'. Then extract the zip in your Arduino's library folder (Documents/Arduino/libraries on Windows). Restart Arduino, and there should be two examples for the Scroll Library.



Step 4: Plugging in the Matrix

To connect the matrix to the colorduino, align pin 1 of the matrix to pin 1 on the colorduino. After plugging it you should see the message scrolling across the display!

Step 5: Demonstration and Final Thoughts



This code is just the start of the possibilities that the colorduino has to offer. You could make interactive displays, display graphics and pictures as well as making signs. Thanks for looking at my tutorial and I hope this has helped you in some way.

123D Circuits Contest

Participated in the
123D Circuits Contest

Be the First to Share

    Recommendations

    • LED Strip Speed Challenge

      LED Strip Speed Challenge
    • Sculpting Challenge

      Sculpting Challenge
    • Clocks Contest

      Clocks Contest

    33 Discussions

    0
    blowfelt
    blowfelt

    5 years ago on Introduction

    Hi Guys has anyone managed this with more colorduino so that you can have an 8 by 32 matrix ?

    0
    PoisonMondo
    PoisonMondo

    Reply 5 years ago on Introduction

    I've tested this code with 2 colorduino's to form a 16x8 display. All you need to do is increment the display number value for each colorduino.

    0
    PoisonMondo
    PoisonMondo

    Reply 5 years ago on Introduction

    EDIT: On the code page, use the download and install the scroll library. Once you install the scroll library, take a look at the example where you will find the displaynumber variable.

    0
    gcano936
    gcano936

    Reply 5 months ago

    Didn't find the displaynumber variable?

    0
    Tachyon
    Tachyon

    Reply 2 years ago

    But does the library handle spanning the displays automatically or does this need to be handled by the user's code?

    IE if I want to scan "some example text" across three displays, do I just put a "3" into the displays field and it all starts scrolling at display one and goes across to two and off the edge of three?

    0
    Tachyon
    Tachyon

    Reply 2 years ago

    OK, I looked at the scrolltext (which I didn't realize was sample code) and it SEEMS like you just define the number of displays in the line

    int displaynumber = 1;

    And then the library handles it from there, starting the scroll at the display listed in the "Colorduino.drawChar" line. (display 1 in the sample code)

    Is this correct?

    0
    PoisonMondo
    PoisonMondo

    Reply 2 years ago

    No, this code was written quickly and it has no way of knowing how many displays are connected to each other. You upload the code to each colorduino, incrementing the displaynumber variable for each display

    eg.

    displaynumber = 1 | colorduino1

    displaynumber = 2 | colorduino 2

    displaynumber = 3 | colorduino 3

    to form a 24x8 display.

    0
    dancopy
    dancopy

    1 year ago

    I recorded the "Standalone Scroll" sketch on a Colorduino normally but it shows nothing. Arduino 1.8.5

    0
    dancopy
    dancopy

    1 year ago

    Hello PoisonMondo!
    How to change the font type used in Matrix?

    0
    PoisonMondo
    PoisonMondo

    Reply 1 year ago

    I have since recreated most of the original functionality of this library. This is now in the master branch of the github repo. Currently it only supports one display, but no longer requires Colorduino_GFX or Adafruit_GFX libraries.

    0
    gusantor
    gusantor

    4 years ago

    hello, I downloaded libraries.zip & ScrollTextV2.txt, copy libraries to my libraries folder, copy paste ScrollTextv2 to a new sketch. load to board.

    I have a text scrolling but is tooooo slooooow and characters are flickering, it takes over a minute to display first "H"

    may I do something to correct this (this happend with scroll speed t=200, changing it to smaller values doesn't affect this behavior)

    thanks

    0
    dancopy
    dancopy

    Reply 1 year ago

    Are you using the Arduino IDE 1.0, how did I tell Tachyon?

    0
    dancopy
    dancopy

    Reply 2 years ago

    Hi, gusantor! Solved your problem? I'm going through the same problem; any tips? Thank you

    0
    PoisonMondo
    PoisonMondo

    Reply 4 years ago

    I'll take a look shortly

    0
    Tachyon
    Tachyon

    1 year ago

    I would sure like to see concise instructions on how to use 2 or 3 displays connected together. Do you program all three with the same code? Do you need different code on each?

    0
    dancopy
    dancopy

    Reply 1 year ago

    Hi, did you find out yet? If no...
    First, install all libraries correctly; Use
    the Arduino IDE 1.0

    Write the "ScrollTextv2.txtScrollTextv2.txt"
    sketch on the first Colorduino by typing 1 in the line "int
    displaynumber = 1;" for the first Colorduino. Then, write the same sketch in the second Colorduino, writing 2 in the line "int displaynumber = 1;" and so on successively if you use more Colorduino. After, connect the 2 or 3 Colorduino together and feed the Colorduino's right hand.

    0
    LakshmananC
    LakshmananC

    3 years ago

    gusantorjmqntmReply5 months ago
    Hello, I think it happened to me
    sorry for not posting this before. I found out that using arduino ide 1.6.5, gives bad result, as stated below
    just using arduino ide 1.0.5, alows me to run this GREAT CODE !! THANKS ! :)

    As gusantor mentioned, it doesn't work with current versions of Arduino IDE. Can we do something to make this work with current versions of IDE? Or is there a better code available to make this work?

    0
    dancopy
    dancopy

    Reply 2 years ago

    Hi LakshmananC
    I was testing with IDE 1.0.5-r2 and it says: processing.app.debug.RunnerException: Sketch too big; see http://www.arduino.cc/en/Guide/Troubleshooting#size for tips on reducing it;
    Would you have any tips? Thank you

    0
    PoisonMondo
    PoisonMondo

    Reply 3 years ago

    I haven't personally touched the project in a while or looked for alternatives. I will endeavour to update the code in the next week or so. Keep checking the github.