SparkFun will be closed Nov 26th and 27th for the Thanksgiving holiday. Orders placed after 2:00pm MT on the 25th will ship out Monday the 30th.

Member #400194

Member Since: January 20, 2013

Country: United States

  • It did not run correctly on any of my boards (Leonardo, Due). Thus, I dumped the library, determined the analogRead values for every key (which might be different per board), increase them a little bit (about 10 points) and use the following program adapted from DFrobot example code to use the five buttons on the Romeo, but added a threshold of 20, because the keyboard is noisy:

    int key=-1;
    int oldkey=-1;
    int adc_key_val [12] = {45,85,125,170,215,260,300,345,380,425,470,510};
    int adc_key_in;
    void setup()
    void loop(){ 
     if ((key != oldkey) && (key !=-1)){ Serial.println(key);}
     int get_key(unsigned int input){
     int k;
    for (k=0; k<12; k++){
      if (input<20){k=-1; return k;}
      if (input<adc_key_val[k]){k=12-k; return k;}
      if (k>=12){k=-1;return k;}

No public wish lists :(