Placemon - sense your home

An open hardware project to sense what is happening in your home

Similar projects worth following

Placemon consists of a number of different sensors:

  • Microphone
  • Temperature
  • Humidity
  • Pressure
  • Light
  • PIR

The idea is to use the data collected from these sensors along with machine learning techniques to recognise different events occurring in your home.  For example processing audio data, to see if you have left a tap running.

One of the key inspirations is the paper - "Synthetic Sensors: Towards General-Purpose Sensing", I noticed some of the sensors used alone on their board such as the GridEye thermal sensor appear to be pretty expensive.  I've tried to select a smaller set of sensors that will hopefully allow us to achieve a similar level of accuracy at detecting different events.

I am planning to capture the data from the sensors locally, using a single board computer, such as a Raspberry Pi, to perform the machine learning on the data obtained.


I need to add a pull-up resistor on the GPIO0 pin.

Render (with incorrect esp32 footprint currently)


Component orientation

I created a little script that loads the KiCad centroid file that contains positions and rotations of components, and checks the position of pin 1 and generates a figure which you can see below (the white rectangles represent pin 1).

With this script, you specify the KiCad centroid file and libraries as command line arguments, so that appropriate libraries can be loaded to determine pin positions etc.


  • 1 × AP2115M Power Management ICs / Linear Voltage Regulators and LDOs
  • 1 × BME280 Temperature, humidity and pressure
  • 1 × ECS-400-15-33B-CTN-TR 40 MHz XTAL
  • 1 × 9HT11-32.768KEZC-T XTAL
  • 1 × ASMT-RF45-AN002 LEDs and Accessories / Light Emitting Diodes (LEDs)

View all 13 components

  • Machine learning

    anfractuosity06/30/2020 at 12:50 0 comments

    Whilst I am working on re-designing the PCB, to use the correct esp32-d0wd footprint, I am also going to investigate making use of TensorFlow via Python, to recognise different acoustic events in a house.

    To do this I will record various sounds in a house using a microphone and a laptop, I will then attempt to classify these events using TensorFlow.  I was planning on looking into using a convolutional neural network to achieve this.

    Some of the acoustic events I will attempt to detect, include:

    • Door opening
    • Tap running
    • Light / mains switch being turned on/off
    • Smoke alarm
    • Blender
    • Gas hobs on oven being turned on
    • Phone ringing
    • Microwave oven / standard oven beep
    • Kettle finished boiling
    • Fridge turning on
    • Toaster popping

    I am also curious if an end user could train the system to detect new events by allowing the classifier to be updated.

    I've just started evaluating the classifier from using sound files for smoke alarms etc. from - .  It makes use of TensorFlow for creating the model.

  • First attempt

    anfractuosity06/24/2020 at 23:28 0 comments

    Unfortunately there was a rather big flaw in the current version of the PCB, making the ESP32 non-functional.  I had used a footprint for the ESP32-d0wd chip which is incorrect.

    I am currently working on redesigning the PCB with a correct footprint.

    With the current PCB revision, the USB chip however does appear functional as it is detected by my computer.

    The PCB with the footprint flaw is shown below, it was designed using KiCad 5.

View all 2 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates