QRPrint library characters limit I am trying to use this library to print QR codes using Arduino. There is a limit on the number of characters allowed in the string to be printed.

printQR("This is the string to be QR encoded !!! Tralalala. Some other random characters !!!");


When I scan the generated QR code, the string seems to be truncated. Did anyone run into this before? Or is there any way to get around this issue by raising the number of characters allowed in the string?

Thank you.
The code in the library truncates to 47 characters for some reason:

void printQR(String message) {

...

  // create QR code
  message.toCharArray((char *)strinbuf,47);
  qrencode();


The buffer is actually 116 bytes, oddly.

unsigned char strinbuf[116];


It's a little unclear why the limit of 47, or 116, was chosen.

You could try changing that line in qrprint.cpp to increase the number from 47 to at least 115.



Edit

After reading some of the comments, I doubt that will help. The QR code looks like it is generated into an internal array, which would have to have some size limits due to the amount of RAM available. The current array size is:

unsigned char qrframe[600];


That is already 1/3 of the available memory on a Uno.