Hello! I am working on a project with 2560 pixels running on Artnet over

@Stef_Weicks your datestrinf buffer is too small :wink:
You are writing for instance.
14:30:30 28/12/2018
it’s a 19 length string it cannot fir in 8 :wink:
So
char datestring[20] instead of 8 (this way you are sure
Plus in your code you ask two write second minute second instead of hour minute second and you need a space between the minutes and the day

@Yves_BAZIN ok yes you are right … i did it with char datestring[20] … but there is already a failure …
Stack smashing protect failure!
abort() was called at PC 0x400d815c on core 1
Backtrace: 0x400890a8 …
Rebooting…

in the web i didnt find some infos to this failures … its also not as easy as on the esp8266 to drive the RTC…

@Stef_Weicks can you read the RTC without calling the FastLED library

yes… the RTC works fine without any failures!

i have seen that if i commend this line:
sprintf(datestring,…)
the terminal calls no error … but then of course without an output

@Stef_Weicks I will look why

This is the code of the RTC-example which is working fine: https://gist.github.com/weicks/27a7f569b56957f51be5ba5ec83f0849

look at this line
“%02u:%02u:%02u%04u%02u/%02u/%04u”,
you try to display 7 numbers :slight_smile:

try this instead
sprintf(datestring,"%02u:%02u:%02u %02u/%02u/%04u", …

if i am doing this:
char datestring[8];
sprintf(datestring,"%02u:%02u:%02u", dt.Hour(), dt.Minute(), dt.Second());

the clock is working, but with the failure which i described above.

but if i´m doing this:
char datestring[9];
sprintf(datestring,"%02u:%02u:%02u", dt.Hour(), dt.Minute(), dt.Second());

there is no failure but the time doesnt work … after every softreset its writing the actual time but nothing more?!

@Stef_Weicks keep the 20 and not the 8 or the 9
:wink:
datastring[20];
There were two errors :wink:
The first mistake was the size of your buffer
The second one was too much parameters in the sprints :wink:

now i did this:
char datestring[20];

sprintf(datestring,"%02u:%02u:%02u",
dt.Hour(),
dt.Minute(),
dt.Second()
);

Serial.print(datestring);
matrix->print (datestring);

matrix->show();

the Serial.print(datestring); is counting every second as you can see here:
compiled: Aug 17 201821:01:43
21:01:43
RTC is the same as compile time! (not expected but all is fine)
Num Pixels: 512
21:01:43
21:01:44
21:01:45
21:01:46
21:01:47

but on my LED-display only the first available time is displayed (frozen) ?

Can you update your gist?

ok its up:

@Stef_Weicks not frozen I think
First you need to erase the panel before displaying again something
And then you use
matrix->print()
You have to have an instruction to put the cursor back to (0,0).

@Stef_Weicks try this
matrix_clear();
matrix->setCursor(0, 0);
before the matrix->print();

@Yves_BAZIN oh yes !! you are the king !! Thanx so much … i am trying the last 2 days with this shit!

@Stef_Weicks Ahahah no Pb :wink:
Next step get that working with the animation :wink:

am i so stupid? i searched the *.h files and the web for the commands matrix-> print and so on… to test different settings.
but i didn´t find them… ? is there a sheet where i can see this?
because maybe there is an option to get the font a little bit smaller…or do i have to do this over the asciifont-table

and yes, now the two things have to be merged together … i did understand that the clock has to be set between the frames of the animated clip. Unfortunately, I still don´t have enough practice on the implementation…maybe you could give me a hint to this?

@Stef_Weicks
In the read sd program
In the loop function you have memcpy(…); // this transfers the content of the frame in the ‘video memory’
Fastledshow32();
Then after memcpy
Add matrix->print();
And then
matrix->show() or fastledshow()

@Stef_Weicks the function you are looking for are in the adafruit_gfx library

ok … i will try the adafruit library to modify it a bit later…

i did the code as you said . now the clock is strangely displayed in green with i would say “dirty numbers” … lol