]> cloudbase.mooo.com Git - irmp.git/commitdiff
Version 2.8.1: added PENTAX protocol
authorukw <ukw@aeb2e35e-bfc4-4214-b83c-9e8de998ed28>
Thu, 23 Apr 2015 12:48:55 +0000 (12:48 +0000)
committerukw <ukw@aeb2e35e-bfc4-4214-b83c-9e8de998ed28>
Thu, 23 Apr 2015 12:48:55 +0000 (12:48 +0000)
git-svn-id: svn://mikrocontroller.net/irmp@155 aeb2e35e-bfc4-4214-b83c-9e8de998ed28

irmp.c
irmpconfig.h
irmpprotocols.h
irsnd.c
irsndconfig.h

diff --git a/irmp.c b/irmp.c
index 263c96bb70cffcfcf8b1e85d5b1675537922ca5c..62bfbe933cdd93f444b5845118c59c659d804373 100644 (file)
--- a/irmp.c
+++ b/irmp.c
@@ -3,7 +3,7 @@
  *\r
  * Copyright (c) 2009-2015 Frank Meyer - frank(at)fli4l.de\r
  *\r
- * $Id: irmp.c,v 1.170 2015/01/28 09:18:30 fm Exp $\r
+ * $Id: irmp.c,v 1.171 2015/04/23 12:46:13 fm Exp $\r
  *\r
  * Supported AVR mikrocontrollers:\r
  *\r
 #define RCMM32_BIT_11_PAUSE_LEN_MIN             ((uint_fast8_t)(F_INTERRUPTS * RCMM32_11_PAUSE_TIME * MIN_TOLERANCE_05 + 0.5) - 1)\r
 #define RCMM32_BIT_11_PAUSE_LEN_MAX             ((uint_fast8_t)(F_INTERRUPTS * RCMM32_11_PAUSE_TIME * MAX_TOLERANCE_05 + 0.5) + 1)\r
 \r
+#define PENTAX_START_BIT_PULSE_LEN_MIN          ((uint_fast8_t)(F_INTERRUPTS * PENTAX_START_BIT_PULSE_TIME * MIN_TOLERANCE_10 + 0.5) - 1)\r
+#define PENTAX_START_BIT_PULSE_LEN_MAX          ((uint_fast8_t)(F_INTERRUPTS * PENTAX_START_BIT_PULSE_TIME * MAX_TOLERANCE_10 + 0.5) + 1)\r
+#define PENTAX_START_BIT_PAUSE_LEN_MIN          ((uint_fast8_t)(F_INTERRUPTS * PENTAX_START_BIT_PAUSE_TIME * MIN_TOLERANCE_10 + 0.5) - 1)\r
+#define PENTAX_START_BIT_PAUSE_LEN_MAX          ((uint_fast8_t)(F_INTERRUPTS * PENTAX_START_BIT_PAUSE_TIME * MAX_TOLERANCE_10 + 0.5) + 1)\r
+#define PENTAX_1_PAUSE_LEN_EXACT                ((uint_fast8_t)(F_INTERRUPTS * PENTAX_1_PAUSE_TIME + 0.5))\r
+#define PENTAX_PULSE_LEN_MIN                    ((uint_fast8_t)(F_INTERRUPTS * PENTAX_PULSE_TIME * MIN_TOLERANCE_20 + 0.5) - 1)\r
+#define PENTAX_PULSE_LEN_MAX                    ((uint_fast8_t)(F_INTERRUPTS * PENTAX_PULSE_TIME * MAX_TOLERANCE_20 + 0.5) + 1)\r
+#define PENTAX_1_PAUSE_LEN_MIN                  ((uint_fast8_t)(F_INTERRUPTS * PENTAX_1_PAUSE_TIME * MIN_TOLERANCE_20 + 0.5) - 1)\r
+#define PENTAX_1_PAUSE_LEN_MAX                  ((uint_fast8_t)(F_INTERRUPTS * PENTAX_1_PAUSE_TIME * MAX_TOLERANCE_20 + 0.5) + 1)\r
+#define PENTAX_0_PAUSE_LEN                      ((uint_fast8_t)(F_INTERRUPTS * PENTAX_0_PAUSE_TIME))\r
+#define PENTAX_PULSE_LEN_MIN                    ((uint_fast8_t)(F_INTERRUPTS * PENTAX_PULSE_TIME * MIN_TOLERANCE_20 + 0.5) - 1)\r
+#define PENTAX_PULSE_LEN_MAX                    ((uint_fast8_t)(F_INTERRUPTS * PENTAX_PULSE_TIME * MAX_TOLERANCE_20 + 0.5) + 1)\r
+#define PENTAX_0_PAUSE_LEN_MIN                  ((uint_fast8_t)(F_INTERRUPTS * PENTAX_0_PAUSE_TIME * MIN_TOLERANCE_20 + 0.5) - 1)\r
+#define PENTAX_0_PAUSE_LEN_MAX                  ((uint_fast8_t)(F_INTERRUPTS * PENTAX_0_PAUSE_TIME * MAX_TOLERANCE_20 + 0.5) + 1)\r
+\r
 #define RADIO1_START_BIT_PULSE_LEN_MIN          ((uint_fast8_t)(F_INTERRUPTS * RADIO1_START_BIT_PULSE_TIME * MIN_TOLERANCE_10 + 0.5) - 1)\r
 #define RADIO1_START_BIT_PULSE_LEN_MAX          ((uint_fast8_t)(F_INTERRUPTS * RADIO1_START_BIT_PULSE_TIME * MAX_TOLERANCE_10 + 0.5) + 1)\r
 #define RADIO1_START_BIT_PAUSE_LEN_MIN          ((uint_fast8_t)(F_INTERRUPTS * RADIO1_START_BIT_PAUSE_TIME * MIN_TOLERANCE_10 + 0.5) - 1)\r
