I have a noob question about changing the default parameters in the led-matrix.h file.
First off - what do I do with it? I see this bit of code:
#include “led-matrix.h”
using rgb_matrix::RGBMatrix;
int main(int argc, char **argv) {
// Set some defaults
RGBMatrix::Options my_defaults;
my_defaults.hardware_mapping = “adafruit-hat”; // or e.g. “adafruit-hat” or “adafruit-hat-pwm”
my_defaults.chain_length = 2;
my_defaults.show_refresh_rate = true;
rgb_matrix::RuntimeOptions runtime_defaults;
// If you drop privileges, the root user you start the program with
// to be able to initialize the hardware will be switched to an unprivileged
// user to minimize a potential security attack surface.
runtime_defaults.drop_privileges = 1;
RGBMatrix *matrix = RGBMatrix::CreateFromFlags(&argc, &argv,
&my_defaults,
&runtime_defaults);
if (matrix == NULL) {
PrintMatrixFlags(stderr, my_defaults, runtime_defaults);
return 1;
}
// matrix->ApplyPixelMapper(…); // Optional
// Do your own command line handling with the remaining options.
// … now use matrix
delete matrix; // Make sure to delete it in the end.
}
Where do I put this? Do I need to insert it into the led-matrix.h file?
I have two 32x64 running chained (32x128) and using “adafruit-hat”, but when I enter these values into the led-matrix.h with the aforementioned code, adding " my_defaults.rows=32" and " my_defaults.cols=64", and then I run ./demo, it just says that all the standard defaults are all still the same defaults without any changes.
led_options.show_refresh_rate = true;
runtime.drop_privileges = 1;
if (!rgb_matrix::ParseOptionsFromFlags(&argc, &argv, &led_options, &runtime)) {
rgb_matrix::PrintMatrixFlags(stderr);
return 1;
}
// Do your own command line handling with the remaining flags.
while (getopt()) {…}
// Looks like we’re ready to start
RGBMatrix *matrix = RGBMatrix::CreateFromOptions(led_options, runtime);
if (matrix == NULL) {
return 1;
}
// … now use matrix
delete matrix; // Make sure to delete it in the end to switch off LEDs.
return 0;
}
// This parses the flags from argv and updates the structs with the parsed-out
// values. Structs can be NULL if you are not interested in it.
But I’m still getting:
Size: 32x32. Hardware gpio mapping: regular
Do I also need to change the “led-matrix-c.h” file?