HamShield/examples/SignalTest/SignalTest.ino

141 lines
89 KiB
Arduino
Raw Normal View History

/*
Plays back the current signal strength level and morses out it's call sign at the end.
*/
#define DOT 100
#define CALLSIGN "1ZZ9ZZ/B"
/* Standard libraries and variable init */
#include <HAMShield.h>
#include <Wire.h>
#include <PCM.h>
HAMShield radio;
int16_t rssi;
int peak = -150;
char sig[8];
/* Audio samples */
const unsigned char minus[] PROGMEM = {
130, 130, 130, 132, 134, 134, 135, 139, 141, 140, 141, 143, 141, 139, 139, 138, 135, 131, 129, 126, 122, 119, 117, 114, 111, 110, 110, 108, 107, 107, 107, 107, 108, 109, 110, 111, 113, 115, 116, 119, 121, 124, 126, 128, 129, 131, 133, 135, 135, 137, 138, 138, 137, 137, 137, 135, 134, 135, 134, 128, 126, 127, 124, 119, 120, 119, 113, 113, 120, 119, 117, 123, 129, 128, 131, 140, 143, 145, 153, 158, 158, 163, 168, 169, 168, 170, 168, 164, 161, 157, 149, 142, 136, 128, 121, 116, 109, 103, 100, 97, 92, 91, 92, 93, 93, 95, 99, 102, 105, 107, 110, 113, 117, 119, 120, 122, 125, 126, 128, 127, 126, 130, 131, 125, 123, 129, 126, 118, 117, 120, 113, 112, 117, 112, 101, 103, 108, 102, 98, 102, 102, 105, 121, 129, 128, 137, 160, 171, 172, 178, 185, 186, 189, 194, 192, 190, 192, 190, 181, 175, 167, 157, 148, 141, 130, 119, 112, 106, 99, 95, 91, 86, 84, 84, 85, 86, 89, 92, 95, 100, 106, 111, 116, 121, 126, 130, 134, 137, 139, 139, 139, 137, 134, 131, 125, 120, 115, 108, 101, 95, 90, 84, 80, 78, 75, 73, 75, 77, 77, 80, 83, 87, 91, 97, 100, 103, 112, 119, 118, 119, 125, 127, 123, 129, 135, 135, 142, 152, 153, 151, 165, 175, 179, 185, 194, 192, 193, 199, 199, 197, 197, 194, 183, 176, 167, 158, 151, 147, 138, 128, 119, 110, 102, 99, 97, 94, 93, 92, 87, 87, 91, 95, 104, 111, 115, 118, 122, 127, 133, 142, 149, 152, 156, 157, 159, 159, 161, 161, 161, 158, 151, 144, 139, 131, 124, 119, 111, 103, 94, 86, 78, 74, 71, 69, 69, 68, 66, 66, 69, 73, 77, 83, 86, 91, 96, 101, 104, 110, 109, 108, 107, 117, 118, 127, 144, 144, 143, 151, 171, 172, 186, 198, 205, 201, 205, 203, 198, 196, 192, 183, 169, 159, 143, 137, 129, 125, 115, 111, 100, 91, 85, 83, 80, 78, 79, 79, 80, 81, 85, 89, 95, 100, 109, 111, 116, 112, 109, 101, 108, 115, 146, 200, 224, 235, 230, 216, 180, 145, 125, 112, 112, 118, 118, 119, 118, 123, 133, 150, 166, 164, 161, 144, 126, 112, 108, 113, 119, 128, 130, 124, 124, 123, 126, 132, 137, 135, 129, 125, 118, 120, 126, 132, 139, 143, 141, 138, 135, 134, 132, 131, 130, 128, 128, 128, 130, 130, 129, 126, 123, 118, 115, 114, 115, 113, 113, 111, 109, 107, 107, 109, 109, 108, 108, 111, 115, 118, 114, 114, 107, 107, 106, 110, 115, 116, 114, 115, 109, 101, 89, 96, 105, 136, 201, 230, 247, 212, 159, 97, 62, 74, 112, 173, 199, 202, 174, 134, 107, 102, 119, 141, 153, 149, 129, 117, 112, 124, 140, 148, 146, 131, 116, 103, 103, 110, 117, 124, 128, 131, 135, 141, 146, 144, 139, 127, 119, 116, 119, 130, 139, 144, 142, 136, 131, 129, 130, 130, 130, 125, 120, 116, 117, 119, 121, 121, 117, 113, 109, 109, 110, 113, 111, 113, 111, 113, 113, 113, 113, 116, 116, 115, 110, 104, 101, 105, 114, 121, 123, 117, 110, 85, 83, 84, 115, 139, 206, 250, 241, 211, 132, 83, 50, 90, 143, 201, 219, 185, 148, 112, 108, 121, 143, 147, 139, 131, 124, 129, 136, 135, 131, 123, 124, 128, 135, 129, 118, 103, 97, 105, 123, 141, 149, 149, 140, 131, 124, 121, 119, 123, 128, 136, 143, 148, 145, 138, 131, 127, 128, 132, 133, 131, 127, 120, 116, 115, 118, 121, 125, 126, 121, 115, 112, 108, 107, 109, 112, 111, 109, 109, 111, 114, 115, 110, 109, 111, 115, 116, 112, 108, 97, 100, 101, 109, 110, 116, 108, 177, 255, 236, 180, 111, 87, 86, 142, 174, 166, 152, 148, 155, 156, 154, 121, 104, 119, 142, 148, 142, 131, 117, 120, 135, 136, 131, 128, 123, 116, 119, 115, 110, 112, 120, 129, 138, 146, 142, 135, 128, 125, 126, 128, 129, 132, 139, 144, 143, 137, 132, 133, 137, 137, 131, 123, 119, 116, 114, 113, 115, 120, 123, 120, 112, 106, 104, 106, 107, 104, 102, 105, 109, 113, 111, 110, 109, 109, 107, 108, 112, 114, 108, 100, 101, 99, 105, 97, 113, 129, 201, 246, 201, 165, 163, 175, 139, 120, 115, 134, 156, 154, 140, 147, 171, 161, 140, 131, 131, 130, 127, 114, 112, 127, 136, 125, 121, 130, 136, 129, 120, 117, 120, 120, 111, 107, 118, 136, 139, 138, 145, 152, 152, 145, 136, 132, 131, 130, 127, 130, 136, 134, 127, 125, 126, 122, 115, 110, 109, 110, 110, 106, 105, 106, 105, 102, 102, 101, 98, 100, 104, 103, 104, 108, 105, 104, 105, 106, 105, 108, 109, 109, 109, 110, 110, 107, 107, 117, 134, 145, 148, 155, 173, 178, 179, 182, 186, 186, 186, 184, 177, 176, 173, 168, 159, 151, 141, 137, 132, 124, 118, 119, 1
};
const unsigned char zero[] PROGMEM = {
123, 124, 123, 121, 122, 122, 121, 119, 117, 117, 117, 117, 114, 111, 112, 113, 112, 111, 111, 112, 116, 123, 134, 146, 154, 164, 176, 184, 189, 192, 194, 196, 197, 195, 189, 183, 175, 167, 156, 144, 132, 122, 113, 103, 95, 88, 86, 86, 86, 88, 88, 90, 92, 93, 93, 94, 96, 97, 98, 99, 98, 101, 98, 97, 99, 96, 93, 89, 88, 83, 80, 75, 75, 77, 80, 98, 113, 114, 128, 148, 165, 180, 192, 199, 213, 228, 228, 229, 229, 226, 224, 215, 197, 183, 174, 161, 144, 129, 116, 109, 105, 97, 92, 94, 99, 104, 108, 111, 120, 129, 134, 137, 138, 140, 141, 138, 131, 127, 125, 125, 118, 112, 107, 108, 105, 97, 99, 95, 101, 95, 97, 90, 92, 92, 83, 80, 73, 72, 67, 68, 60, 62, 59, 65, 70, 88, 104, 107, 123, 142, 162, 178, 193, 204, 222, 238, 241, 240, 240, 235, 230, 222, 206, 190, 177, 162, 145, 128, 115, 102, 101, 94, 93, 90, 95, 95, 105, 107, 115, 122, 131, 135, 136, 142, 141, 145, 138, 139, 131, 135, 123, 128, 112, 121, 103, 110, 100, 104, 101, 98, 101, 89, 100, 81, 93, 73, 87, 65, 82, 57, 74, 62, 60, 69, 54, 74, 74, 94, 97, 119, 128, 158, 166, 190, 196, 218, 231, 239, 240, 242, 241, 236, 230, 211, 198, 181, 167, 147, 136, 120, 114, 106, 100, 95, 93, 96, 102, 105, 116, 115, 127, 125, 132, 130, 133, 130, 131, 129, 125, 127, 122, 125, 117, 122, 113, 115, 106, 111, 102, 104, 98, 93, 90, 93, 83, 85, 85, 79, 86, 75, 83, 81, 81, 85, 79, 85, 94, 83, 98, 101, 126, 126, 140, 148, 157, 173, 183, 187, 192, 212, 210, 216, 204, 207, 200, 201, 182, 175, 166, 162, 147, 144, 133, 128, 129, 120, 118, 113, 121, 109, 123, 114, 123, 121, 122, 121, 122, 121, 124, 122, 125, 122, 119, 127, 115, 120, 115, 115, 116, 115, 105, 112, 101, 108, 100, 95, 101, 100, 101, 101, 95, 102, 102, 97, 89, 98, 103, 98, 106, 100, 107, 97, 110, 93, 113, 122, 129, 125, 140, 144, 151, 162, 158, 173, 173, 194, 172, 193, 182, 189, 186, 178, 165, 175, 165, 149, 149, 139, 146, 135, 129, 116, 130, 121, 130, 111, 125, 129, 128, 131, 117, 126, 135, 122, 130, 117, 117, 132, 119, 116, 108, 122, 121, 128, 93, 120, 114, 128, 100, 96, 124, 108, 107, 94, 91, 113, 109, 81, 108, 90, 114, 87, 104, 79, 109, 80, 97, 76, 87, 97, 63, 122, 61, 118, 59, 141, 104, 121, 135, 139, 177, 159, 188, 159, 233, 193, 208, 208, 228, 199, 208, 201, 173, 196, 166, 150, 148, 149, 120, 135, 120, 124, 120, 124, 127, 121, 145, 125, 143, 146, 149, 140, 149, 143, 137, 130, 113, 124, 82, 117, 67, 94, 83, 50, 103, 56, 72, 56, 72, 68, 34, 83, 28, 40, 53, 19, 35, 34, 116, 65, 110, 144, 156, 195, 184, 226, 220, 255, 233, 240, 250, 223, 228, 198, 189, 168, 153, 146, 112, 127, 111, 107, 109, 111, 116, 111, 130, 129, 145, 148, 159, 161, 165, 157, 167, 160, 132, 139, 129, 108, 102, 84, 68, 76, 57, 53, 49, 41, 58, 47, 29, 41, 54, 22, 0, 24, 33, 44, 68, 57, 101, 174, 130, 141, 231, 235, 207, 241, 255, 250, 239, 232, 221, 211, 190, 151, 145, 143, 114, 92, 107, 106, 91, 105, 119, 135, 149, 162, 181, 206, 218, 204, 205, 223, 199, 167, 163, 138, 106, 80, 51, 33, 8, 5, 6, 0, 0, 4, 0, 0, 0, 4, 32, 130, 98, 45, 217, 246, 142, 178, 255, 255, 209, 217, 220, 218, 201, 149, 134, 163, 137, 79, 91, 122, 111, 90, 107, 145, 164, 161, 181, 214, 218, 220, 222, 207, 192, 187, 160, 126, 110, 84, 51, 26, 23, 5, 0, 0, 0, 0, 0, 0, 0, 73, 149, 129, 108, 211, 255, 232, 216, 221, 244, 233, 203, 169, 141, 135, 131, 90, 62, 73, 86, 97, 90, 112, 166, 188, 192, 216, 237, 232, 226, 215, 190, 156, 139, 127, 91, 50, 34, 19, 0, 0, 0, 0, 0, 0, 0, 9, 152, 182, 81, 138, 255, 255, 209, 196, 251, 246, 183, 181, 152, 83, 94, 119, 76, 40, 75, 122, 122, 128, 184, 208, 191, 226, 255, 233, 186, 183, 187, 148, 93, 74, 66, 39, 23, 11, 0, 0, 9, 10, 0, 0, 12, 132, 196, 137, 129, 223, 255, 255, 208, 197, 205, 192, 185, 160, 87, 46, 88, 119, 81, 58, 102, 143, 156, 192, 224, 210, 203, 237, 249, 197, 151, 149, 132, 98, 77, 65, 42, 13, 19, 30, 8, 0, 0, 6, 3, 22, 94, 161, 171, 167, 194, 235, 252, 241, 226, 208, 175, 156, 163, 139, 88, 63, 68, 86, 96, 103, 138, 174, 184, 193, 227, 255, 241, 200, 168, 145, 122, 101, 88, 65, 23, 7, 19, 19, 10, 0, 0, 0, 15, 90, 191, 204, 158, 163, 215, 255, 252, 223, 204, 167, 139, 151, 139, 89, 64, 69, 79, 88, 114, 159, 181, 182, 204, 228, 229, 212, 191, 174,
};
const unsigned char one[] PROGMEM = {
168, 161, 152, 142, 132, 126, 122, 121, 123, 125, 125, 124, 119, 112, 104, 97, 88, 78, 69, 56, 42, 32, 22, 15, 16, 20, 22, 25, 33, 53, 69, 84, 112, 138, 160, 182, 194, 201, 203, 200, 194, 189, 182, 174, 172, 169, 167, 165, 164, 167, 170, 172, 174, 173, 169, 162, 154, 144, 135, 129, 124, 123, 123, 124, 124, 123, 120, 115, 109, 101, 91, 82, 71, 59, 47, 35, 26, 23, 23, 24, 25, 25, 25, 38, 56, 72, 98, 127, 153, 177, 195, 205, 206, 203, 195, 185, 176, 167, 163, 162, 164, 166, 168, 169, 171, 174, 177, 177, 177, 174, 167, 159, 149, 138, 131, 125, 123, 123, 124, 123, 119, 113, 104, 94, 82, 72, 60, 46, 31, 16, 3, 0, 0, 0, 0, 0, 0, 0, 31, 63, 107, 161, 197, 221, 234, 228, 211, 201, 192, 186, 186, 184, 181, 179, 177, 172, 168, 176, 184, 196, 208, 207, 201, 186, 165, 144, 129, 121, 119, 122, 123, 119, 112, 102, 90, 81, 73, 60, 49, 33, 9, 0, 0, 0, 0, 0, 0, 0, 0, 15, 50, 96, 161, 210, 232, 246, 241, 219, 206, 196, 195, 194, 192, 188, 177, 170, 162, 159, 174, 193, 210, 226, 223, 209, 190, 164, 140, 125, 121, 123, 126, 125, 118, 106, 94, 85, 81, 75, 58, 33, 4, 0, 0, 0, 0, 0, 0, 0, 0, 34, 64, 97, 165, 214, 232, 241, 236, 204, 185, 181, 181, 187, 192, 190, 181, 171, 160, 152, 172, 198, 219, 235, 233, 213, 181, 156, 132, 121, 126, 128, 130, 124, 109, 104, 99, 97, 94, 73, 42, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 143, 235, 255, 255, 216, 185, 150, 147, 183, 212, 225, 204, 176, 146, 126, 132, 160, 206, 233, 249, 242, 216, 181, 151, 142, 137, 135, 136, 133, 126, 114, 111, 112, 108, 98, 75, 45, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 167, 226, 255, 244, 178, 143, 170, 186, 211, 245, 222, 171, 132, 123, 144, 183, 194, 189, 193, 186, 195, 206, 208, 200, 170, 150, 131, 125, 132, 130, 128, 117, 112, 105, 105, 102, 75, 39, 2, 0, 7, 12, 6, 0, 0, 0, 0, 0, 4, 156, 163, 174, 199, 195, 193, 211, 238, 209, 191, 190, 164, 172, 172, 162, 168, 169, 172, 191, 200, 204, 220, 211, 191, 182, 172, 156, 144, 135, 131, 130, 127, 117, 104, 98, 98, 85, 57, 34, 15, 10, 16, 5, 0, 0, 0, 0, 0, 0, 0, 135, 171, 135, 177, 178, 173, 211, 223, 227, 216, 210, 216, 195, 190, 176, 145, 161, 170, 172, 202, 196, 188, 209, 211, 200, 186, 162, 147, 144, 145, 142, 131, 124, 122, 113, 100, 88, 65, 36, 26, 23, 3, 0, 0, 0, 0, 0, 0, 0, 0, 27, 176, 111, 66, 185, 218, 219, 253, 208, 196, 238, 241, 222, 180, 154, 167, 180, 189, 178, 161, 172, 185, 192, 200, 198, 181, 173, 175, 160, 142, 139, 138, 134, 127, 119, 114, 108, 94, 78, 60, 34, 32, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 149, 67, 59, 171, 202, 167, 179, 197, 204, 213, 210, 206, 194, 184, 202, 208, 188, 180, 187, 186, 180, 180, 182, 180, 176, 173, 165, 155, 149, 146, 143, 138, 134, 132, 127, 118, 110, 100, 85, 69, 52, 33, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 18, 47, 105, 134, 143, 156, 172, 192, 209, 214, 219, 230, 235, 236, 235, 222, 208, 203, 197, 186, 180, 179, 173, 171, 169, 164, 158, 154, 150, 146, 143, 139, 136, 133, 129, 123, 118, 109, 97, 88, 72, 59, 47, 32, 15, 0, 0, 0, 0, 0, 0, 0, 0, 4, 27, 23, 55, 117, 138, 136, 162, 177, 184, 202, 225, 226, 230, 239, 245, 245, 226, 206, 204, 196, 177, 172, 171, 165, 166, 171, 157, 148, 153, 149, 142, 140, 139, 134, 133, 131, 125, 124, 114, 104, 100, 83, 69, 61, 52, 27, 5, 0, 0, 0, 0, 0, 0, 0, 0, 21, 28, 44, 86, 122, 133, 149, 174, 192, 205, 222, 234, 235, 238, 243, 240, 226, 211, 204, 199, 187, 177, 173, 169, 168, 166, 159, 153, 153, 148, 144, 143, 139, 136, 134, 128, 125, 119, 110, 103, 96, 80, 67, 57, 47, 38, 29, 18, 10, 2, 0, 0, 0, 0, 0, 0, 12, 8, 31, 83, 100, 118, 148, 169, 179, 203, 227, 242, 240, 254, 244, 255, 253, 191, 214, 198, 198, 184, 177, 177, 164, 163, 156, 159, 144, 149, 145, 142, 136, 136, 132, 129, 122, 118, 112, 104, 95, 83, 74, 67, 54, 41, 39, 27, 12, 1, 0, 0, 0, 0, 0, 3, 15, 22, 51, 98, 107, 128, 159, 177, 191, 222, 241, 240, 250, 255, 255, 250, 243, 228, 217, 210, 199, 193, 186, 177, 170, 169, 167, 157, 153, 155, 149, 144, 140, 138, 136, 131, 127, 123, 118, 114, 109, 103, 98, 92, 87, 81, 76, 72, 67, 64, 60, 57, 53, 52, 48, 49, 50, 49, 47, 55, 65, 70, 78, 88, 98, 107, 118, 119, 126, 132, 137, 140, 142, 150, 151, 151, 149, 153, 158, 159, 157, 157, 160, 161, 160, 158, 155, 156,
};
const unsigned char two[] PROGMEM = {
104, 107, 113, 113, 115, 120, 120, 121, 125, 127, 122, 122, 130, 134, 129, 126, 129, 130, 126, 126, 130, 131, 130, 132, 135, 137, 139, 137, 133, 134, 137, 135, 132, 129, 130, 132, 131, 128, 125, 127, 128, 130, 129, 130, 132, 135, 133, 130, 131, 133, 133, 134, 134, 136, 135, 135, 134, 134, 131, 127, 127, 128, 126, 123, 125, 127, 129, 126, 125, 125, 129, 125, 126, 125, 128, 125, 128, 125, 127, 125, 126, 124, 124, 126, 126, 132, 126, 129, 123, 133, 126, 140, 128, 147, 114, 212, 212, 75, 161, 113, 146, 186, 160, 119, 144, 85, 110, 149, 82, 148, 106, 186, 140, 114, 84, 101, 84, 83, 103, 91, 141, 84, 133, 112, 100, 118, 141, 82, 188, 62, 166, 108, 72, 207, 32, 229, 46, 189, 109, 120, 167, 99, 184, 16, 131, 37, 118, 50, 148, 63, 111, 134, 76, 197, 56, 236, 72, 214, 97, 148, 161, 86, 186, 58, 213, 16, 194, 48, 122, 119, 41, 198, 46, 205, 53, 204, 111, 140, 171, 76, 209, 107, 181, 101, 191, 96, 142, 122, 108, 172, 54, 178, 80, 171, 101, 167, 130, 82, 191, 85, 177, 122, 150, 128, 124, 125, 103, 167, 76, 141, 139, 109, 141, 87, 156, 144, 100, 121, 126, 115, 181, 59, 115, 192, 117, 111, 148, 173, 104, 162, 77, 141, 115, 120, 125, 92, 165, 104, 108, 134, 116, 139, 146, 111, 131, 147, 135, 80, 161, 142, 140, 139, 77, 173, 121, 85, 120, 136, 150, 120, 115, 131, 126, 84, 132, 144, 128, 74, 151, 144, 89, 169, 133, 143, 104, 177, 97, 118, 144, 79, 161, 98, 114, 129, 128, 118, 111, 153, 130, 152, 152, 123, 155, 110, 141, 123, 104, 133, 138, 126, 96, 128, 116, 106, 106, 117, 136, 128, 105, 147, 175, 108, 108, 184, 153, 97, 127, 161, 130, 112, 106, 139, 167, 109, 104, 138, 156, 104, 105, 150, 142, 130, 107, 150, 176, 117, 125, 138, 135, 85, 110, 135, 64, 127, 112, 108, 96, 90, 137, 127, 121, 96, 158, 154, 97, 123, 161, 158, 123, 113, 185, 184, 118, 118, 148, 158, 107, 104, 109, 151, 150, 92, 120, 161, 150, 110, 133, 148, 145, 134, 95, 129, 154, 119, 101, 142, 155, 140, 132, 126, 176, 167, 119, 144, 180, 157, 132, 137, 132, 126, 113, 90, 108, 109, 82, 61, 60, 76, 56, 44, 52, 65, 57, 35, 40, 78, 62, 11, 29, 83, 59, 4, 13, 48, 73, 55, 61, 101, 164, 176, 179, 232, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 239, 197, 205, 195, 156, 126, 119, 127, 112, 81, 71, 92, 93, 67, 55, 72, 85, 63, 43, 47, 58, 45, 13, 0, 13, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 36, 103, 195, 245, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 251, 212, 188, 188, 180, 166, 155, 151, 159, 161, 158, 153, 159, 161, 152, 144, 138, 131, 115, 96, 78, 55, 32, 15, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 75, 76, 83, 164, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 254, 222, 206, 183, 157, 137, 138, 141, 145, 157, 166, 173, 176, 185, 191, 187, 186, 185, 180, 165, 146, 126, 89, 42, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 103, 117, 114, 180, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 214, 176, 155, 141, 134, 123, 122, 129, 143, 157, 165, 172, 174, 186, 193, 193, 190, 189, 184, 173, 151, 122, 83, 46, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 67, 113, 154, 222, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 205, 172, 142, 113, 103, 110, 116, 116, 122, 132, 141, 154, 167, 175, 179, 185, 191, 192, 190, 183, 164, 132, 95, 59, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 78, 112, 173, 243, 255, 255, 255, 255, 255, 255, 255, 255, 255, 237, 204, 183, 163, 130, 102, 91, 95, 104, 111, 120, 126, 131, 139, 153, 169, 177, 178, 179, 184, 184, 178, 164, 139, 102, 63, 30, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 82, 149, 219, 255, 255, 255, 255, 255, 255, 255, 255, 255, 241, 206, 179, 151, 122, 98, 90, 95, 101, 107, 114, 121, 133, 147, 157, 167, 178, 180, 183, 184, 183, 177, 158, 127, 86, 46, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 70, 141, 196, 254, 255, 255, 255, 255, 255, 255, 255, 255, 250, 210, 180, 154, 124, 97, 85, 86, 92, 97, 104, 109, 119, 133, 145, 156, 165, 174, 180, 185, 188, 189, 185, 166, 137, 104, 65, 25, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 68, 137, 199, 255, 255, 255, 255, 255, 255, 255, 255, 255, 217, 189, 169, 140, 99, 80, 84, 93, 103, 108, 114, 126, 146, 158, 170, 177, 182, 192, 196, 194, 191, 185, 155, 114, 77, 32, 0
};
const unsigned char three[] PROGMEM = {
131, 129, 126, 130, 123, 128, 128, 127, 124, 130, 128, 129, 134, 124, 130, 127, 125, 127, 127, 128, 129, 125, 128, 127, 127, 127, 126, 128, 124, 130, 126, 127, 127, 129, 127, 127, 127, 127, 126, 125, 128, 126, 125, 128, 129, 127, 126, 124, 129, 127, 128, 128, 127, 128, 130, 125, 129, 128, 128, 129, 128, 127, 123, 130, 123, 124, 134, 133, 120, 131, 128, 125, 124, 126, 127, 127, 130, 124, 130, 129, 130, 125, 128, 131, 131, 129, 131, 127, 127, 132, 124, 127, 126, 126, 130, 124, 126, 131, 128, 124, 125, 130, 133, 128, 123, 122, 130, 129, 123, 120, 129, 131, 124, 128, 128, 129, 127, 135, 128, 119, 114, 119, 130, 115, 127, 127, 122, 136, 128, 123, 115, 129, 124, 129, 124, 124, 130, 131, 132, 115, 124, 132, 135, 126, 142, 131, 134, 137, 159, 128, 114, 135, 133, 118, 111, 126, 106, 133, 126, 123, 111, 144, 145, 138, 135, 141, 140, 125, 128, 114, 123, 107, 133, 115, 113, 120, 131, 114, 120, 136, 128, 137, 131, 136, 123, 153, 134, 120, 123, 131, 126, 119, 123, 125, 129, 120, 132, 120, 126, 133, 149, 130, 128, 134, 125, 121, 125, 119, 116, 131, 126, 138, 127, 138, 125, 132, 122, 117, 130, 124, 127, 127, 130, 120, 138, 123, 137, 131, 116, 128, 136, 125, 120, 129, 123, 136, 126, 121, 127, 139, 128, 124, 125, 126, 129, 125, 132, 128, 133, 131, 137, 129, 116, 135, 116, 120, 125, 118, 117, 122, 132, 117, 130, 129, 131, 130, 134, 123, 120, 144, 133, 130, 125, 144, 141, 133, 133, 134, 139, 125, 143, 138, 140, 140, 140, 141, 128, 135, 129, 138, 132, 125, 129, 124, 125, 118, 111, 122, 116, 118, 99, 103, 133, 110, 98, 107, 104, 92, 105, 115, 91, 84, 105, 107, 98, 83, 104, 122, 120, 118, 119, 151, 157, 153, 164, 172, 172, 176, 173, 174, 173, 163, 162, 165, 159, 147, 143, 144, 140, 135, 130, 132, 131, 127, 126, 124, 123, 119, 117, 116, 113, 108, 108, 104, 98, 97, 92, 89, 94, 95, 91, 91, 96, 95, 87, 87, 97, 91, 76, 76, 102, 130, 136, 133, 131, 147, 163, 171, 175, 171, 177, 183, 180, 174, 163, 157, 156, 148, 142, 134, 134, 133, 128, 128, 131, 133, 135, 134, 132, 134, 135, 132, 131, 131, 133, 131, 133, 135, 136, 136, 135, 135, 136, 138, 137, 132, 129, 127, 124, 120, 111, 107, 100, 94, 90, 89, 88, 80, 72, 67, 64, 59, 54, 49, 59, 83, 111, 129, 137, 140, 141, 149, 164, 181, 194, 202, 202, 195, 184, 172, 161, 154, 150, 146, 138, 126, 114, 110, 113, 121, 126, 129, 129, 128, 126, 127, 131, 138, 143, 146, 148, 149, 147, 145, 143, 141, 141, 140, 138, 132, 124, 117, 110, 104, 99, 94, 89, 83, 74, 66, 58, 51, 42, 30, 27, 38, 67, 105, 136, 148, 145, 141, 148, 171, 198, 216, 220, 212, 201, 186, 172, 159, 153, 147, 136, 118, 99, 91, 95, 106, 113, 116, 119, 125, 135, 145, 153, 159, 162, 165, 165, 163, 159, 148, 136, 128, 128, 134, 137, 132, 120, 108, 98, 93, 91, 90, 85, 70, 53, 43, 39, 30, 15, 21, 60, 120, 159, 151, 128, 129, 174, 222, 238, 218, 190, 182, 187, 188, 174, 154, 137, 119, 103, 94, 97, 107, 110, 107, 107, 119, 136, 150, 155, 154, 157, 166, 175, 176, 164, 147, 134, 131, 132, 131, 127, 120, 116, 116, 121, 118, 105, 91, 82, 79, 75, 66, 52, 33, 14, 1, 19, 70, 127, 150, 123, 109, 143, 214, 253, 225, 181, 173, 210, 228, 195, 148, 126, 131, 130, 112, 97, 91, 95, 100, 107, 118, 128, 134, 141, 151, 160, 164, 164, 167, 165, 156, 148, 147, 144, 129, 113, 116, 132, 133, 119, 112, 122, 123, 111, 101, 107, 105, 84, 67, 68, 61, 38, 8, 38, 116, 111, 64, 76, 179, 214, 144, 128, 199, 255, 196, 150, 184, 210, 178, 127, 127, 134, 116, 95, 90, 101, 102, 104, 112, 125, 141, 148, 157, 162, 166, 169, 164, 162, 159, 154, 139, 127, 129, 126, 121, 115, 120, 121, 118, 116, 112, 106, 100, 99, 94, 82, 72, 58, 46, 27, 32, 103, 95, 53, 82, 172, 192, 120, 142, 213, 229, 178, 175, 220, 200, 160, 150, 157, 140, 110, 105, 103, 100, 95, 100, 110, 118, 130, 138, 147, 154, 161, 163, 160, 162, 161, 154, 144, 138, 136, 130, 126, 124, 126, 121, 117, 114, 110, 103, 101, 96, 84, 76, 73, 56, 45, 27, 55, 110, 59, 66, 138, 162, 119, 133, 211, 194, 169, 190, 218, 194, 166, 179, 177, 151, 131, 130, 128, 110, 101, 106, 108, 105, 107, 120, 123, 131, 140, 145, 149, 157, 163, 160, 161, 161, 155, 144, 143, 141, 132, 127, 127, 121, 116, 104, 102, 96, 89, 86, 80, 77, 74, 58, 58, 42, 56, 114, 48, 79, 151
};
const unsigned char four[] PROGMEM = {
125, 128, 125, 128, 127, 128, 130, 130, 124, 124, 129, 130, 130, 127, 127, 130, 125, 126, 129, 129, 130, 128, 129, 127, 129, 125, 125, 130, 129, 127, 125, 127, 126, 125, 128, 130, 130, 126, 125, 133, 123, 126, 127, 126, 129, 128, 132, 125, 132, 122, 126, 132, 122, 131, 126, 122, 132, 125, 121, 130, 122, 135, 127, 123, 131, 128, 127, 125, 129, 133, 123, 123, 130, 132, 128, 122, 131, 126, 128, 128, 124, 130, 132, 124, 127, 126, 127, 134, 130, 126, 124, 126, 135, 134, 124, 124, 123, 132, 130, 120, 128, 132, 122, 126, 127, 125, 128, 124, 122, 129, 131, 122, 123, 126, 127, 129, 129, 128, 128, 128, 130, 129, 132, 128, 129, 129, 126, 125, 127, 129, 122, 122, 129, 126, 127, 128, 127, 133, 124, 128, 129, 129, 135, 128, 125, 133, 134, 131, 128, 124, 121, 125, 129, 129, 132, 127, 128, 128, 129, 128, 129, 129, 132, 129, 128, 130, 126, 125, 127, 130, 124, 119, 128, 128, 127, 130, 126, 132, 127, 127, 130, 128, 134, 130, 125, 130, 134, 132, 129, 126, 122, 124, 128, 128, 132, 131, 122, 123, 128, 121, 126, 135, 128, 125, 127, 127, 128, 122, 131, 133, 130, 132, 129, 127, 122, 118, 122, 136, 130, 116, 133, 131, 127, 130, 118, 126, 126, 124, 128, 132, 129, 129, 125, 125, 127, 129, 130, 123, 132, 135, 127, 121, 133, 123, 125, 130, 122, 128, 132, 138, 132, 130, 114, 117, 130, 129, 129, 140, 131, 115, 123, 127, 134, 123, 119, 122, 123, 128, 138, 133, 131, 128, 114, 121, 119, 133, 139, 136, 127, 125, 132, 121, 126, 128, 136, 144, 159, 155, 127, 112, 113, 123, 135, 143, 137, 131, 129, 127, 119, 115, 118, 123, 124, 121, 120, 120, 124, 121, 116, 127, 131, 110, 91, 82, 80, 77, 77, 83, 88, 88, 90, 93, 98, 111, 131, 157, 184, 199, 204, 203, 194, 181, 169, 156, 146, 138, 135, 133, 129, 123, 117, 112, 107, 109, 113, 123, 136, 152, 164, 169, 177, 179, 174, 170, 164, 152, 140, 129, 117, 109, 105, 106, 105, 106, 108, 108, 108, 105, 101, 93, 90, 84, 77, 68, 62, 61, 57, 52, 46, 46, 57, 76, 101, 139, 176, 207, 219, 223, 219, 204, 183, 161, 144, 131, 125, 123, 124, 124, 123, 119, 115, 112, 115, 121, 133, 148, 166, 178, 183, 185, 181, 171, 158, 147, 134, 123, 116, 113, 112, 112, 113, 116, 116, 118, 119, 117, 113, 109, 102, 94, 87, 81, 77, 71, 63, 55, 47, 44, 45, 56, 78, 109, 147, 184, 217, 230, 231, 223, 205, 182, 158, 138, 123, 117, 116, 117, 119, 120, 117, 114, 111, 114, 119, 131, 145, 162, 176, 183, 185, 181, 172, 159, 146, 134, 124, 117, 114, 113, 114, 115, 117, 118, 119, 120, 119, 117, 112, 106, 98, 91, 85, 80, 75, 67, 60, 51, 45, 44, 48, 66, 93, 132, 169, 206, 229, 234, 230, 214, 192, 166, 143, 124, 114, 111, 111, 113, 116, 115, 113, 111, 111, 116, 126, 141, 158, 174, 186, 190, 185, 173, 156, 137, 121, 110, 105, 105, 108, 113, 120, 125, 131, 136, 138, 137, 136, 133, 129, 122, 115, 106, 95, 85, 75, 66, 58, 51, 45, 40, 39, 48, 67, 94, 129, 171, 210, 235, 245, 243, 227, 199, 168, 142, 121, 108, 104, 105, 108, 110, 110, 109, 108, 110, 115, 125, 140, 159, 176, 187, 190, 184, 172, 157, 141, 126, 112, 104, 101, 102, 107, 115, 124, 130, 134, 137, 138, 136, 131, 126, 119, 110, 99, 88, 78, 70, 62, 54, 47, 38, 33, 44, 65, 96, 134, 178, 219, 242, 246, 238, 217, 186, 155, 131, 114, 106, 104, 107, 111, 110, 110, 107, 104, 105, 114, 131, 151, 172, 189, 198, 195, 183, 165, 147, 129, 116, 108, 106, 105, 108, 112, 117, 121, 125, 128, 131, 134, 136, 138, 134, 127, 115, 103, 89, 77, 65, 55, 48, 41, 33, 31, 46, 72, 109, 150, 194, 232, 249, 248, 233, 208, 175, 144, 122, 109, 104, 104, 107, 108, 104, 101, 98, 100, 106, 122, 147, 172, 193, 203, 201, 186, 162, 140, 124, 116, 115, 118, 123, 122, 119, 114, 112, 114, 120, 129, 137, 144, 146, 144, 134, 121, 104, 86, 68, 54, 47, 47, 48, 48, 46, 52, 70, 98, 138, 180, 221, 243, 245, 231, 205, 172, 139, 119, 108, 107, 108, 109, 106, 98, 90, 88, 98, 119, 146, 175, 198, 210, 205, 188, 161, 134, 115, 109, 113, 122, 132, 138, 131, 117, 105, 102, 109, 123, 141, 157, 161, 155, 140, 121, 99, 80, 71, 68, 70, 70, 70, 62, 45, 30, 33, 58, 101, 155, 208, 248, 255, 239, 202, 163, 132, 114, 117, 128, 135, 129, 113, 93, 76, 72, 86, 119, 157, 187, 203, 202, 185, 162, 142, 132, 129, 129, 130, 128, 123, 115, 109, 109, 115, 125, 136, 146, 155, 158, 156,
};
const unsigned char five[] PROGMEM = {
130, 126, 127, 130, 130, 125, 128, 129, 129, 130, 128, 128, 127, 123, 126, 124, 123, 129, 126, 127, 130, 131, 128, 131, 132, 130, 126, 127, 128, 126, 128, 123, 127, 128, 127, 130, 128, 129, 130, 129, 127, 132, 131, 129, 127, 127, 128, 127, 120, 121, 124, 120, 124, 127, 129, 127, 132, 133, 130, 129, 132, 135, 131, 126, 125, 124, 125, 125, 129, 129, 124, 129, 128, 133, 133, 128, 129, 129, 130, 127, 125, 127, 125, 127, 124, 120, 123, 121, 120, 127, 132, 132, 134, 137, 138, 132, 129, 129, 121, 119, 117, 116, 123, 124, 127, 128, 130, 139, 134, 134, 139, 136, 134, 129, 125, 127, 128, 122, 120, 122, 116, 115, 115, 118, 124, 132, 140, 139, 140, 136, 131, 132, 126, 124, 121, 121, 116, 112, 117, 118, 117, 122, 135, 144, 148, 145, 136, 122, 115, 112, 115, 119, 126, 130, 128, 129, 133, 139, 143, 145, 141, 130, 122, 122, 126, 130, 137, 141, 140, 140, 140, 138, 137, 136, 135, 133, 133, 132, 131, 131, 133, 134, 133, 133, 134, 133, 129, 124, 118, 108, 103, 102, 101, 99, 100, 99, 95, 92, 89, 86, 81, 80, 86, 87, 109, 168, 220, 240, 225, 189, 126, 75, 69, 85, 110, 133, 155, 147, 142, 151, 162, 165, 162, 150, 119, 99, 98, 110, 124, 140, 150, 145, 139, 136, 132, 128, 127, 125, 123, 123, 128, 132, 135, 137, 134, 129, 126, 124, 124, 125, 127, 125, 121, 117, 115, 113, 112, 113, 115, 115, 112, 105, 91, 76, 67, 63, 71, 89, 122, 194, 250, 255, 219, 157, 87, 45, 53, 87, 128, 157, 169, 160, 154, 156, 154, 145, 130, 112, 97, 99, 117, 141, 155, 159, 150, 137, 127, 122, 121, 122, 124, 126, 129, 134, 138, 137, 133, 128, 123, 120, 121, 125, 128, 129, 130, 128, 123, 121, 119, 115, 112, 113, 112, 110, 103, 93, 81, 75, 72, 76, 85, 122, 192, 238, 238, 193, 129, 65, 49, 76, 121, 160, 177, 169, 147, 141, 140, 140, 134, 124, 109, 104, 117, 137, 154, 159, 151, 135, 123, 119, 120, 122, 125, 128, 131, 133, 135, 135, 133, 130, 126, 123, 122, 125, 128, 130, 130, 128, 125, 120, 120, 122, 122, 119, 117, 116, 111, 102, 88, 74, 66, 65, 75, 93, 127, 195, 239, 230, 181, 116, 60, 50, 89, 133, 165, 175, 164, 145, 142, 143, 140, 133, 123, 110, 107, 121, 139, 153, 157, 148, 131, 121, 117, 120, 125, 129, 130, 132, 133, 133, 133, 131, 128, 126, 127, 129, 131, 131, 126, 120, 116, 116, 121, 124, 125, 125, 118, 109, 106, 98, 88, 79, 76, 74, 81, 92, 111, 174, 226, 228, 187, 127, 68, 55, 91, 135, 168, 177, 163, 142, 138, 134, 133, 133, 129, 120, 120, 129, 139, 146, 146, 140, 132, 127, 124, 127, 129, 131, 130, 129, 129, 129, 130, 131, 130, 128, 126, 127, 128, 128, 128, 126, 122, 120, 118, 118, 115, 115, 116, 112, 108, 97, 86, 74, 71, 71, 83, 99, 138, 195, 218, 200, 155, 106, 72, 87, 123, 158, 172, 164, 145, 133, 134, 133, 133, 132, 132, 129, 131, 136, 140, 143, 140, 132, 128, 129, 129, 131, 133, 130, 127, 127, 127, 128, 129, 130, 130, 132, 132, 130, 127, 125, 124, 123, 123, 120, 112, 104, 103, 110, 120, 118, 103, 88, 74, 68, 66, 82, 94, 140, 211, 233, 206, 151, 92, 57, 86, 129, 166, 179, 168, 145, 134, 133, 132, 134, 131, 129, 129, 137, 139, 140, 138, 135, 130, 131, 135, 133, 133, 129, 126, 124, 127, 128, 130, 131, 132, 131, 129, 128, 127, 127, 127, 126, 123, 118, 109, 107, 108, 109, 111, 112, 103, 93, 84, 81, 76, 78, 86, 103, 172, 226, 223, 177, 120, 69, 66, 110, 153, 172, 169, 156, 138, 137, 138, 135, 128, 128, 130, 138, 144, 143, 139, 136, 132, 131, 135, 136, 132, 126, 124, 123, 126, 130, 132, 131, 130, 129, 128, 127, 126, 126, 124, 122, 121, 117, 114, 113, 109, 108, 110, 108, 98, 87, 81, 80, 81, 89, 101, 128, 183, 220, 206, 158, 102, 66, 76, 119, 157, 171, 169, 157, 142, 136, 134, 129, 128, 132, 134, 137, 140, 138, 136, 136, 135, 135, 136, 135, 130, 126, 124, 125, 128, 130, 130, 129, 130, 133, 133, 129, 122, 118, 118, 121, 121, 115, 108, 107, 107, 110, 105, 94, 88, 80, 73, 71, 86, 103, 150, 212, 229, 190, 134, 94, 77, 99, 130, 148, 151, 155, 154, 151, 146, 134, 125, 123, 129, 134, 137, 138, 139, 139, 140, 138, 136, 134, 132, 129, 125, 124, 124, 126, 129, 130, 130, 129, 127, 128, 131, 132, 125, 117, 112, 105, 103, 110, 115, 113, 110, 103, 95, 85, 79, 74, 75, 93, 127, 186, 223, 208, 161, 117, 92, 94, 114, 129, 142, 157, 169, 165, 153, 135, 121, 121, 129, 135, 137, 138, 137, 139, 1
};
const unsigned char six[] PROGMEM = {
116, 134, 134, 134, 121, 137, 127, 135, 128, 132, 119, 131, 122, 113, 125, 114, 131, 123, 120, 126, 133, 137, 128, 138, 139, 136, 154, 117, 143, 134, 128, 130, 112, 116, 112, 118, 104, 122, 125, 140, 117, 137, 136, 133, 142, 126, 141, 118, 132, 112, 122, 123, 102, 120, 128, 130, 142, 129, 135, 151, 138, 133, 137, 145, 138, 122, 111, 123, 121, 123, 106, 122, 119, 151, 132, 130, 151, 153, 144, 124, 133, 122, 136, 110, 109, 98, 121, 101, 96, 108, 135, 128, 130, 133, 145, 154, 131, 126, 114, 134, 106, 104, 96, 107, 111, 109, 111, 135, 141, 162, 163, 169, 184, 186, 176, 165, 163, 159, 150, 125, 135, 124, 133, 127, 135, 136, 143, 137, 137, 142, 132, 128, 114, 84, 76, 64, 35, 33, 31, 24, 2, 7, 9, 12, 11, 0, 99, 221, 166, 148, 240, 255, 247, 240, 211, 221, 255, 205, 128, 155, 166, 110, 83, 88, 84, 121, 139, 103, 123, 192, 205, 181, 212, 221, 224, 218, 197, 162, 157, 137, 88, 79, 83, 64, 56, 57, 49, 55, 53, 36, 58, 59, 35, 18, 18, 2, 0, 0, 0, 150, 171, 75, 125, 255, 255, 215, 217, 211, 255, 233, 148, 106, 162, 138, 59, 43, 91, 112, 133, 125, 138, 203, 231, 205, 195, 228, 213, 183, 164, 160, 141, 126, 98, 96, 107, 104, 98, 117, 133, 141, 134, 138, 138, 114, 91, 84, 76, 43, 17, 0, 0, 0, 0, 0, 110, 186, 89, 121, 255, 255, 193, 230, 253, 242, 187, 148, 120, 130, 105, 32, 44, 101, 97, 86, 141, 175, 199, 208, 214, 225, 225, 197, 175, 185, 164, 114, 106, 110, 86, 73, 96, 107, 107, 117, 123, 129, 133, 118, 107, 106, 101, 62, 43, 39, 1, 0, 0, 49, 112, 69, 89, 202, 228, 174, 199, 255, 238, 193, 201, 199, 166, 134, 116, 101, 92, 82, 87, 104, 117, 135, 157, 175, 184, 190, 198, 206, 197, 176, 165, 149, 124, 103, 94, 93, 83, 87, 98, 108, 105, 109, 117, 119, 115, 116, 110, 100, 81, 63, 63, 48, 29, 47, 102, 93, 71, 113, 170, 151, 137, 187, 208, 181, 176, 199, 188, 155, 148, 152, 132, 118, 119, 121, 123, 130, 137, 144, 151, 159, 161, 158, 162, 162, 147, 143, 138, 127, 114, 111, 112, 106, 106, 109, 113, 115, 121, 122, 122, 123, 123, 120, 119, 114, 110, 106, 103, 102, 100, 102, 103, 108, 110, 114, 118, 119, 127, 130, 129, 129, 134, 136, 131, 134, 134, 136, 135, 136, 139, 138, 139, 137, 140, 141, 142, 142, 141, 141, 140, 135, 134, 134, 132, 129, 129, 126, 124, 124, 124, 125, 125, 124, 124, 127, 127, 125, 127, 127, 125, 124, 124, 123, 124, 123, 123, 124, 124, 125, 126, 129, 129, 130, 129, 130, 130, 130, 129, 128, 127, 126, 126, 125, 127, 127, 127, 128, 128, 128, 129, 129, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 127, 127, 128, 128, 128, 129, 128, 129, 128, 128, 128, 127, 127, 127, 126, 126, 126, 126, 126, 126, 127, 127, 128, 128, 128, 128, 128, 128, 128, 128, 127, 127, 127, 126, 127, 127, 127, 127, 128, 128, 129, 129, 129, 129, 129, 129, 128, 128, 128, 127, 127, 127, 126, 127, 127, 127, 128, 128, 128, 128, 129, 129, 128, 128, 128, 128, 126, 126, 127, 127, 126, 126, 127, 127, 127, 127, 128, 129, 129, 129, 128, 128, 128, 127, 127, 126, 125, 126, 126, 126, 126, 127, 128, 129, 128, 127, 129, 129, 128, 129, 127, 125, 125, 126, 128, 126, 125, 130, 131, 125, 123, 127, 134, 135, 120, 124, 150, 148, 121, 105, 122, 141, 134, 115, 113, 130, 135, 122, 118, 126, 133, 131, 126, 127, 136, 133, 127, 136, 132, 118, 110, 122, 131, 127, 112, 118, 135, 138, 126, 129, 142, 146, 141, 122, 117, 125, 134, 119, 113, 117, 124, 129, 122, 114, 133, 139, 120, 132, 132, 141, 131, 117, 132, 131, 130, 117, 124, 122, 123, 123, 121, 137, 121, 125, 135, 131, 128, 122, 132, 132, 140, 120, 132, 124, 135, 142, 110, 127, 118, 152, 119, 129, 112, 145, 139, 117, 125, 113, 150, 128, 126, 112, 126, 141, 133, 112, 122, 130, 151, 115, 119, 129, 144, 129, 116, 125, 136, 137, 114, 131, 119, 146, 120, 125, 127, 125, 139, 113, 123, 139, 137, 118, 116, 133, 133, 127, 113, 122, 146, 127, 122, 111, 135, 153, 108, 118, 124, 150, 131, 111, 118, 138, 143, 118, 115, 127, 150, 116, 126, 121, 132, 136, 120, 126, 126, 138, 130, 121, 121, 129, 129, 118, 130, 128, 137, 125, 126, 134, 132, 131, 109, 136, 135, 126, 122, 123, 131, 131, 126, 119, 130, 132, 125, 128, 123, 128, 126, 130, 126, 127, 123, 130, 134, 123, 124, 130, 134, 127, 126, 123, 137, 120, 128, 132, 130, 126, 129, 129, 122, 132, 128, 123,
};
const unsigned char seven[] PROGMEM = {
134, 123, 132, 124, 127, 126, 123, 125, 124, 134, 123, 133, 124, 135, 125, 127, 126, 124, 132, 123, 130, 128, 134, 127, 131, 125, 125, 125, 129, 125, 127, 129, 128, 128, 128, 131, 130, 135, 126, 132, 127, 130, 119, 129, 121, 125, 127, 123, 132, 120, 134, 123, 130, 124, 130, 127, 128, 132, 126, 130, 126, 128, 123, 128, 125, 126, 129, 128, 130, 129, 128, 133, 132, 129, 130, 131, 128, 126, 123, 123, 126, 124, 123, 128, 131, 129, 128, 133, 136, 132, 134, 124, 125, 126, 124, 121, 117, 125, 123, 124, 124, 129, 134, 135, 129, 130, 130, 128, 123, 117, 118, 119, 126, 119, 111, 113, 119, 116, 118, 121, 125, 136, 138, 134, 136, 147, 145, 142, 137, 133, 134, 130, 126, 126, 135, 134, 131, 137, 143, 148, 147, 147, 146, 149, 145, 135, 129, 130, 132, 127, 120, 119, 126, 128, 121, 112, 115, 118, 114, 102, 96, 92, 90, 77, 59, 52, 60, 58, 49, 46, 55, 64, 59, 49, 52, 117, 170, 215, 229, 218, 223, 231, 209, 156, 137, 121, 127, 123, 111, 106, 124, 153, 162, 163, 169, 184, 184, 170, 144, 126, 119, 110, 93, 92, 102, 122, 134, 132, 133, 140, 143, 133, 120, 116, 129, 133, 137, 140, 143, 146, 146, 144, 137, 139, 140, 133, 121, 118, 114, 110, 100, 90, 85, 84, 75, 59, 52, 58, 63, 54, 51, 57, 67, 61, 52, 50, 101, 161, 211, 233, 220, 223, 230, 214, 161, 136, 120, 126, 123, 110, 104, 118, 150, 160, 161, 167, 181, 183, 173, 146, 125, 118, 111, 92, 92, 101, 121, 138, 137, 136, 141, 145, 133, 118, 109, 115, 121, 133, 146, 151, 153, 159, 159, 154, 152, 146, 139, 126, 116, 109, 104, 95, 87, 84, 78, 74, 72, 77, 77, 74, 71, 68, 60, 52, 48, 47, 44, 51, 97, 179, 241, 239, 226, 220, 212, 187, 147, 109, 97, 116, 131, 131, 130, 153, 176, 190, 183, 172, 161, 140, 122, 103, 99, 108, 118, 121, 133, 152, 167, 173, 164, 155, 140, 123, 98, 85, 88, 99, 125, 140, 160, 181, 188, 182, 172, 161, 143, 133, 125, 115, 108, 103, 96, 94, 92, 84, 78, 78, 73, 68, 66, 67, 57, 49, 51, 42, 42, 43, 54, 93, 181, 255, 241, 201, 194, 202, 180, 137, 99, 86, 112, 141, 137, 125, 143, 181, 196, 183, 159, 145, 144, 139, 118, 102, 109, 123, 128, 129, 135, 143, 156, 160, 146, 128, 116, 106, 98, 97, 109, 128, 152, 171, 178, 175, 167, 160, 151, 139, 126, 119, 117, 112, 106, 102, 95, 85, 79, 76, 79, 82, 81, 73, 66, 62, 53, 47, 49, 55, 76, 126, 195, 237, 233, 216, 201, 187, 167, 138, 104, 89, 108, 132, 139, 137, 146, 162, 177, 181, 167, 143, 134, 139, 136, 119, 107, 111, 125, 138, 143, 139, 135, 137, 139, 137, 129, 122, 120, 132, 148, 155, 151, 145, 147, 150, 144, 134, 126, 123, 122, 122, 117, 110, 103, 97, 93, 84, 73, 65, 67, 71, 72, 73, 73, 71, 73, 73, 65, 73, 120, 184, 216, 212, 200, 191, 182, 172, 157, 134, 116, 119, 131, 135, 132, 134, 139, 146, 156, 164, 158, 144, 139, 138, 136, 135, 130, 124, 124, 131, 135, 128, 118, 116, 117, 117, 116, 119, 132, 142, 143, 140, 138, 140, 141, 141, 137, 135, 135, 133, 127, 120, 116, 114, 110, 110, 109, 104, 99, 97, 97, 98, 102, 101, 100, 95, 90, 89, 93, 98, 106, 120, 132, 140, 145, 154, 158, 159, 161, 161, 159, 156, 154, 152, 146, 142, 139, 135, 132, 129, 127, 125, 127, 130, 133, 136, 141, 145, 144, 138, 133, 129, 126, 120, 115, 112, 115, 122, 125, 125, 125, 130, 135, 138, 140, 140, 140, 136, 131, 129, 128, 126, 123, 118, 116, 115, 114, 113, 113, 111, 108, 108, 107, 108, 108, 105, 99, 94, 90, 92, 103, 112, 119, 124, 128, 130, 134, 144, 153, 154, 153, 151, 153, 150, 152, 152, 147, 143, 142, 143, 139, 137, 136, 137, 138, 135, 131, 128, 129, 130, 128, 126, 124, 125, 124, 123, 124, 124, 124, 122, 122, 120, 126, 131, 130, 129, 130, 135, 136, 134, 138, 135, 126, 126, 130, 128, 122, 117, 113, 114, 114, 115, 116, 115, 113, 112, 114, 115, 108, 102, 101, 99, 93, 105, 122, 124, 125, 125, 131, 130, 134, 145, 146, 146, 148, 150, 144, 141, 146, 144, 139, 140, 144, 139, 133, 135, 134, 133, 134, 134, 131, 130, 134, 135, 132, 130, 133, 133, 131, 132, 130, 126, 124, 127, 127, 128, 127, 124, 123, 123, 126, 131, 130, 130, 130, 125, 125, 126, 125, 120, 113, 112, 112, 114, 118, 116, 115, 115, 114, 110, 108, 106, 101, 97, 101, 116, 120, 122, 126, 131, 134, 138, 147, 146, 146, 151, 151, 147, 146, 148, 145, 140, 138, 135, 131, 133, 135, 127, 124, 129, 135, 139, 138, 139, 143, 150, 15
};
const unsigned char eight[] PROGMEM = {
104, 93, 82, 71, 61, 52, 41, 26, 14, 4, 0, 0, 0, 0, 0, 13, 41, 64, 89, 118, 147, 173, 192, 209, 232, 251, 255, 255, 255, 255, 255, 255, 250, 234, 214, 196, 181, 169, 155, 144, 135, 125, 115, 103, 95, 89, 86, 85, 87, 90, 96, 101, 108, 114, 122, 130, 140, 149, 158, 166, 171, 174, 171, 166, 157, 149, 136, 123, 110, 97, 80, 69, 59, 46, 35, 23, 13, 7, 0, 0, 5, 32, 39, 49, 83, 111, 126, 145, 170, 193, 212, 225, 233, 242, 244, 243, 243, 230, 213, 205, 195, 181, 166, 153, 144, 138, 122, 110, 108, 104, 97, 89, 90, 95, 93, 99, 116, 124, 134, 146, 162, 170, 173, 188, 191, 181, 176, 173, 156, 139, 127, 111, 92, 72, 55, 51, 38, 27, 25, 23, 15, 10, 11, 3, 0, 1, 106, 103, 90, 207, 219, 178, 241, 255, 224, 228, 219, 226, 217, 166, 173, 195, 145, 141, 161, 132, 120, 126, 124, 120, 115, 119, 122, 112, 109, 122, 126, 125, 138, 154, 156, 161, 165, 172, 176, 161, 162, 162, 138, 123, 114, 94, 78, 72, 61, 47, 42, 41, 36, 20, 34, 19, 1, 16, 0, 0, 49, 126, 96, 133, 238, 218, 205, 255, 249, 223, 214, 214, 208, 176, 149, 162, 156, 124, 141, 145, 125, 121, 131, 121, 118, 123, 119, 120, 117, 129, 139, 128, 148, 166, 151, 158, 173, 166, 163, 171, 158, 144, 131, 121, 114, 93, 82, 85, 65, 49, 54, 43, 27, 24, 18, 10, 1, 0, 0, 0, 101, 131, 97, 210, 253, 193, 235, 255, 222, 209, 214, 200, 183, 159, 151, 168, 138, 136, 157, 138, 126, 142, 132, 117, 135, 132, 127, 137, 142, 139, 150, 155, 143, 151, 163, 153, 151, 163, 153, 132, 137, 118, 98, 92, 72, 66, 54, 49, 45, 32, 32, 23, 6, 8, 0, 0, 0, 85, 116, 73, 209, 245, 172, 248, 255, 214, 208, 233, 202, 171, 174, 155, 158, 139, 135, 153, 136, 130, 138, 138, 123, 130, 133, 126, 135, 131, 138, 148, 138, 152, 157, 149, 151, 162, 151, 148, 149, 131, 124, 113, 92, 81, 74, 55, 59, 46, 33, 32, 14, 11, 0, 0, 0, 33, 105, 46, 123, 218, 162, 194, 255, 236, 201, 255, 236, 184, 197, 186, 161, 145, 148, 146, 127, 131, 131, 129, 121, 123, 132, 125, 130, 135, 135, 137, 139, 148, 152, 148, 158, 159, 154, 153, 151, 142, 126, 117, 106, 81, 71, 58, 42, 25, 22, 6, 0, 0, 0, 0, 0, 79, 69, 77, 183, 171, 161, 237, 242, 203, 236, 255, 208, 199, 213, 178, 159, 160, 151, 121, 125, 125, 106, 112, 113, 110, 116, 122, 122, 129, 144, 148, 153, 171, 175, 174, 182, 177, 169, 165, 153, 141, 125, 108, 88, 80, 64, 49, 51, 41, 30, 33, 34, 15, 9, 38, 77, 61, 82, 145, 135, 136, 194, 203, 183, 216, 229, 205, 210, 216, 184, 178, 174, 142, 133, 132, 112, 105, 113, 103, 98, 110, 110, 111, 128, 127, 127, 144, 147, 143, 155, 165, 153, 160, 165, 145, 141, 145, 113, 99, 99, 62, 53, 48, 17, 3, 7, 0, 29, 43, 44, 92, 108, 114, 154, 179, 170, 204, 219, 205, 215, 221, 199, 190, 190, 165, 154, 147, 132, 120, 119, 111, 104, 108, 110, 111, 120, 120, 125, 135, 136, 139, 147, 151, 151, 156, 157, 152, 144, 139, 124, 110, 97, 81, 59, 47, 25, 5, 9, 24, 26, 31, 68, 81, 89, 124, 156, 153, 182, 208, 195, 215, 223, 203, 202, 205, 175, 166, 162, 141, 132, 132, 117, 113, 114, 110, 114, 116, 116, 117, 126, 129, 128, 136, 144, 144, 144, 151, 148, 141, 141, 131, 113, 102, 90, 68, 51, 35, 5, 34, 35, 4, 66, 77, 56, 116, 142, 121, 170, 200, 175, 203, 224, 190, 198, 207, 175, 167, 172, 149, 135, 140, 125, 113, 120, 114, 108, 119, 117, 115, 124, 127, 127, 134, 141, 141, 143, 150, 147, 144, 143, 135, 118, 108, 94, 72, 59, 46, 17, 27, 56, 15, 53, 94, 67, 103, 144, 135, 153, 190, 180, 189, 207, 195, 187, 191, 177, 164, 160, 151, 139, 134, 127, 120, 119, 117, 118, 119, 121, 123, 125, 128, 130, 134, 137, 139, 140, 141, 138, 133, 128, 118, 106, 95, 82, 63, 50, 38, 40, 46, 38, 62, 85, 77, 105, 136, 131, 153, 181, 174, 184, 201, 190, 185, 189, 180, 166, 163, 157, 142, 138, 134, 123, 124, 123, 116, 119, 124, 120, 122, 125, 126, 128, 129, 135, 133, 134, 139, 135, 128, 134, 125, 115, 113, 98, 89, 83, 71, 72, 79, 75, 84, 97, 98, 108, 122, 125, 133, 143, 145, 147, 150, 150, 148, 147, 144, 142, 141, 138, 136, 137, 134, 133, 134, 132, 131, 132, 131, 130, 129, 129, 128, 128, 127, 127, 127, 126, 126, 126, 125, 125, 124, 124, 124, 123, 123, 122, 122, 121, 122, 122, 123, 124, 125, 127, 127, 128, 128, 129, 129, 130, 130, 130, 130, 130, 129, 129, 128, 128, 128, 127, 127, 126, 126, 126, 126, 126, 126, 126,
};
const unsigned char nine[] PROGMEM = {
129, 128, 129, 129, 129, 128, 128, 128, 128, 127, 128, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 128, 127, 128, 127, 128, 128, 129, 128, 128, 129, 128, 128, 128, 127, 128, 125, 125, 125, 123, 121, 119, 122, 116, 116, 118, 118, 116, 118, 117, 117, 117, 118, 118, 117, 120, 119, 123, 121, 124, 124, 122, 127, 124, 127, 127, 129, 131, 134, 136, 137, 140, 141, 142, 142, 146, 143, 146, 146, 145, 143, 142, 141, 137, 136, 133, 130, 127, 126, 122, 121, 119, 120, 117, 118, 117, 118, 118, 119, 120, 121, 123, 125, 125, 126, 128, 127, 128, 125, 127, 122, 124, 119, 119, 117, 114, 114, 111, 113, 110, 106, 107, 104, 106, 106, 104, 109, 107, 114, 114, 118, 122, 127, 134, 143, 148, 156, 163, 171, 177, 179, 184, 183, 184, 181, 180, 174, 168, 162, 156, 147, 140, 130, 123, 117, 110, 106, 102, 100, 98, 99, 99, 100, 103, 105, 109, 112, 116, 119, 120, 123, 124, 126, 126, 127, 126, 126, 124, 122, 121, 118, 116, 112, 109, 105, 101, 97, 97, 92, 91, 89, 85, 85, 82, 83, 83, 89, 98, 107, 117, 130, 143, 157, 170, 183, 193, 198, 203, 205, 205, 203, 201, 195, 188, 181, 171, 159, 148, 139, 128, 119, 113, 107, 102, 101, 99, 98, 101, 104, 108, 115, 121, 126, 133, 140, 143, 146, 151, 152, 151, 150, 147, 141, 136, 131, 122, 115, 108, 100, 93, 85, 78, 72, 67, 62, 58, 58, 60, 60, 64, 68, 69, 73, 76, 78, 83, 92, 100, 110, 129, 147, 156, 172, 189, 196, 203, 214, 217, 217, 220, 219, 210, 203, 198, 185, 170, 161, 147, 133, 123, 115, 105, 100, 97, 92, 88, 89, 90, 92, 97, 103, 108, 117, 127, 134, 142, 149, 156, 161, 166, 167, 166, 164, 163, 156, 149, 142, 133, 124, 117, 108, 97, 90, 83, 75, 67, 63, 59, 54, 54, 54, 51, 53, 57, 58, 62, 67, 78, 85, 95, 110, 122, 139, 158, 171, 180, 195, 207, 212, 215, 221, 222, 219, 221, 214, 200, 190, 183, 175, 153, 138, 125, 107, 102, 95, 89, 89, 92, 95, 99, 109, 117, 124, 133, 140, 148, 153, 152, 151, 150, 151, 147, 142, 137, 132, 129, 126, 120, 112, 109, 110, 106, 101, 95, 91, 89, 82, 75, 71, 67, 66, 70, 76, 75, 72, 81, 85, 103, 122, 136, 145, 170, 230, 240, 198, 157, 141, 138, 142, 143, 134, 142, 165, 175, 165, 149, 130, 126, 131, 130, 120, 118, 123, 130, 136, 135, 127, 125, 126, 126, 130, 137, 139, 139, 147, 155, 156, 148, 139, 132, 133, 134, 131, 127, 123, 123, 126, 124, 116, 110, 102, 93, 89, 88, 83, 80, 78, 78, 78, 82, 88, 92, 82, 65, 67, 94, 126, 143, 154, 157, 204, 239, 204, 143, 106, 104, 124, 160, 168, 161, 164, 179, 173, 156, 132, 111, 114, 130, 139, 139, 138, 132, 133, 136, 134, 125, 122, 121, 118, 122, 133, 138, 139, 145, 149, 147, 145, 140, 132, 132, 134, 132, 132, 131, 129, 128, 125, 120, 115, 106, 97, 94, 93, 93, 92, 94, 90, 89, 88, 85, 83, 80, 73, 69, 76, 97, 122, 146, 209, 244, 218, 165, 108, 72, 80, 129, 168, 188, 183, 166, 141, 136, 141, 136, 130, 123, 115, 120, 132, 139, 145, 143, 140, 131, 128, 119, 110, 112, 118, 129, 143, 164, 171, 165, 153, 133, 118, 115, 118, 130, 143, 144, 135, 125, 124, 117, 114, 111, 102, 92, 84, 81, 85, 87, 84, 88, 80, 60, 60, 78, 100, 130, 195, 247, 231, 182, 119, 71, 73, 113, 156, 179, 173, 154, 142, 140, 146, 150, 144, 135, 126, 125, 129, 127, 131, 132, 130, 134, 134, 126, 117, 112, 113, 118, 133, 145, 163, 173, 167, 158, 138, 117, 111, 121, 131, 135, 135, 131, 125, 129, 124, 116, 110, 103, 97, 87, 80, 72, 65, 64, 68, 66, 64, 82, 95, 117, 205, 255, 232, 178, 112, 61, 70, 125, 165, 189, 176, 143, 127, 129, 134, 147, 150, 138, 130, 124, 125, 131, 137, 140, 142, 136, 128, 124, 117, 112, 106, 111, 126, 142, 164, 178, 180, 167, 144, 121, 110, 118, 130, 136, 130, 118, 109, 117, 129, 132, 119, 99, 92, 82, 70, 49, 38, 46, 57, 85, 104, 114, 169, 229, 227, 187, 126, 73, 69, 110, 165, 201, 195, 152, 120, 114, 128, 151, 157, 143, 132, 135, 140, 138, 136, 134, 138, 138, 128, 117, 107, 102, 111, 124, 144, 170, 183, 177, 164, 141, 121, 117, 119, 124, 132, 125, 120, 120, 123, 126, 123, 114, 105, 97, 88, 72, 53, 54, 61, 64, 69, 77, 77, 157, 248, 250, 202, 121, 52, 51, 113, 171, 210, 199, 159, 130, 120, 118, 126, 139, 143, 154, 155, 142, 130, 126, 127, 137, 143, 139, 131, 120, 113, 111, 115, 138, 169, 178, 170, 151, 132, 129, 137, 135, 128, 120, 113, 113, 117, 123, 123, 108, 96, 92,
};
const unsigned char dbm[] PROGMEM = {
126, 127, 126, 128, 126, 128, 124, 126, 124, 129, 126, 133, 137, 141, 152, 128, 122, 119, 117, 114, 125, 123, 128, 122, 132, 140, 127, 127, 127, 125, 117, 123, 124, 127, 118, 127, 127, 125, 121, 129, 126, 126, 135, 134, 137, 130, 130, 127, 119, 118, 142, 128, 137, 138, 128, 129, 120, 121, 121, 123, 113, 129, 123, 116, 126, 129, 123, 129, 133, 127, 134, 128, 133, 130, 131, 127, 135, 131, 125, 138, 128, 133, 126, 137, 126, 126, 131, 125, 128, 122, 132, 124, 128, 120, 126, 125, 120, 124, 124, 124, 121, 125, 120, 126, 120, 124, 127, 122, 122, 127, 128, 119, 132, 127, 124, 132, 128, 127, 132, 132, 128, 135, 132, 132, 139, 135, 136, 141, 141, 138, 141, 141, 143, 142, 140, 141, 143, 138, 137, 137, 137, 133, 128, 134, 128, 123, 122, 124, 115, 114, 117, 108, 109, 109, 106, 102, 106, 103, 102, 106, 99, 107, 106, 101, 107, 111, 100, 104, 110, 98, 106, 99, 97, 109, 113, 107, 126, 140, 131, 151, 157, 163, 171, 174, 180, 182, 174, 178, 177, 163, 161, 153, 145, 135, 129, 123, 117, 112, 110, 112, 107, 112, 116, 116, 119, 125, 127, 131, 135, 137, 139, 140, 141, 139, 136, 134, 131, 126, 123, 119, 116, 111, 109, 105, 103, 101, 97, 95, 92, 91, 87, 88, 90, 85, 91, 91, 89, 90, 97, 120, 100, 119, 152, 131, 145, 172, 167, 168, 184, 185, 186, 180, 181, 184, 164, 162, 162, 145, 136, 138, 126, 120, 119, 117, 116, 114, 119, 121, 121, 125, 131, 129, 131, 138, 134, 135, 137, 136, 133, 130, 128, 123, 120, 115, 110, 106, 100, 97, 93, 91, 89, 88, 85, 86, 90, 87, 87, 92, 90, 87, 106, 111, 101, 125, 143, 132, 145, 168, 163, 166, 178, 183, 180, 177, 183, 177, 166, 164, 161, 148, 141, 140, 130, 125, 124, 123, 121, 120, 125, 126, 125, 129, 130, 130, 131, 132, 130, 128, 126, 123, 119, 113, 110, 105, 100, 97, 92, 92, 89, 87, 88, 86, 88, 87, 84, 91, 88, 84, 102, 110, 99, 121, 141, 129, 145, 163, 161, 167, 176, 183, 181, 180, 184, 178, 169, 167, 162, 149, 144, 141, 132, 127, 126, 125, 123, 123, 125, 127, 127, 128, 131, 131, 129, 131, 128, 124, 122, 118, 112, 107, 102, 99, 94, 88, 90, 86, 81, 85, 82, 81, 84, 81, 83, 85, 96, 107, 103, 121, 138, 135, 145, 164, 166, 167, 180, 182, 181, 180, 180, 175, 166, 163, 157, 149, 140, 139, 132, 127, 127, 125, 127, 123, 128, 128, 127, 131, 131, 130, 129, 129, 126, 123, 119, 115, 110, 104, 102, 95, 91, 90, 85, 82, 83, 80, 80, 80, 80, 80, 85, 98, 101, 109, 122, 132, 139, 148, 163, 165, 171, 182, 182, 181, 182, 180, 172, 168, 162, 154, 147, 141, 136, 129, 129, 126, 127, 127, 125, 131, 129, 131, 132, 131, 132, 130, 129, 126, 121, 117, 115, 105, 103, 98, 90, 90, 86, 83, 80, 83, 79, 79, 82, 82, 85, 91, 97, 107, 114, 124, 137, 143, 154, 165, 170, 177, 183, 183, 185, 181, 177, 173, 163, 154, 148, 139, 132, 126, 122, 121, 119, 122, 125, 127, 131, 137, 138, 140, 143, 144, 141, 138, 136, 130, 124, 118, 113, 105, 100, 96, 91, 87, 83, 82, 80, 77, 79, 78, 77, 79, 88, 96, 88, 115, 121, 115, 143, 146, 154, 165, 174, 182, 184, 186, 192, 184, 178, 178, 164, 154, 148, 137, 129, 124, 117, 115, 115, 116, 118, 124, 129, 135, 137, 143, 145, 144, 144, 142, 140, 133, 132, 125, 118, 114, 106, 99, 93, 88, 84, 81, 80, 77, 76, 77, 76, 74, 73, 79, 93, 88, 102, 121, 116, 133, 148, 153, 162, 177, 179, 185, 190, 187, 188, 180, 176, 170, 161, 151, 146, 135, 127, 124, 118, 115, 116, 118, 118, 123, 130, 134, 136, 143, 145, 142, 144, 143, 137, 135, 130, 124, 119, 112, 106, 102, 98, 93, 92, 90, 90, 88, 90, 92, 92, 95, 100, 105, 109, 116, 123, 127, 132, 140, 145, 146, 151, 155, 155, 156, 157, 156, 153, 152, 151, 149, 147, 144, 142, 140, 137, 135, 134, 132, 130, 129, 127, 126, 125, 124, 123, 122, 122, 122, 121, 121, 121, 121, 120, 120, 120, 120, 120, 120, 119, 119, 118, 118, 117, 116, 115, 114, 113, 112, 112, 112, 113, 114, 115, 117, 119, 122, 126, 129, 132, 135, 138, 140, 142, 144, 145, 145, 145, 145, 144, 143, 142, 141, 140, 138, 136, 135, 133, 131, 130, 128, 127, 125, 124, 123, 122, 122, 121, 121, 122, 122, 122, 123, 124, 124, 125, 126, 126, 127, 127, 127, 127, 127, 126, 125, 124, 123, 122, 121, 120, 119, 118, 118, 117, 117, 117, 118, 118, 120, 121, 123, 124, 127, 129, 131, 133, 135, 137, 139, 141, 142, 142, 142, 142, 144, 144, 141, 140, 137, 136, 137, 134, 128,
};
/* get our radio ready */
void setup() {
Wire.begin();
Serial.begin(9600);
Serial.print("Radio status: ");
int result = radio.testConnection();
Serial.println(result);
radio.initialize();
radio.setFrequency(446000);
radio.setVolume1(0xF);
radio.setVolume2(0xF);
radio.setModeReceive();
radio.setTxSourceMic();
radio.setSQLoThresh(80);
radio.setSQOn();
}
/* main program loop */
void loop() {
rssi = radio.readRSSI();
if(rssi > -120) {
for(;;) {
rssi = radio.readRSSI();
if(rssi < -120) { break; }
if(rssi > peak) { peak = rssi; Serial.print("New peak: "); Serial.println(rssi); }
}
}
if(rssi < -120) {
Serial.println("Transmit On");
radio.setTX(1);
delay(250);
tone(11,1000,500);
delay(1000);
itoa(peak,sig,10);
Serial.print(sig);
Serial.print(" dBm...");
for(int x = 0; x < strlen(sig); x++) {
if(sig[x] = '0') { startPlayback(zero, sizeof(zero)); }
if(sig[x] = '1') { startPlayback(one, sizeof(one)); }
if(sig[x] = '2') { startPlayback(two, sizeof(two)); }
if(sig[x] = '3') { startPlayback(three, sizeof(three)); }
if(sig[x] = '4') { startPlayback(four, sizeof(four)); }
if(sig[x] = '5') { startPlayback(five, sizeof(five)); }
if(sig[x] = '6') { startPlayback(six, sizeof(six)); }
if(sig[x] = '7') { startPlayback(seven, sizeof(seven)); }
if(sig[x] = '8') { startPlayback(eight, sizeof(eight)); }
if(sig[x] = '9') { startPlayback(nine, sizeof(nine)); }
if(sig[x] = '-') { startPlayback(minus, sizeof(minus)); }
delay(1000);
}
startPlayback(dbm,sizeof(dbm));
delay(2000);
tone(11,1000,500);
delay(1000);
Serial.println("done!");
radio.morseOut(CALLSIGN);
radio.setTX(0);
Serial.println("Transmit off");
radio.setModeReceive();
delay(1000);
}
}