+/*---------------------------------------------------------------------------------------------------------------------------------------------------\r
+ * SPEAKER:\r
+ *---------------------------------------------------------------------------------------------------------------------------------------------------\r
+ */\r
+#define SPEAKER_START_BIT_PULSE_TIME 440.0e-6 // 1340 usec pulse\r
+#define SPEAKER_START_BIT_PAUSE_TIME 1250.0e-6 // 340 usec pause\r
+#define SPEAKER_1_PULSE_TIME 1250.0e-6 // 1340 usec pulse\r
+#define SPEAKER_1_PAUSE_TIME 440.0e-6 // 340 usec pause\r
+#define SPEAKER_0_PULSE_TIME 440.0e-6 // 500 usec pulse\r
+#define SPEAKER_0_PAUSE_TIME 1250.0e-6 // 1300 usec pause\r
+#define SPEAKER_FRAMES 2 // Nubert sends 2 frames\r
+#define SPEAKER_AUTO_REPETITION_PAUSE_TIME 35.0e-3 // auto repetition after 35ms\r
+#define SPEAKER_FRAME_REPEAT_PAUSE_TIME 35.0e-3 // frame repeat after 45ms\r
+#define SPEAKER_ADDRESS_OFFSET 0 // skip 0 bits\r
+#define SPEAKER_ADDRESS_LEN 0 // read 0 address bits\r
+#define SPEAKER_COMMAND_OFFSET 0 // skip 0 bits\r
+#define SPEAKER_COMMAND_LEN 10 // read 10 bits\r
+#define SPEAKER_COMPLETE_DATA_LEN 10 // complete length\r
+#define SPEAKER_STOP_BIT 1 // has stop bit\r
+#define SPEAKER_LSB 0 // MSB?\r
+#define SPEAKER_FLAGS 0 // flags\r
+\r