1 // *********************************************************************
    2 //   IQRF HWPIDs                                                       *
    3 // *********************************************************************
    4 // Copyright (c) IQRF Tech s.r.o.
    5 //
    6 // File:    $RCSfile: IQRF_HWPID.h,v $
    7 // Version: $Revision: 1.7 $
    8 // Date:    $Date: 2017/10/19 07:49:41 $
    9 //
   10 // Revision history:
   11 //   2017/08/14  Release for DPA 3.01
   12 //
   13 // *********************************************************************
   14 
   15 // Online DPA documentation http://www.iqrf.org/DpaTechGuide/
   16 
   17 #ifndef _IQRFSTD_HWPID_
   18 #define _IQRFSTD_HWPID_
   19 
   20 //# Class #1 #################################################################################
   21 // Manufacturer: bits:0-9, bit.0=0 (even numbers, but not 0x0000)
   22 // Product: bits:10-15 (6 bits)
   23 //############################################################################################
   24 #define HWPID_CLS1(prod,man)  ( (uns16)(man) | ( (uns16)(prod) << 10 ) )
   25 
   26 // -------------------------------------------------------------------------------------------
   27 // MICRORISC s.r.o.
   28 #define HWPID_MICRORISC   0x002
   29 
   30 // DDC-SE01 sensor example 
   31 // (0002_DDC-SE01.c)
   32 #define HWPID_MICRORISC__DEMO_DDC_SE01                HWPID_CLS1( 0x00, HWPID_MICRORISC ) // 0x0002
   33 
   34 // DDC-SE01 + DDC-RE01 sensor example 
   35 // (0402_DDC-SE+RE.c)
   36 #define HWPID_MICRORISC__DEMO_DDC_SE01_RE01           HWPID_CLS1( 0x01, HWPID_MICRORISC ) // 0x0402
   37 
   38 // TR temperature sensor example 
   39 // (0802_TrThermometer.c)
   40 #define HWPID_MICRORISC__DEMO_TR_THERMOMETER          HWPID_CLS1( 0x02, HWPID_MICRORISC ) // 0x0802
   41 
   42 // Binary output example using LEDs and DDC-RE01 
   43 // (0C02_BinaryOutput-Template.c)
   44 #define HWPID_MICRORISC__DEMO_BINARY_OUTPUT           HWPID_CLS1( 0x03, HWPID_MICRORISC ) // 0x0C02
   45 
   46 // Light example 
   47 // (1002_Light-Template.c)
   48 #define HWPID_MICRORISC__DEMO_LIGHT                   HWPID_CLS1( 0x04, HWPID_MICRORISC ) // 0x1002
   49 
   50 // Sensor template 
   51 // (1402_Sensor-Template.c)
   52 #define HWPID_MICRORISC__DEMO_SENSOR_TEMPLATE         HWPID_CLS1( 0x05, HWPID_MICRORISC ) // 0x1402
   53 
   54 //# Class #2 #################################################################################
   55 // Manufacturer: bits:0-11, bit.0=1 (odd numbers, never value 0x???F)
   56 // Product: bits:12-15 (4 bits)
   57 //############################################################################################
   58 #define HWPID_CLS2(prod,man)  ( (uns16)(man) | ( (uns16)(prod) << 12 ) )
   59 
   60 // -------------------------------------------------------------------------------------------
   61 // PROTRONIX s.r.o.
   62 #define HWPID_PROTRONIX   0x001
   63 
   64 // Temperature+Humidity+CO2 sensor 
   65 // (0001_Protronix-T+RH+CO2.c)
   66 #define HWPID_PROTRONIX__TEMP_HUM_CO2                 HWPID_CLS2( 0x0, HWPID_PROTRONIX ) // 0x0001
   67 
   68 // Temperature+Humidity+VOC sensor 
   69 // (1001_Protronix-T+RH+VOC.c)
   70 #define HWPID_PROTRONIX__TEMP_HUM_VOC                 HWPID_CLS2( 0x1, HWPID_PROTRONIX ) // 0x1001
   71 
   72 // Temperature+Humidity+CO2 sensor + Relay
   73 // (2001_Protronix-T+RH+CO2+Relay.c)
   74 #define HWPID_PROTRONIX__TEMP_HUM_CO2_RELAY           HWPID_CLS2( 0x2, HWPID_PROTRONIX ) // 0x2001
   75 
   76 // Temperature+Humidity sensor 
   77 // (3001_Protronix-T+RH.c)
   78 #define HWPID_PROTRONIX__TEMP_HUM                     HWPID_CLS2( 0x3, HWPID_PROTRONIX ) // 0x3001
   79 
   80 // -------------------------------------------------------------------------------------------
   81 // NETIO products a.s.
   82 #define HWPID_NETIO       0x003
   83 
   84 // Cobra 1 - 1x power plug 
   85 // (0003-Netio-Cobra1.c)
   86 #define HWPID_NETIO__COBRA1                           HWPID_CLS2( 0x0, HWPID_NETIO )     // 0x0003
   87 
   88 // -------------------------------------------------------------------------------------------
   89 // DATmoLUX a.s.
   90 #define HWPID_DATMOLUX    0x005
   91 
   92 // -------------------------------------------------------------------------------------------
   93 // CITIQ s.r.o.
   94 #define HWPID_CITIQ       0x007
   95 
   96 // -------------------------------------------------------------------------------------------
   97 // Austyn International s.r.o.
   98 #define HWPID_AUSTYN      0x009
   99 
  100 // Room temperature controller 
  101 // (0009_RoomTemperatureController.c)
  102 #define HWPID_AUSTYN__ROOM_CONTROLLER                 HWPID_CLS2( 0x0, HWPID_AUSTYN ) // 0x0009
  103 
  104 // -------------------------------------------------------------------------------------------
  105 
  106 #endif  // _IQRFSTD_HWPID_
  107 
  108 //############################################################################################