@@ -538,6 +553,8 @@ static const char proto_rcmm12[]        PROGMEM = "RCMM12";
 static const char proto_speaker[]       PROGMEM = "SPEAKER";\r
 static const char proto_lgair[]         PROGMEM = "LGAIR";\r
 static const char proto_samsung48[]     PROGMEM = "SAMSG48";\r
+static const char proto_merlin[]        PROGMEM = "MERLIN";\r
+static const char proto_pentax[]        PROGMEM = "PENTAX";\r
 \r
 static const char proto_radio1[]        PROGMEM = "RADIO1";\r
 \r
@@ -586,7 +603,8 @@ irmp_protocol_names[IRMP_N_PROTOCOLS + 1] PROGMEM =
     proto_speaker,\r
     proto_lgair,\r
     proto_samsung48,\r
-\r
+    proto_merlin,\r
+    proto_pentax,\r
     proto_radio1\r
 };\r
 \r
@@ -1707,6 +1725,31 @@ static const PROGMEM IRMP_PARAMETER rcmm_param =
 \r
 #endif\r
 \r
+#if IRMP_SUPPORT_PENTAX_PROTOCOL == 1\r
+\r
+static const PROGMEM IRMP_PARAMETER pentax_param =\r
+{\r
+    IRMP_PENTAX_PROTOCOL,                                               // protocol:        ir protocol\r
+    PENTAX_PULSE_LEN_MIN,                                               // pulse_1_len_min: minimum length of pulse with bit value 1\r
+    PENTAX_PULSE_LEN_MAX,                                               // pulse_1_len_max: maximum length of pulse with bit value 1\r
+    PENTAX_1_PAUSE_LEN_MIN,                                             // pause_1_len_min: minimum length of pause with bit value 1\r
+    PENTAX_1_PAUSE_LEN_MAX,                                             // pause_1_len_max: maximum length of pause with bit value 1\r
+    PENTAX_PULSE_LEN_MIN,                                               // pulse_0_len_min: minimum length of pulse with bit value 0\r
+    PENTAX_PULSE_LEN_MAX,                                               // pulse_0_len_max: maximum length of pulse with bit value 0\r
+    PENTAX_0_PAUSE_LEN_MIN,                                             // pause_0_len_min: minimum length of pause with bit value 0\r
+    PENTAX_0_PAUSE_LEN_MAX,                                             // pause_0_len_max: maximum length of pause with bit value 0\r
+    PENTAX_ADDRESS_OFFSET,                                              // address_offset:  address offset\r
+    PENTAX_ADDRESS_OFFSET + PENTAX_ADDRESS_LEN,                         // address_end:     end of address\r
+    PENTAX_COMMAND_OFFSET,                                              // command_offset:  command offset\r
+    PENTAX_COMMAND_OFFSET + PENTAX_COMMAND_LEN,                         // command_end:     end of command\r
+    PENTAX_COMPLETE_DATA_LEN,                                           // complete_len:    complete length of frame\r
+    PENTAX_STOP_BIT,                                                    // stop_bit:        flag: frame has stop bit\r
+    PENTAX_LSB,                                                         // lsb_first:       flag: LSB first\r
+    PENTAX_FLAGS                                                        // flags:           some flags\r
+};\r
+\r
+#endif\r
+\r
 #if IRMP_SUPPORT_RADIO1_PROTOCOL == 1\r
 \r
 static const PROGMEM IRMP_PARAMETER radio1_param =\r
