Triggering inductive touch button from Wemos D1 Mini

I have a Wilfa Svart Presisjon coffee maker and decided to hack this a little bit with Wemos D1 Mini and ESPHome.

Is there a simple way to trigger a inductive touch button with Wemos?

Is that the same as a capacitive sensor? I haven’t heard of a inductive touch sensor, and google keeps leading to capacitive sensors.

Yeah, i don’t know the real name of it to be honest :slight_smile:

It works however even when put my finger close to the spring, thats why i thought it is some kind of inductive spring (magnetic field or something)

Heres another picture from the other side, the chip has nothing in it so can’t google the datasheet of it.

P6 is the point where the spring is attached.

So the button the guy presses at 0:26 of this video? https://www.youtube.com/watch?v=UNC_lyRcC8M

I would try an esp32 which supports capacitive sensing out of the box, or else there is this MPR121 Capacitive Touch Sensor — ESPHome

Yes, except this one has no physical button, newer version. You just touch the button and its on / off.

And the spring sits below where you touch?

If you are very careful you may be able to take some voltages with a multimeter. Beware the mains voltage though.

Yes, the spring is below that button.

Unfortunately I don’t have multimeter around right now but thought that someone might guess the chip which controls the touch sensor so i could wire directly to it :slight_smile:

And there are no any high voltages in that button, 4 thin wires. LED in it probably has the highest voltage :slight_smile:

Come to think of it you can buy one of this type of touch button and replace the spring altogether https://learn.adafruit.com/adafruit-capacitive-touch-sensor-breakouts

Possible, but maybe i’ll wait if someone comes up with other ideas as well.

I think the best idea is to go and buy a multimeter.
You will need it more than you think and they are cheap

Got it somewhat working. Still new to ESPHome so can’t figure out where the problem is. I put a wire from D5 to the coil. If i put the following yaml to it:

switch:
  - platform: gpio
    pin:
      number: D5
      mode: OUTPUT_OPEN_DRAIN
      inverted: yes
    id: relay
  - platform: template
    name: "Kahvinkeitin"
    icon: "mdi:coffee-maker"

It starts when i boot up the Wemos.

Following yaml is working:

switch:
  - platform: gpio
    pin:
      number: D5
      inverted: False
      mode: OUTPUT_OPEN_DRAIN
    id: relay
  - platform: template
    name: "Kahvinkeitin"
    icon: "mdi:coffee-maker"
    turn_on_action:
    - switch.turn_on: relay
    - delay: 500ms
    - switch.turn_off: relay

Now I just can’t put the power on with touch anymore :smiley:

Have to think a bit probably about this…

I don’t think you should connect a wire to the coil it self.
I think you should be looking at the wires coming out of the board.
If you connect to the coil then you change the conductivity and trigger the sensor.

I’m fairly sure you have vcc, gnd and one that is “signal”, and the last one is probably to light up the LED.
If you figure out which is which then you just need to look at the signal cable and see if it goes high or low on touch and emulate that with the ESP.
That way both button and ESP will work to trigger it.

Indeed, will check the wires with multimeter and try to understand the logic of that switch.

So, got it working.

P7 and P8 were the places where I had to connect the Wemos.

Using following yaml:

switch:
  - platform: gpio
    pin:
      number: D5
      inverted: True
    id: relay
  - platform: template
    name: "Kahvinkeitin"
    icon: "mdi:coffee-maker"
    turn_on_action:
    - switch.turn_on: relay
    - delay: 500ms
    - switch.turn_off: relay

Hey! I’m trying to do something similar with a similar chip. When you say connect P7 and P8, do you mean connect both those to D5, or one to D5 and one to ground? Thanks so much

Wow, this was long time ago, and it’s still working! It was one wire to ground and one to D5 or any other digital pins.

I thought so. Thank you so much!

1 Like