En este proyecto mostramos como clonar el control de un collar de adiestramiento que tiene opciones de estimulos por vibracion, sonido e impulsos electricos.
Para esto usamos el Trainer 3 y el flipper zero que amablemente nos prestaron Matt y Gia respectivamente.
KinkyToyMaker grabó las señales que estan en la carpeta subs.
Compramos el collar sin control acá
Compramos distintos modulos RF de 433 MHZ para OOK y lo conectamos a una ESP32. Para debuggear y lograr que termine de funcionar todo nos guiamos de este tutorial, el cual plantea conectar a la placa de sonido el receptor para grabar las señales que se reciben y comparar las del control que se quiere clonar con la de nuestro emisor.
-
- De este anduvo el receptor y no el transmisor
-
- De este anduvo el transmisor y no el receptor
| Carpeta | Descripción |
|---|---|
src/Telegram_Bot |
Control por comandos de Telegram sobre WiFi |
src/BLE_Keyboard |
Dispara shocks al presionar teclas en un teclado BLE HID |
src/Dual_Mode |
Fusión de ambos — switchea entre modos con el botón BOOT |
src/Numpad_Serial |
Sin BLE ni WiFi — numpad 4×4 cableado directo + control por puerto serial |
Control standalone sin radio: un teclado matricial 4×4 conectado directamente a 8 pines del ESP32, más comandos por puerto serial desde una PC.
| Tecla | Función |
|---|---|
7 |
Shock collar 1 |
8 |
Shock collar 2 |
9 |
Shock ambos |
4 / 5 |
Nivel collar 1/2 +1 |
1 / 2 |
Nivel collar 1/2 -1 |
0 |
Ambos niveles +1 |
* |
Ambos niveles -1 |
6 / 3 |
Test collar 1/2 (vibra + beep) |
# |
Reset niveles a 1 |
Incluye dos interfaces para la PC:
shocker_serial.py— script Python (requierepip install pyserial)shocker_serial.html— página web, abrila en Chrome o Edge (usa Web Serial API, no necesita instalar nada)
Windows: puede ser necesario instalar el driver USB-serial del chip de la placa. El driver para CH340/CH341 (el más común en placas NodeMCU) o CP210x se puede bajar de: https://www.silabs.com/documents/public/software/CP210x_Universal_Windows_Driver.zip
| Acción al encender | Resultado |
|---|---|
| No tocar nada | Arranca en el modo guardado (Telegram por defecto) |
| Mantener BOOT < 2 s y soltar | Cambia de modo (Telegram ↔ BLE Keyboard), guarda y reinicia |
| Mantener BOOT ≥ 2 s | Borra credenciales WiFi guardadas y reinicia |
El LED parpadea rápido mientras se sostiene el botón para confirmar que fue registrado.
Dual_Mode requiere el esquema huge_app (WiFi + BLE juntos no entran en la partición por defecto):
~/.local/bin/arduino-cli compile \
--fqbn "esp32:esp32:esp32:PartitionScheme=huge_app" \
--upload --port /dev/ttyUSB0 \
"src/Dual_Mode"Para los sketches individuales:
~/.local/bin/arduino-cli compile \
--fqbn esp32:esp32:esp32 \
--upload --port /dev/ttyUSB0 \
"src/Telegram_Bot" # o src/BLE_Keyboard