@@ -2512,6 +2555,20 @@ irmp_ISR (void)
                     else\r
 #endif // IRMP_SUPPORT_ROOMBA_PROTOCOL == 1\r
 \r
+#if IRMP_SUPPORT_PENTAX_PROTOCOL == 1\r
+                    if (irmp_pulse_time >= PENTAX_START_BIT_PULSE_LEN_MIN && irmp_pulse_time <= PENTAX_START_BIT_PULSE_LEN_MAX &&\r
+                        irmp_pause_time >= PENTAX_START_BIT_PAUSE_LEN_MIN && irmp_pause_time <= PENTAX_START_BIT_PAUSE_LEN_MAX)\r
+                    {\r
+#ifdef ANALYZE\r
+                        ANALYZE_PRINTF ("protocol = PENTAX, start bit timings: pulse: %3d - %3d, pause: %3d - %3d\n",\r
+                                        PENTAX_START_BIT_PULSE_LEN_MIN, PENTAX_START_BIT_PULSE_LEN_MAX,\r
+                                        PENTAX_START_BIT_PAUSE_LEN_MIN, PENTAX_START_BIT_PAUSE_LEN_MAX);\r
+#endif // ANALYZE\r
+                        irmp_param_p = (IRMP_PARAMETER *) &pentax_param;\r
+                    }\r
+                    else\r
+#endif // IRMP_SUPPORT_PENTAX_PROTOCOL == 1\r
+\r
 #if IRMP_SUPPORT_NIKON_PROTOCOL == 1\r
                     if (irmp_pulse_time >= NIKON_START_BIT_PULSE_LEN_MIN && irmp_pulse_time <= NIKON_START_BIT_PULSE_LEN_MAX &&\r
                         irmp_pause_time >= NIKON_START_BIT_PAUSE_LEN_MIN && irmp_pause_time <= NIKON_START_BIT_PAUSE_LEN_MAX)\r
index acbaf3c229db40be478d56362bf12735cc5c9aa1..7e16f2635b0b1eddb1853f3a861566e06aa3ee33 100644 (file)
@@ -6,7 +6,7 @@
  * Copyright (c) 2009-2015 Frank Meyer - frank(at)fli4l.de\r
  * Extensions for PIC 12F1820 W.Strobl 2014-07-20\r
  *\r
- * $Id: irmpconfig.h,v 1.125 2015/02/26 15:42:53 fm Exp $\r
+ * $Id: irmpconfig.h,v 1.127 2015/04/23 12:47:29 fm Exp $\r
  *\r
  * This program is free software; you can redistribute it and/or modify\r
  * it under the terms of the GNU General Public License as published by\r
@@ -91,6 +91,7 @@
 #define IRMP_SUPPORT_LGAIR_PROTOCOL             0       // LG Air Condition     >= 10000                 ~300 bytes\r
 #define IRMP_SUPPORT_SAMSUNG48_PROTOCOL         0       // Samsung48            >= 10000                 ~100 bytes (SAMSUNG must be enabled!)\r
 #define IRMP_SUPPORT_MERLIN_PROTOCOL            0       // Merlin               >= 15000 (better 20000)  ~300 bytes\r
