mLink Home Sensor

£11.99
VAT included

The mLink Home sensor is a compact multiple sensor module featuring a DHT22 temperature/humidity sensor, a LDR light sensor and a PIR motion detector. These features make this module ideal for sensing occupancy and environmental conditions within a room.

Communication with the sensors is made via the modules serial (I2C) interface which is compatible with microcontrollers featuring an I2C interface including most types of Arduinos. Being an mLink module it is also compatible with other modules in our mLink range and can simply be daisy-chained together allowing multiple different mLink modules to be controlled via one serial interface.

Quantity

Description.png

The mLink Home sensor is a compact multiple sensor module featuring a DHT22 temperature/humidity sensor, a LDR light sensor and a PIR motion detector. These features make this module ideal for sensing occupancy and environmental conditions within a room.

Communication with the sensors is made via the modules serial (I2C) interface which is compatible with microcontrollers featuring an I2C interface including most types of Arduinos. Being an mLink module it is also compatible with other modules in our mLink range and can simply be daisy-chained together allowing multiple different mLink modules to be controlled via one serial interface.


For Arduino users you can use the mLink library (see below for library and examples) to control any type of mLink module. Only one single instance of the library is needed to control multiple types of mLink modules resulting in very little resource overhead and therefore making it great for Arduinos with small amounts of memory and pin counts.

For Raspberry Pi users we have a Python module which can be installed via pip or downloaded and installed directly from our forum. Please see the mLink Python forum thread for requirements and download link here




Image



Image

Module code:
HCMODU0198
Supply Voltage(VDD):
5V (3.3V with solder pad bridged - see forum post)
Current consumption:
7mA
Current consumption (sleep):
0.5mA
I2C Interface speed:
400kbits/s (fast mode)
I2C default address (HEX):
0h5B
Maximum number of modules:
5 with pullups fitted, 112 with pullups removed*
Temperature sensor range:
-40 to 80oC
Temperature sensor resolution:
0.1oC
Humidity sensor range:
0 to 10 %RH
Humidity sensor resolution:
0.1 %RH
LDR sensor range:
0 to 255
PIR Trigger on time:
~4 seconds
PIR Sensor angle:
100 degree cone
Sensor range:
~3 to 5 metres
Module dimensions ex headers (LxWxH):
45mm x 30mm x  18mm


*Note the maximum number of connected modules will depend on cable lengths and power requirements of each module. Do not exceed 5 mLink modules connected in series with I2C pullups fitted to all modules. For disconnecting pullups see forum post.

 

Arduino Connection Example:


Image


Image


Because the modules use an I2C interface this also means multiple modules can be controlled from a single Arduino I2C interface simply by daisy-chaining them together. Note to control multiple mLink modules of the same type requires changing the default I2C address of the additional modules. See example Arduino sketch on forum post.

Image


Example Arduino Sketch:

  1. #include "mLink.h"                              // Include the library
  2.  
  3. #define I2C_ADD 0x5B                            // Default I2C address
  4.  
  5. mLink mLink;                                    // Create an instance of the library
  6.  
  7.  
  8. void setup()
  9. {
  10.   Serial.begin(9600);
  11.   mLink.init();                                 // Initialise the library
  12. }
  13.  
  14.  
  15. void loop()
  16. {
  17.   mLink.HSense_Start_Meas(I2C_ADD);             // Trigger a new temp/hum measurement
  18.   while(mLink.busy(I2C_ADD));                   // Wait for the measurement to complete
  19.  
  20.   // Read the sensors
  21.   float temp = mLink.HSens_Temp(I2C_ADD);
  22.   float hum = mLink.HSens_Hum(I2C_ADD);
  23.   byte LDR = mLink.HSens_LDR(I2C_ADD);
  24.   boolean PIR = mLink.HSens_PIR(I2C_ADD);
  25.  
  26.   // Print out the results
  27.   Serial.print("Temperature: "); Serial.println(temp, 1);
  28.   Serial.print("Humidity: "); Serial.println(hum, 1);
  29.   Serial.print("Light: "); Serial.println(LDR);
  30.   Serial.print("PIR: ");
  31.   PIR ? Serial.println("Triggered!") : Serial.println("Idle");
  32.  
  33.   Serial.println();
  34.  
  35.   delay(1000);
  36. }

For more information, including exclusive Arduino library, sketches, spec and register map, please see our support forum here.

HCMODU0198
6 Items

Specific References

16 other products in the category

DIY EDTracker Bundle

We've partnered up with the fabulous guys over at EDTracker to bring to you the EDTracker...

£26.99
  • Currently Out of Stock