32x32 RGB Panel Example Code doesn't compile

EL Wire/Tape/Panels, LEDs, pixels and strips, LCDs and TFTs, etc products from Adafruit

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
twiereng
 
Posts: 38
Joined: Sun Nov 18, 2012 3:30 pm

32x32 RGB Panel Example Code doesn't compile

Post by twiereng »

Just got my Medium sized 32x32 RGB panel. While working on the wiring I tried to compile the colorwheel_32x32 example. Got the following errors.

C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp: In constructor 'RobotControl::RobotControl()':
C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp:8: error: 'LCD_CS' was not declared in this scope
C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp:8: error: 'DC_LCD' was not declared in this scope
C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp:8: error: 'RST_LCD' was not declared in this scope
C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp: In member function 'void RobotControl::begin()':
C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp:18: error: 'MUXA' was not declared in this scope
C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp:18: error: 'MUXB' was not declared in this scope
C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp:18: error: 'MUXC' was not declared in this scope
C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp:18: error: 'MUXD' was not declared in this scope
C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp:19: error: 'MUX_IN' was not declared in this scope
C:\Program Files (x86)\Arduino\libraries\Robot_Control\ArduinoRobot.cpp:22: error: 'BUZZ' was not declared in this scope

I don't see the Robot_Control library as needed in this code. What am I doing wrong?

Thanks, Theron

User avatar
pburgess
 
Posts: 4161
Joined: Sun Oct 26, 2008 2:29 am

Re: 32x32 RGB Panel Example Code doesn't compile

Post by pburgess »

Arduino 1.0.5 is wonky; you're not doing anything wrong.

Option 1: use Arduino 1.0.4 for the time being. Maybe this'll get fixed in 1.0.6.

Option 2: delete (or better yet, ZIP and set aside just in case) the Robot_Control library:
C:\Program Files (x86)\Arduino\libraries\Robot_Control

User avatar
twiereng
 
Posts: 38
Joined: Sun Nov 18, 2012 3:30 pm

Re: 32x32 RGB Panel Example Code doesn't compile

Post by twiereng »

I moved the Robot_Control folder in libraries to the desktop and it then compiled OK. Yikes, what's with Arduino 1.05? Thanks so much for your reply.

Regards, Theron

User avatar
adafruit_support_bill
 
Posts: 88096
Joined: Sat Feb 07, 2009 10:11 am

Re: 32x32 RGB Panel Example Code doesn't compile

Post by adafruit_support_bill »

Yikes, what's with Arduino 1.05?
Not sure. They added support for a bunch of new processors (including the RobotControl) and it seems that sometimes it just gets confused. I am running 1.0.5 here without problems, but we've had lots of reports of symptoms identical to yours. :?

User avatar
pburgess
 
Posts: 4161
Joined: Sun Oct 26, 2008 2:29 am

Re: 32x32 RGB Panel Example Code doesn't compile

Post by pburgess »

Around the time 1.0.5 came out, Arduino shipped a small color LCD add-on for their Esplora board and the Arduino Robot. It's totally compatible with one of Adafruit's LCDs, so rather than re-invent the wheel, they adopted two of our libraries and made them part of the 1.0.5 distribution. Hooray for open source!

Around the same time, I fixed a long-standing annoyance with our GFX library and all of the device-specific libraries that rely on it in turn. It wasn't a crash-and-burn bug, but there was some extra code that every library then needed to have and it was just goofy and unnecessary. Well, that got sorted out and I fixed the lot.

1.0.5 incorporated the GFX and LCD code from -just before- this change, rolling them into the Robot_Control library. The way the compiler works, the "baked in" libraries take precedence over whatever you might have installed in your own Libraries folder. So 'modernized' code tries to compile against a 'vintage' version of Adafruit_GFX and all hell breaks loose. Since 1.0.4 doesn't include Robot_Control, the problem doesn't manifest there.

I've already submitted (and they accepted) a pull request with the latest LCD & GFX libraries. It's probably present in the current 1.5.X IDE, I haven't checked. Anyway, if they put out another release in the 1.0.X series, it should appear there too and eventually this problem should go away.

Sometimes I contemplate going through and "re-breaking" all of the libraries to the old format...but Murphy says if I do this, it guarantees a new Arduino IDE release will come along incorporating the fixed code, and we're right back in the same position (except with goofyness in all of our libraries).

User avatar
twiereng
 
Posts: 38
Joined: Sun Nov 18, 2012 3:30 pm

Re: 32x32 RGB Panel Example Code doesn't compile

Post by twiereng »

Thank for the insight, I'll have to see what the next version brings.

Going through the RGBmatrixPanel library, I find Color888 method a little funky. It doesn't like high byte values close to 250 and above. The panel goes to weird flashing. I haven't gone through all the bit manipulation but there must be an error in there. Wish they had a few more explanations in the color code, like what values should be used. Also would like to see a data sheet on the panel itself.

Regards, Theron

User avatar
nigec
 
Posts: 1
Joined: Tue Nov 27, 2012 7:37 am

Re: 32x32 RGB Panel Example Code doesn't compile

Post by nigec »

I have just bought a 16 x 32 panel and a 32 x 32 panel. The 16 x 32 panel is running well under the 1.5.5 IDE on a MacBook Pro. I have yet to try my 32 x 32 panel. I will post results soon.

Locked
Please be positive and constructive with your questions and comments.

Return to “Glowy things (LCD, LED, TFT, EL) purchased at Adafruit”