+#define IRMP_SUPPORT_PENTAX_PROTOCOL            0       // Pentax               >= 10000                 ~150 bytes\r
 #define IRMP_SUPPORT_RADIO1_PROTOCOL            0       // RADIO, e.g. TEVION   >= 10000                 ~250 bytes (experimental)\r
 \r
 /*---------------------------------------------------------------------------------------------------------------------------------------------------\r
index 134aa4af2399c6b36c1bbaa01685335ebe809cab..763e2b5c07f18343fa5923622366e816e3b6265c 100644 (file)
@@ -5,7 +5,7 @@
  *\r
  * Copyright (c) 2013-2015 Frank Meyer - frank(at)fli4l.de\r
  *\r
- * $Id: irmpprotocols.h,v 1.31 2015/02/26 15:42:53 fm Exp $\r
+ * $Id: irmpprotocols.h,v 1.32 2015/04/23 12:46:13 fm Exp $\r
  *\r
  * This program is free software; you can redistribute it and/or modify\r
  * it under the terms of the GNU General Public License as published by\r
 #define IRMP_LGAIR_PROTOCOL                     40              // LG air conditioner\r
 #define IRMP_SAMSUNG48_PROTOCOL                 41              // air conditioner with SAMSUNG protocol (48 bits)\r
 #define IRMP_MERLIN_PROTOCOL                    42              // Merlin (Pollin 620 185)\r
+#define IRMP_PENTAX_PROTOCOL                    43              // Pentax camera\r
+#define IRMP_RADIO1_PROTOCOL                    44              // Radio protocol (experimental status), do not use it yet!\r
 \r
-#define IRMP_RADIO1_PROTOCOL                    43              // Radio protocol (experimental status), do not use it yet!\r
-\r
-#define IRMP_N_PROTOCOLS                        43              // number of supported protocols\r
+#define IRMP_N_PROTOCOLS                        44              // number of supported protocols\r
 \r
 /*---------------------------------------------------------------------------------------------------------------------------------------------------\r
  * timing constants:\r
@@ -772,7 +772,7 @@ typedef uint8_t     PAUSE_LEN;
 \r
 #define RCMM32_FRAME_REPEAT_PAUSE_TIME            80.0e-3                       // frame repeat after 80 ms\r
 #define RCMM32_ADDRESS_OFFSET                    0                              // skip 0 bits\r
-#define RCMM32_ADDRESS_LEN                      16                              // read 16 address bits\r
+#define RCMM32_ADDRESS_LEN                      16                              //  read 16 address bits\r
 #define RCMM32_COMMAND_OFFSET                   17                              // skip 17 bits\r
 #define RCMM32_COMMAND_LEN                      15                              // read 15 bits\r
 #define RCMM32_COMPLETE_DATA_LEN                32                              // complete length\r
@@ -780,26 +780,45 @@ typedef uint8_t     PAUSE_LEN;
 #define RCMM32_LSB                              0                               // LSB...MSB\r
 #define RCMM32_FLAGS                            0                               // flags\r
 \r
+/*---------------------------------------------------------------------------------------------------------------------------------------------------\r
+ * PENTAX:\r
+ *---------------------------------------------------------------------------------------------------------------------------------------------------\r
+ */\r
+#define PENTAX_START_BIT_PULSE_TIME             13000.0e-6                      // 13 msec pulse\r
+#define PENTAX_START_BIT_PAUSE_TIME              3000.0e-6                      // 3 msec pause\r
+#define PENTAX_PULSE_TIME                        1000.0e-6                      // 1 msec pulse\r
+#define PENTAX_1_PAUSE_TIME                      3000.0e-6                      // 3 msec pause\r
+#define PENTAX_0_PAUSE_TIME                      1000.0e-6                      // 1 msec pause\r
+#define PENTAX_FRAME_REPEAT_PAUSE_TIME             60.0e-3                      // frame repeat after 60ms\r
+#define PENTAX_ADDRESS_OFFSET                  0                                // skip 0 bits\r
+#define PENTAX_ADDRESS_LEN                     0                                // read 0 address bits\r
+#define PENTAX_COMMAND_OFFSET                  0                                // skip 0 bits\r
+#define PENTAX_COMMAND_LEN                     6                                // read 6 bits\r
+#define PENTAX_COMPLETE_DATA_LEN               6                                // complete length\r
+#define PENTAX_STOP_BIT                        1                                // has stop bit\r
+#define PENTAX_LSB                             0                                // LSB...MSB\r
+#define PENTAX_FLAGS                           0                                // flags\r
+\r
 /*---------------------------------------------------------------------------------------------------------------------------------------------------\r
  * RADIO1 - e.g. Tevion\r
  *---------------------------------------------------------------------------------------------------------------------------------------------------\r
  */\r
