npross / iVacProRemote

Control an iVac Pro Switch with a cheap 433 MHz Transmitter and an Arduino

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

iVacProRemote

Control an iVac Pro Switch with a cheap 433 MHz Transmitter and an Arduino

Introduction

I own an iVac Pro switch that is connected to my dust collector. I was using it with my router table which uses a current sensing remote that turns the dust collector on and off whenever the router is turned on. I recently aadded a small CNC machine. I wanted to be able to control the DC when the spindle for the CNC machine turned on and off. It seemed silly to use a current sensing device when I had a perfectly good 5V GPIO signal to control the switch. Unfortunately there was no external input to the switch.

So I figured since it was controlled via RF, maybe I could use a cheap RF transmitter.

Here is the FCC filing for a remote iVac Pro controller which immediately tells us that this is a 433.92 Mhz device

FCC Info: https://fccid.io/YCHIVACPRO/Users-Manual/User-manual-1458445

RTL-SDR + Universal Radio Hacker Made things easy

Using an RTL-SDR device to capture some samples with Universal Radio Hacker this is what I've figured out so far:

  • Frequency: 433.92 MHz
  • Encoding: ASK/OOK
  • Bits: 36
  • BitLength: 432us

Encoding

I'm sure someone with actual experience decoding/encoding RF will know way more about this than me but as far as I can see there is a Header of 14 bits, followed by 6 bits of data, 2 bits destination, X bit Command (On/Off), 3 bits source, 1 bit checksum.

Each data bit is preceded by a 01 transition

111010101010111 01 D 01 D 01 C 01 S 01 S 01 S 01 C

  • Header: 111010101010111
  • DD: 2 bits Destination switch (0-4)
  • X: 1 bit Command (On/OFF)
  • SSS: 3 bits Source (0-7)
  • C: 1 bit Checksum (sum(DDXSSS))

About

Control an iVac Pro Switch with a cheap 433 MHz Transmitter and an Arduino

License:MIT License


Languages

Language:C++ 100.0%