now it works ![]()
  shiftOut(clockPin, dataPin, LSBFIRST, matrix);
  shiftOut(clockPin, dataPin, MSBFIRST, ~(1<<i));
I did not pay attention to it
must be
  shiftOut(dataPin, clockPin, LSBFIRST, matrix[i]);
  shiftOut(dataPin, clockPin, MSBFIRST, ~(1<<i));
thanks a lot for your helps paul