-#define RADIO1_START_BIT_PULSE_TIME            3000.0e-6                       // 3000 usec pulse\r
-#define RADIO1_START_BIT_PAUSE_TIME            7000.0e-6                       // 7000 usec pulse\r
-#define RADIO1_0_PULSE_TIME                     500.0e-6                       //  500 usec pulse\r
-#define RADIO1_0_PAUSE_TIME                    1000.0e-6                       // 1000 usec pause\r
-#define RADIO1_1_PULSE_TIME                    1000.0e-6                       // 1000 usec pulse\r
-#define RADIO1_1_PAUSE_TIME                     500.0e-6                       //  500 usec pause\r
-\r
-#define RADIO1_FRAME_REPEAT_PAUSE_TIME           25.0e-3                       // frame repeat after 25ms\r
-#define RADIO1_ADDRESS_OFFSET                   4                              // skip 4 bits\r
-#define RADIO1_ADDRESS_LEN                     16                              // read 16 address bits\r
-#define RADIO1_COMMAND_OFFSET                  20                              // skip 4 + 16 bits\r
-#define RADIO1_COMMAND_LEN                      3                              // read 3 command bits\r
-#define RADIO1_COMPLETE_DATA_LEN               23                              // complete length\r
-#define RADIO1_STOP_BIT                        1                               // has stop bit\r
-#define RADIO1_LSB                             1                               // LSB...MSB?\r
-#define RADIO1_FLAGS                           0                               // flags\r
+#define RADIO1_START_BIT_PULSE_TIME            3000.0e-6                        // 3000 usec pulse\r
+#define RADIO1_START_BIT_PAUSE_TIME            7000.0e-6                        // 7000 usec pulse\r
+#define RADIO1_0_PULSE_TIME                     500.0e-6                        //  500 usec pulse\r
+#define RADIO1_0_PAUSE_TIME                    1000.0e-6                        // 1000 usec pause\r
+#define RADIO1_1_PULSE_TIME                    1000.0e-6                        // 1000 usec pulse\r
+#define RADIO1_1_PAUSE_TIME                     500.0e-6                        //  500 usec pause\r
+\r
+#define RADIO1_FRAME_REPEAT_PAUSE_TIME           25.0e-3                        // frame repeat after 25ms\r
+#define RADIO1_ADDRESS_OFFSET                   4                               // skip 4 bits\r
+#define RADIO1_ADDRESS_LEN                     16                               // read 16 address bits\r
+#define RADIO1_COMMAND_OFFSET                  20                               // skip 4 + 16 bits\r
+#define RADIO1_COMMAND_LEN                      3                               // read 3 command bits\r
+#define RADIO1_COMPLETE_DATA_LEN               23                               // complete length\r
+#define RADIO1_STOP_BIT                        1                                // has stop bit\r
+#define RADIO1_LSB                             1                                // LSB...MSB?\r
+#define RADIO1_FLAGS                           0                                // flags\r
 \r
 /*---------------------------------------------------------------------------------------------------------------------------------------------------\r
  * Frame Repetitions:\r
diff --git a/irsnd.c b/irsnd.c
index b414d8508b9c7ba54f7806fdfa54e46e7fd58303..af089083375426ac1a44d32de0d5072afeb2ba12 100644 (file)
--- a/irsnd.c
+++ b/irsnd.c
@@ -13,7 +13,7 @@
  * ATmega164, ATmega324, ATmega644,  ATmega644P, ATmega1284, ATmega1284P\r
  * ATmega88,  ATmega88P, ATmega168,  ATmega168P, ATmega328P\r
  *\r
- * $Id: irsnd.c,v 1.84 2015/02/26 15:42:53 fm Exp $\r
+ * $Id: irsnd.c,v 1.85 2015/04/23 12:46:13 fm Exp $\r
  *\r
  * This program is free software; you can redistribute it and/or modify\r
  * it under the terms of the GNU General Public License as published by\r
 #define ROOMBA_0_PAUSE_LEN                      (uint8_t)(F_INTERRUPTS * ROOMBA_0_PAUSE_TIME + 0.5)\r
 #define ROOMBA_FRAME_REPEAT_PAUSE_LEN           (uint16_t)(F_INTERRUPTS * ROOMBA_FRAME_REPEAT_PAUSE_TIME + 0.5)               // use uint16_t!\r
 \r
+#define PENTAX_START_BIT_PULSE_LEN              (uint8_t)(F_INTERRUPTS * PENTAX_START_BIT_PULSE_TIME + 0.5)\r
+#define PENTAX_START_BIT_PAUSE_LEN              (uint8_t)(F_INTERRUPTS * PENTAX_START_BIT_PAUSE_TIME + 0.5)\r
+#define PENTAX_REPEAT_START_BIT_PAUSE_LEN       (uint8_t)(F_INTERRUPTS * PENTAX_REPEAT_START_BIT_PAUSE_TIME + 0.5)\r
+#define PENTAX_PULSE_LEN                        (uint8_t)(F_INTERRUPTS * PENTAX_PULSE_TIME + 0.5)\r
+#define PENTAX_1_PAUSE_LEN                      (uint8_t)(F_INTERRUPTS * PENTAX_1_PAUSE_TIME + 0.5)\r
+#define PENTAX_0_PAUSE_LEN                      (uint8_t)(F_INTERRUPTS * PENTAX_0_PAUSE_TIME + 0.5)\r
+#define PENTAX_FRAME_REPEAT_PAUSE_LEN           (uint16_t)(F_INTERRUPTS * PENTAX_FRAME_REPEAT_PAUSE_TIME + 0.5)              // use uint16_t!\r
+\r
 static volatile uint8_t                         irsnd_busy = 0;\r
 static volatile uint8_t                         irsnd_protocol = 0;\r
 static volatile uint8_t                         irsnd_buffer[6] = {0};\r
@@ -1308,12 +1316,20 @@ irsnd_send_data (IRMP_DATA * irmp_data_p, uint8_t do_wait)
 #if IRSND_SUPPORT_ROOMBA_PROTOCOL == 1\r
         case IRMP_ROOMBA_PROTOCOL:\r
         {\r
-\r
             irsnd_buffer[0] = (irmp_data_p->command & 0x7F) << 1;                                               // CCCCCCC.\r
             irsnd_busy      = TRUE;\r
             break;\r
         }\r
 #endif\r
+#if IRSND_SUPPORT_PENTAX_PROTOCOL == 1\r
+        case IRMP_PENTAX_PROTOCOL:\r
+        {\r
+            irsnd_buffer[0] = (irmp_data_p->command & 0x3F) << 2;                                               // CCCCCC..\r
+            irsnd_busy      = TRUE;\r
+            break;\r
+        }\r
+#endif\r
+\r
         default:\r
         {\r
             break;\r
@@ -2069,6 +2085,24 @@ irsnd_ISR (void)
                         irsnd_set_freq (IRSND_FREQ_38_KHZ);\r
                         break;\r
                     }\r
+#endif\r
+#if IRSND_SUPPORT_PENTAX_PROTOCOL == 1\r
+                    case IRMP_PENTAX_PROTOCOL:\r
+                    {\r
+                        startbit_pulse_len          = PENTAX_START_BIT_PULSE_LEN;\r
+                        startbit_pause_len          = PENTAX_START_BIT_PAUSE_LEN;\r
+                        complete_data_len           = PENTAX_COMPLETE_DATA_LEN;\r
+                        pulse_1_len                 = PENTAX_PULSE_LEN;\r
+                        pause_1_len                 = PENTAX_1_PAUSE_LEN - 1;\r
+                        pulse_0_len                 = PENTAX_PULSE_LEN;\r
+                        pause_0_len                 = PENTAX_0_PAUSE_LEN - 1;\r
+                        has_stop_bit                = PENTAX_STOP_BIT;\r
+                        n_auto_repetitions          = 1;                                            // 1 frame\r
+                        auto_repetition_pause_len   = 0;\r
+                        repeat_frame_pause_len      = PENTAX_FRAME_REPEAT_PAUSE_LEN;\r
+                        irsnd_set_freq (IRSND_FREQ_38_KHZ);\r
+                        break;\r
+                    }\r
 #endif\r
                     default:\r
                     {\r
@@ -2155,13 +2189,16 @@ irsnd_ISR (void)
 #if IRSND_SUPPORT_ROOMBA_PROTOCOL == 1\r
                 case IRMP_ROOMBA_PROTOCOL:\r
 #endif\r
+#if IRSND_SUPPORT_PENTAX_PROTOCOL == 1\r
+                case IRMP_PENTAX_PROTOCOL:\r
+#endif\r
 \r
 #if IRSND_SUPPORT_SIRCS_PROTOCOL == 1  || IRSND_SUPPORT_NEC_PROTOCOL == 1 || IRSND_SUPPORT_NEC16_PROTOCOL == 1 || IRSND_SUPPORT_NEC42_PROTOCOL == 1 || \\r
     IRSND_SUPPORT_LGAIR_PROTOCOL == 1 || IRSND_SUPPORT_SAMSUNG_PROTOCOL == 1 || IRSND_SUPPORT_MATSUSHITA_PROTOCOL == 1 ||   \\r
     IRSND_SUPPORT_KASEIKYO_PROTOCOL == 1 || IRSND_SUPPORT_RECS80_PROTOCOL == 1 || IRSND_SUPPORT_RECS80EXT_PROTOCOL == 1 || IRSND_SUPPORT_DENON_PROTOCOL == 1 || \\r
     IRSND_SUPPORT_NUBERT_PROTOCOL == 1 || IRSND_SUPPORT_SPEAKER_PROTOCOL == 1 || IRSND_SUPPORT_BANG_OLUFSEN_PROTOCOL == 1 || IRSND_SUPPORT_FDC_PROTOCOL == 1 || IRSND_SUPPORT_RCCAR_PROTOCOL == 1 ||   \\r
     IRSND_SUPPORT_JVC_PROTOCOL == 1 || IRSND_SUPPORT_NIKON_PROTOCOL == 1 || IRSND_SUPPORT_LEGO_PROTOCOL == 1 || IRSND_SUPPORT_THOMSON_PROTOCOL == 1 || \\r
-    IRSND_SUPPORT_ROOMBA_PROTOCOL == 1 || IRSND_SUPPORT_TELEFUNKEN_PROTOCOL == 1\r
+    IRSND_SUPPORT_ROOMBA_PROTOCOL == 1 || IRSND_SUPPORT_TELEFUNKEN_PROTOCOL == 1 || IRSND_SUPPORT_PENTAX_PROTOCOL == 1\r
                 {\r
 #if IRSND_SUPPORT_DENON_PROTOCOL == 1\r
                     if (irsnd_protocol == IRMP_DENON_PROTOCOL)\r
index 9399b9bef3fc710da8ef03b9b2991e418af09296..22be163251bd178f9f2e260f753b959b52da9e01 100644 (file)
@@ -5,7 +5,7 @@
  *\r
  * Copyright (c) 2010-2015 Frank Meyer - frank(at)fli4l.de\r
  *\r
- * $Id: irsndconfig.h,v 1.65 2015/02/26 15:42:53 fm Exp $\r
+ * $Id: irsndconfig.h,v 1.67 2015/04/23 12:47:29 fm Exp $\r
  *\r
  * This program is free software; you can redistribute it and/or modify\r
  * it under the terms of the GNU General Public License as published by\r
@@ -80,6 +80,7 @@
 #define IRSND_SUPPORT_RCMM_PROTOCOL             0       // RCMM 12,24, or 32    >= 20000                 DON'T CHANGE, NOT SUPPORTED YET!\r
 #define IRSND_SUPPORT_LGAIR_PROTOCOL            0       // LG Air Condition     >= 10000                 ~150 bytes.\r
 #define IRSND_SUPPORT_SAMSUNG48_PROTOCOL        0       // Samsung48            >= 10000                 ~100 bytes\r
+#define IRSND_SUPPORT_PENTAX_PROTOCOL           0       // Pentax               >= 10000                 ~150 bytes\r
 \r
 \r
 /*---------------------------------------------------------------------------------------------------------------------------------------------------\r