The application.h
is part of the Spark infrastructure and does not need to be present in the project folder.
Have you got only .h
& .cpp
files and exactly one .ino
file in your folder? If not, make sure of it.
The application.h
is part of the Spark infrastructure and does not need to be present in the project folder.
Have you got only .h
& .cpp
files and exactly one .ino
file in your folder? If not, make sure of it.
OK, Big thanks required to :-
and @bko & @Dave for your positive thoughts!! (it all helps!)
JUST COMPILED MY FIRST FOLDER THROUGH SPARK DEV (BIG TICK)
Thanks
Time for a celebratory cup of tea and a festive mice pie to build up a head of steam to get into that 16x32 matrix ( which is where we started )
@ScruffR, what other things are part of the spark infrastructure?
I am looking for gamma.h, SparkIntervalTimer.h and Adafruit_mfGFX.h?
In fact, is there a list of them somewhere?
These three are libraries tha have to be added to your project folder (gamma is part of the Adafruit_mfGFX lib by @peekay123, SparkIntervalTimer is a seperate one by the same awesome guy).
Usually you’ll find an indication what other libraries will be needed in the repo of the individual libraries.
A good starting point for available libraries is the Web IDE library inventory.
@peekay123 , @ScruffR, I just wondered, with the optimised library do you think a core could run one 32x32 display or more?
Has anyone had two displays side by side and linked to give say a 16 x 64 or a 64 x 32 display? (and then scrolled text across both of them?)
As said already - one 32x32 panel with or two 32x32 without double buffering is no problem.
Or four 32x16 panels would give you a 128x16 scroll text display
(repaired broken link)
I saw this and thought… I wonder if…
And this, wooooow,
Want one, need to make that!!
Given the experiance I’ve made with my two panels, the video cube should be possible with no real tweaking, since it seems to show the same picture on all six faces, so you provide one pic from the Core and this gets forwarded through to all daisy chained panels. You just need to supply enough power (5V x 2A per panel = 60W).
This at least worked for two panels that way.
The video wall is a different kettle of fish, since you need to provide a different pic for each panel, for which the Core has not enough RAM.
The Photon will allow more panels, but then speed might become an issue.
If you look at the hardware used for the video wall, you’ll find some more computational power.
@ScruffR, the key word here is “video”. Both the video cube and wall take a video feed (DVI, display port, etc) to display. Neither the Core or the Photon could do that. There is some really nice high-speed matrix panel stuff for the Teensy3 product that uses DMA for high-speed refresh. The biggest issue with the Core and possibly Photon is that none of the GPIO are mapped to a single port, making it difficult for DMA to be used. I would love to optimize the RGBMatrixPanel even more to handle more panels and higher refresh rates!
@peekay123, that’s a valid point
But what does one consider a video. Any moving picture (e.g. the Teensy demo seems to be an animated GIF) or does it have to come from a standard video feed.
If it’s animations rather than video the video-cube demos may also be possible on the Core - sure, propper video would not work.
So what would @Julian want to do with it?
And as mentioned in one of my earlier posts, I have squeezed a teeny-weeny bit of speed out of your RGBmatrixPanel lib by remapping the R1, G1, B1, R2, G2, B2 pins to the low byte of GPIOA.
I have not timed it yet, tho’.
And I haven’t gone the ASM route yet either.
@ScruffR, video is video dude! I think you are talking about animation. Nonetheless your point is valid. BTW, I posted the optimized RGB pin library last week. I find that it add 30-50% improvement in frame rate!
What I would love to see is FastLed for the Core/Photon where you could do some serious animation on “smart” LEDs like neopixels. I posted a message on the authors github to see if the Spark Community could help move the port along.
I’d like to see that, too.
And yes, I was a bit flimsy in using the term “video” - I repent in sackcloth and ashes
And yes, I’ve built ontop of your lib from last week and think to have squeezed out a few CPU cycles per pixel again.
You boys! What do I want to do with it??? It is blinky, shiney, colourfull, bright, vivid, dazzling goodness.
I just want to look at it (in awe).
When you have a display that big you could have different feeds on each panel, @peekay123 different sides of the cube for different weather forecasts for different cities?
With a display cube like that you would be in line for casting as the next BOND villain.
With a display cube like that world domination is your next call!!
OK getting a bit giddy now - But I do like it.
@Julian, you can never have enough techy, shinny stuf… SQUIRREL! Sorry, got distracted. I want it all!!
Hi, I’m one of the people doing high-speed refresh of matrix displays on the Teensy 3 using DMA. I looked into the details of the Photon and given what I saw of the pinout, memory, CPU, and DMA capabilities it looks promising. I’m not planning on porting the SmartMatrix Library to the Core, but I was one of the first people to preorder the Photon and I’m anxiously waiting for it.
-Louis
@peekay123, How do you change the font of your script?
@Dave, I know you said
I have found that if I touch the ribbon connector to the display then I can egt all sorts of "different" effects (non of which are welcome), have you tried upgrading the cable to avoid the glitches?
OK, I’m not the master himself, but to change the font you’d need to uncomment the desired fonts in fonts.h
and then call matrix.setFont()
.
e.g. in fonts.h
//Font selection for compiling - comment out or uncomment definitions as required
//NOTE: GLCDFONT is default font and always included
//#define TIMESNEWROMAN8
//#define CENTURYGOTHIC8
//#define ARIAL8
#define COMICSANSMS8
//#define TESTFONT
// Font selection descriptors - Add an entry for each new font and number sequentially
//#define TIMESNR_8 0
//#define CENTURY_8 1
//#define ARIAL_8 2
#define COMICS_8 3
#define GLCDFONT 4
//#define TEST 5
in your sketch
...
matrix.setFont(COMICS_8);
...
Thank you very very much I will give it a try. I am still getting to grips with Spark Dev. I am unsure if I am doing things correctly but it seems to be working for me so …