+#define GRUNDIG_FRAMES 2 // GRUNDIG sends each frame 1+1 times\r
+#define GRUNDIG_AUTO_REPETITION_PAUSE_TIME 20.0e-3 // repetition after 20ms\r
+#define GRUNDIG_ADDRESS_OFFSET 0 // no address\r
+#define GRUNDIG_ADDRESS_LEN 0 // no address\r
+#define GRUNDIG_COMMAND_OFFSET 1 // skip 1 start bit\r
+#define GRUNDIG_COMMAND_LEN 9 // read 9 command bits\r
+#define GRUNDIG_COMPLETE_DATA_LEN 10 // complete length: 1 start bit + 9 data bits\r
+\r
+#define NOKIA_FRAMES 3 // NOKIA sends each frame 1 + 1 + 1 times\r
+#define NOKIA_AUTO_REPETITION_PAUSE_TIME 20.0e-3 // repetition after 20ms\r
+#define NOKIA_ADDRESS_OFFSET 9 // skip 9 bits (1 start bit + 8 data bits)\r
+#define NOKIA_ADDRESS_LEN 8 // 7 address bits\r
+#define NOKIA_COMMAND_OFFSET 1 // skip 1 bit (1 start bit)\r
+#define NOKIA_COMMAND_LEN 8 // read 8 command bits\r
+#define NOKIA_COMPLETE_DATA_LEN 17 // complete length: 1 start bit + 8 address bits + 8 command bits\r
+\r
+#define SIEMENS_BIT_TIME 250.0e-6 // 250 usec pulse/pause\r
+#define SIEMENS_FRAME_REPEAT_PAUSE_TIME 45.0e-3 // frame repeat after 45ms\r
+#define SIEMENS_ADDRESS_OFFSET 2 // skip 2 start bits\r
+#define SIEMENS_ADDRESS_LEN 12 // read 12 address bits\r
+#define SIEMENS_COMMAND_OFFSET 15 // skip 15 bits (2 start bits + 12 address bits + 1 inverted bit)\r
+#define SIEMENS_COMMAND_LEN 7 // read 7 command bits\r
+#define SIEMENS_COMPLETE_DATA_LEN 23 // complete length\r
+#define SIEMENS_STOP_BIT 0 // has no stop bit\r
+#define SIEMENS_LSB 0 // MSB...LSB\r
+\r
+#define FDC_START_BIT_PULSE_TIME 1390.0e-6 // 1390 usec pulse\r
+#define FDC_START_BIT_PAUSE_TIME 640.0e-6 // 640 usec pause\r
+#define FDC_PULSE_TIME 200.0e-6 // 200 usec pulse\r
+#define FDC_1_PAUSE_TIME 475.0e-6 // 475 usec pause\r
+#define FDC_0_PAUSE_TIME 145.0e-6 // 145 usec pause\r
+#define FDC_FRAME_REPEAT_PAUSE_TIME 40.0e-3 // frame repeat after 40ms\r
+#define FDC_ADDRESS_OFFSET 0 // skip 0 bits\r
+#define FDC_ADDRESS_LEN 16 // read 16 address bits\r
+#define FDC_COMMAND_OFFSET 25 // skip 25 bits (16 address + 9 0-bits)\r
+#define FDC_COMMAND_LEN 12 // read 12 bits\r
+#define FDC_COMPLETE_DATA_LEN 40 // complete length\r
+#define FDC_STOP_BIT 1 // has stop bit\r
+#define FDC_LSB 1 // LSB...MSB\r
+\r
+#define AUTO_FRAME_REPETITION_TIME 50.0e-3 // SIRCS/SAMSUNG32/NUBERT: automatic repetition after 25-50ms\r