Esempio n. 1
0
void setup() {
    pinMode(beeper, OUTPUT);
    pinMode(led_RGB_1, OUTPUT);
    pinMode(led_RGB_2, OUTPUT);
    pinMode(button_set_mins_in, INPUT);
    pinMode(button_set_hrs_in, INPUT);
    pinMode(button_settings_in, INPUT);
    pinMode(alarm_off_1, INPUT);
    pinMode(alarm_off_2, INPUT);
    pinMode(alarm_wire, INPUT);
    
    
    digitalWrite(beeper, LOW);
    digitalWrite(led_RGB_1, LOW);
    digitalWrite(led_RGB_2, LOW);
    
    
    
    Serial.begin(9600);
    Serial.println("7 Segment Backpack Test");
    
    matrix.begin(0x70);
    
    matrix.setBrightness(brightness);
}
Esempio n. 2
0
void setup() {
#ifndef __AVR_ATtiny85__
  Serial.begin(9600);
  Serial.println("7 Segment Backpack Test");
#endif
  matrix.begin(0x70);
  matrix.setBrightness(1);
}
Esempio n. 3
0
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Print :[ rolling
void print_sad(){
    
    matrix.drawColon(true);
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B00111001); //"["
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del*2);
    
}
Esempio n. 4
0
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Draw dots every second - On/Off
void drawDots(){
    gettime();
    
    if((s%2) == 1){
        matrix.drawColon(false);
        matrix.writeDisplay();
    }
    else{
        matrix.drawColon(true);
        matrix.writeDisplay();
    }
    
}
Esempio n. 5
0
//display the current time on the 7-segment display
void refreshDisplayTime() {
    unsigned long currentTime = Time.now();
    int minute = Time.minute(currentTime);
    int hour;
    int digits;

    if(preferences.hourFormat == 12) {
        hour = Time.hourFormat12(currentTime);
    } else {
        hour = Time.hour(currentTime);
    }

    digits = hour/10*1000 + hour%10*100 + minute/10*10 + minute%10;

    display.print(digits);
    display.drawColon(true);
    display.writeDisplay();
}
Esempio n. 6
0
void writetime(){
    
    gettime();
    
    h1 = time/1000;
    time -= h1*1000;
    
    h2 = time/100;
    time -= h2*100;
    
    m3 = time/10;
    m4 = time%10;
    
    matrix.writeDigitNum(0, h1);
    matrix.writeDigitNum(1, h2);
    matrix.writeDigitNum(3, m3);
    matrix.writeDigitNum(4, m4);
    matrix.writeDisplay();
}
Esempio n. 7
0
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Function to set time offset in minutes and hours
void set_hrs_mins(){
    
    
    if (digitalRead(button_set_mins_in) == HIGH){ //check minutes button
        offset_m = offset_m + 60000; //add one minute to offset
        
        beep();
        Serial.print("Increment minutes");
        Serial.print(offset_m);
        Serial.print("\n");
        delay(200);
    }
    if (digitalRead(button_set_hrs_in) == HIGH){ //check hours button
        offset_m = offset_m + 60*60000; //add 60*1 minutes to offset the time
        
        beep();
        Serial.print("Increment hours");
        Serial.print(offset_m);
        Serial.print("\n");
        delay(200);
    }
    
    beepOK = 0;
    gettime();
    
    //Now make the display blink while setting the time.
    
    if((millis_left%1000) > 500){ //0.5 seconds lit up
        writetime();
        matrix.drawColon(true);
        matrix.writeDisplay();
    }
    else{
        matrix.drawColon(false); //0.5 seconds lit off
        matrix.writeDigitRaw(0,B00000000); //" "
        matrix.writeDigitRaw(1,B00000000); //" "
        matrix.writeDigitRaw(3,B00000000); //" "
        matrix.writeDigitRaw(4,B00000000); //" "
        matrix.writeDisplay();
    }
    
    
}
Esempio n. 8
0
void loop() {
  // try to print a number thats too long
  matrix.print(10000, DEC);
  matrix.writeDisplay();
  delay(500);

  // print a hex number
  matrix.print(0xBEEF, HEX);
  matrix.writeDisplay();
  delay(500);

  // print a floating point
  matrix.print(12.34);
  matrix.writeDisplay();
  delay(500);

  // print with print/println
  for (uint16_t counter = 0; counter < 9999; counter++) {
    matrix.println(counter);
    matrix.writeDisplay();
    delay(10);
  }

  // method #2 - draw each digit
  uint16_t blinkcounter = 0;
  boolean drawDots = false;
  for (uint16_t counter = 0; counter < 9999; counter ++) {
    matrix.writeDigitNum(0, (counter / 1000), drawDots);
    matrix.writeDigitNum(1, (counter / 100) % 10, drawDots);
    matrix.drawColon(drawDots);
    matrix.writeDigitNum(3, (counter / 10) % 10, drawDots);
    matrix.writeDigitNum(4, counter % 10, drawDots);

    blinkcounter+=50;
    if (blinkcounter < 500) {
      drawDots = false;
    } else if (blinkcounter < 1000) {
      drawDots = true;
    } else {
      blinkcounter = 0;
    }
    matrix.writeDisplay();
    delay(10);
  }
}
Esempio n. 9
0
void setup() {
    //EEPROM.clear();
    testString = "zo345566";
    EEPROM.get(0, preferences);
    testString += "get";
    if(preferences.version != 0) {
        preferences.version = 0;
        preferences.timeZone = -8;
        preferences.hourFormat = 12;
        preferences.piezoHertz = 2000;
        preferences.LEDCurrent = 700;
        preferences.LEDBrightness = 100;
        preferences.dstRule = DST_US;
        for(int i=0; i<32; ++i) {
            preferences.alarmTimes[i][0] = -1;
        }
        EEPROM.put(0, preferences);
        testString += "put";
    }

    //Converts preferences.alarmTimes to vectorAlarmTimes
    for(int i=0; i<32; ++i) {
        if(preferences.alarmTimes[i][0] != -1) {
            std::vector<int> temp;
            temp.push_back(preferences.alarmTimes[i][0]);
            temp.push_back(preferences.alarmTimes[i][1]);
            temp.push_back(preferences.alarmTimes[i][2]);
            temp.push_back(preferences.alarmTimes[i][3]);
            temp.push_back(preferences.alarmTimes[i][4]);
            temp.push_back(preferences.alarmTimes[i][5]);
            temp.push_back(preferences.alarmTimes[i][6]);
            temp.push_back(preferences.alarmTimes[i][7]);
            vectorAlarmTimes.push_back(temp);
        }
    }

    testString += preferences.timeZone;
    testString += preferences.hourFormat;
    testString += preferences.piezoHertz;
    testString += preferences.LEDCurrent;
    testString += preferences.LEDBrightness;
    testString += preferences.dstRule;

    if(preferences.dstRule == DST_US) {
        DSTJumpHour = 2;
    } else if(preferences.dstRule == DST_EU) {
        DSTJumpHour = 1 + preferences.timeZone;
    } else {
        DSTJumpHour = 0;
    }

    //Set the proper time zone according to DST status
    Time.zone(isDST(Time.day(), Time.month(), Time.weekday(), preferences.dstRule) ? preferences.timeZone + 1 : preferences.timeZone);
    //testString += isDST(Time.day(), Time.month(), Time.weekday(), preferences.dstRule);

    //Setup the 7-segment display, temperature sensor, and audio amp
    display.begin(0x70);
    display.setBrightness(15); //TODO: adjust brightness to optimize for veneer/time
    tempSensor.begin();
    tempSensor.setResolution(MCP9808_SLOWEST);
    audioAmp.begin();

    //Pin setup
    pinMode(LEDPin, OUTPUT);

    //Add alarms stored in eeprom
    addAlarms();

    //Cloud functions and variables
    Particle.function("CreateAlarm", createAlarm);
    Particle.function("DeleteAlarm", deleteAlarm);
    Particle.variable("Temperature", temp);
    Particle.variable("alarmString", alarmString);
    Particle.variable("testString", testString);
}
Esempio n. 10
0
void print_alarm_off(){
    matrix.drawColon(false);
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDigitRaw(4,B01110111); //"A"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B01110111); //"A"
    matrix.writeDigitRaw(4,B00111000); //"l"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B01110111); //"A"
    matrix.writeDigitRaw(3,B00111000); //"l"
    matrix.writeDigitRaw(4,B11010000); //"r."
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B01110111); //"A"
    matrix.writeDigitRaw(1,B00111000); //"l"
    matrix.writeDigitRaw(3,B11010000); //"r."
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del2);
    
    matrix.writeDigitRaw(0,B00111000); //"l"
    matrix.writeDigitRaw(1,B11010000); //"r."
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDigitRaw(4,B00111111); //"O"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B11010000); //"r."
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B00111111); //"O"
    matrix.writeDigitRaw(4,B01110001); //"F"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B00111111); //"O"
    matrix.writeDigitRaw(3,B01110001); //"F"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00111111); //"O"
    matrix.writeDigitRaw(1,B01110001); //"F"
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del2);
    
    matrix.writeDigitRaw(0,B01110001); //"F"
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDisplay();
    delay(del);  
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDisplay();
    delay(del*3); 
    
}
Esempio n. 11
0
void loop() {
    
    
    //Write time
    Serial.print(" --- Time \n");
    writetime();
    delay(30);
    
    
    //Draw dots
    drawDots();
    delay(30);
    
    
    //Check whether to go into settings mode
    if(digitalRead(button_settings_in) == HIGH){
        beep();
        Serial.print("In settings \n");
        settings();
    }
    delay(30);
    
    
    //Now check if we have alarm acivated!
    gettime();
    //Serial.print("Before: Alarm = ");
    //Serial.print(alarm);
    //Serial.print("\n");
    //delay(30);
    if( time == alarm_1_time && alarm){
        //alarm = 0;
        alarm_beep();  //Play the beep
        Serial.print("NO MORE BEEP \n");
        delay(500);
    }
    else if(time != alarm_1_time) alarm = 1;
    //Serial.print("After: Alarm = ");
    //Serial.print(alarm);
    //Serial.print("\n");
    //Serial.print("NO ALARM \n");
    //delay(60);
    
    //Check brightness
    if (digitalRead(button_set_mins_in) == HIGH){ //check minutes button
        brightness++; //increase brightness
        beep();
        if( brightness > 15 ) { brightness = 15; delay(beep_delay); beep(); delay(beep_delay); beep(); }
        matrix.setBrightness(brightness);
        Serial.print("Brightness level changed:");
        Serial.print(brightness);
        Serial.print("\n");
        delay(150);
    }
    if (digitalRead(button_set_hrs_in) == HIGH){ //check hours button
        brightness--; //decrease brightness
        beep();
        if( brightness < 0 ) { brightness = 0; delay(beep_delay); beep(); delay(beep_delay); beep(); }
        matrix.setBrightness(brightness);
        Serial.print("Brightness level changed:");
        Serial.print(brightness);
        Serial.print("\n");
        delay(150);
    }
    
}
Esempio n. 12
0
//Print "Set Alr. 1" on screen - Rolling
void print_set_alrarm_1(){
    
    matrix.drawColon(false);
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    //" "
    //" "
    //" "
    matrix.writeDigitRaw(4,B01101101); //"S"
    matrix.writeDisplay();
    delay(del);
    
    //" "
    //" "
    matrix.writeDigitRaw(3,B01101101); //"S"
    matrix.writeDigitRaw(4,B01111001); //"E"
    matrix.writeDisplay();
    delay(del);
    
    //" "
    matrix.writeDigitRaw(1,B01101101); //"S"
    matrix.writeDigitRaw(3,B01111001); //"E"
    matrix.writeDigitRaw(4,B01111000); //"t"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B01101101); //"S"
    matrix.writeDigitRaw(1,B01111001); //"E"
    matrix.writeDigitRaw(3,B01111000); //"t"
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del2);
    
    matrix.writeDigitRaw(0,B01111001); //"E"
    matrix.writeDigitRaw(1,B01111000); //"t"
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDigitRaw(4,B01110111); //"A"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B01111000); //"t"
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B01110111); //"A"
    matrix.writeDigitRaw(4,B00111000); //"l"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B01110111); //"A"
    matrix.writeDigitRaw(3,B00111000); //"l"
    matrix.writeDigitRaw(4,B11010000); //"r."
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B01110111); //"A"
    matrix.writeDigitRaw(1,B00111000); //"l"
    matrix.writeDigitRaw(3,B11010000); //"r."
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del2);
    
    matrix.writeDigitRaw(0,B00111000); //"l"
    matrix.writeDigitRaw(1,B11010000); //"r."
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDigitRaw(4,B00000110); //"1"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B11010000); //"r."
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B00000110); //"1"
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B00000110); //"1"
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00000110); //"1"
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDisplay();
    delay(del2);
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDisplay();
    delay(del*3);
}
Esempio n. 13
0
void print_out(){ //Print "Out" on screen. Rolling.
    
    matrix.drawColon(false);
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDigitRaw(4,000000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    //matrix.writeDigitRaw(0,B00000000); //" "
    //matrix.writeDigitRaw(1,B00000000); //" "
    //matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDigitRaw(4,B00111111); //"O"
    matrix.writeDisplay();
    delay(del);
    
    //matrix.writeDigitRaw(0,B00000000); //" "
    //matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B00111111); //"O"
    matrix.writeDigitRaw(4,B00011100); //"u"
    matrix.writeDisplay();
    delay(del);
    
    //matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B00111111); //"O"
    matrix.writeDigitRaw(3,B00011100); //"u"
    matrix.writeDigitRaw(4,B01111000); //"t"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00111111); //"O"
    matrix.writeDigitRaw(1,B00011100); //"u"
    matrix.writeDigitRaw(3,B01111000); //"t"
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del2);
    
    matrix.writeDigitRaw(0,B00011100); //"E"
    matrix.writeDigitRaw(1,B01111000); //"t"
    matrix.writeDigitRaw(3,B00000000); //" "
    //matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B01111000); //"t"
    matrix.writeDigitRaw(1,B00000000); //" "
    //matrix.writeDigitRaw(3,B00000000); //" "
    //matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDisplay();
    delay(del*3);
}
Esempio n. 14
0
//Print "Set Hour" on screen - Rolling
void print_set(){
    
    matrix.drawColon(false);
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDigitRaw(4,000000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    //" "
    //" "
    //" "
    matrix.writeDigitRaw(4,B01101101); //"S"
    matrix.writeDisplay();
    delay(del);
    
    //" "
    //" "
    matrix.writeDigitRaw(3,B01101101); //"S"
    matrix.writeDigitRaw(4,B01111001); //"E"
    matrix.writeDisplay();
    delay(del);
    
    //" "
    matrix.writeDigitRaw(1,B01101101); //"S"
    matrix.writeDigitRaw(3,B01111001); //"E"
    matrix.writeDigitRaw(4,B01111000); //"t"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B01101101); //"S"
    matrix.writeDigitRaw(1,B01111001); //"E"
    matrix.writeDigitRaw(3,B01111000); //"t"
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del2);
    
    matrix.writeDigitRaw(0,B01111001); //"E"
    matrix.writeDigitRaw(1,B01111000); //"t"
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDigitRaw(4,B01110110); //"H"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B01111000); //"t"
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDigitRaw(3,B01110110); //"H"
    matrix.writeDigitRaw(4,B01011100); //"o"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDigitRaw(1,B01110110); //"H"
    matrix.writeDigitRaw(3,B01011100); //"o"
    matrix.writeDigitRaw(4,B00011100); //"u"
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B01110110); //"H"
    matrix.writeDigitRaw(1,B01011100); //"o"
    matrix.writeDigitRaw(3,B00011100); //"u"
    matrix.writeDigitRaw(4,B01010000); //"r"
    matrix.writeDisplay();
    delay(del2);
    
    matrix.writeDigitRaw(0,B01011100); //"o"
    matrix.writeDigitRaw(1,B00011100); //"u"
    matrix.writeDigitRaw(3,B01010000); //"r"
    matrix.writeDigitRaw(4,B00000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00011100); //"u"
    matrix.writeDigitRaw(1,B01010000); //"r"
    matrix.writeDigitRaw(3,B00000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B01010000); //"r"
    matrix.writeDigitRaw(1,B00000000); //" "
    matrix.writeDisplay();
    delay(del);
    
    matrix.writeDigitRaw(0,B00000000); //" "
    matrix.writeDisplay();
    delay(del*3);
    
    
}
Esempio n. 15
0
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Function to set Alarm time 1
void set_alarm_1(){
    
    
    
    if (digitalRead(button_set_mins_in) == HIGH){ //check minutes button
        if(alarm_1_time==2400){ alarm_1_time = 0; }
        alarm_1_time++; //add one minute to offset
        
        beep();
        Serial.print("Increment alarm minutes ");
        Serial.print(alarm_1_time);
        Serial.print("\n");
        delay(200);
    }
    
    if (digitalRead(button_set_hrs_in) == HIGH){ //check hours button
        if(alarm_1_time==2400){ alarm_1_time = 0; }
        alarm_1_time += 100; //add 60*1 minutes to offset the time
        
        beep();
        Serial.print("Increment alarm hours ");
        Serial.print(alarm_1_time);
        Serial.print("\n");
        delay(200);
    }
    
    if(alarm_1_time%100 == 60){ //alarm time is now maybe 1260, but it should not be!
        alarm_1_time += 40;       //alarm time goes to 1300
        Serial.print("Alarm 1 time corrected to +40\n");
    }
    if(alarm_1_time > 2359){ //alarm time is now 2401, but it should not be!
        alarm_1_time = 2400;       //alarm time goes to 0000
        Serial.print("Alarm 1 time corrected to 0000\n");
    }
    
    Serial.print("Alarm 1 time: ");
    Serial.print(alarm_1_time);
    Serial.print("\n");
    
    
    
    gettime();
    
    //Now make the display blink while setting the Alarm 1 time.
    
    if((millis_left%1000) > 500){ //0.5 seconds lit up
        if(alarm_1_time == 2400){ //If alarm is deactivated from user
            matrix.drawColon(false);
            matrix.writeDigitRaw(0,B01000000); //"-"
            matrix.writeDigitRaw(1,B01000000); //"-"
            matrix.writeDigitRaw(3,B01000000); //"-"
            matrix.writeDigitRaw(4,B01000000); //"-"
            matrix.writeDisplay();
        }
        else{
            a1h1 = alarm_1_time/1000;
            a1h2 = ( alarm_1_time - a1h1 * 1000 ) / 100;
            a1m3 = ( alarm_1_time - a1h1 * 1000 - a1h2 * 100 ) / 10;
            a1m4 = alarm_1_time % 10;
            
            matrix.drawColon(true);
            matrix.writeDigitNum(0, a1h1);
            matrix.writeDigitNum(1, a1h2);
            matrix.writeDigitNum(3, a1m3);
            matrix.writeDigitNum(4, a1m4);
            matrix.writeDisplay();
        }
    }
    else{
        matrix.drawColon(false); //0.5 seconds lit off
        matrix.writeDigitRaw(0,B00000000); //" "
        matrix.writeDigitRaw(1,B00000000); //" "
        matrix.writeDigitRaw(3,B00000000); //" "
        matrix.writeDigitRaw(4,B00000000); //" "
        matrix.writeDisplay();
    }
    
}