/triggerSocketByCall

Primary LanguagePythonApache License 2.0Apache-2.0

Fritzbox Call Agent

Detect incoming calls and do something.
Like switchng on lights, send notifications...

Setup

python3 -m venv ven
source ./venv/bin/activate
pip install -r requirements.txt

Something

As a result of an incoming call we want to do something like switching on a lamp.

Identify your Chip

❯ esptool.py --port /dev/tty.usbserial-140 flash_id
esptool.py v2.8
Serial port /dev/tty.usbserial-140
Connecting....
Detecting chip type... ESP8266
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: a0:20:a6:17:52:a5
Uploading stub...
Running stub...
Stub running...
Manufacturer: e0
Device: 4016
Detected flash size: 4MB
Hard resetting via RTS pin...

The Detected flash size: 4MB indicates we can use the latest regular MicroPython image.

  1. Erase flash memory
❯ esptool.py --port /dev/tty.usbserial-140 erase_flash
esptool.py v2.8
Serial port /dev/tty.usbserial-140
Connecting....
Detecting chip type... ESP8266
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: a0:20:a6:17:52:a5
Uploading stub...
Running stub...
Stub running...
Erasing flash (this may take a while)...
Chip erase completed successfully in 11.2s
Hard resetting via RTS pin...
  1. Deploy MicroPython
❯ esptool.py --port /dev/tty.usbserial-140 --baud 460800 write_flash --flash_size=detect 0 ~/Downloads/esp8266-20220618-v1.19.1.bin
esptool.py v2.8
Serial port /dev/tty.usbserial-140
Connecting....
Detecting chip type... ESP8266
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: a0:20:a6:17:52:a5
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Auto-detected Flash size: 4MB
Flash params set to 0x0040
Compressed 634844 bytes to 419808...
Wrote 634844 bytes (419808 compressed) at 0x00000000 in 10.5 seconds (effective 485.9 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...
  1. Enable WebRepl

  2. Setup WiFi Fort now i'd refer you to the excellent documentation here

  3. Accessing MicropPython Once the Board joined your network it's time to use the webrepl.
    WebRepl is an interactive client to connect to your Board