
TimerCamera 系列产品是基于 ESP32-D0WDQ6-V3 的摄像头模块,板载 8M PSRAM,采用 3MP 的摄像头 (OV3660),DFOV 66.5° (TimerCamera-F 是 120°),最高可实现拍摄 2048x1536 分辨率的照片。带有状态指示灯与 RESET 按键,主打超低功耗设计,通过 RTC ( BM8563 ) 可实现定时休眠与唤醒。
在 ESPHome 上查看最新配置范例
打开 ESPHome Builder,点击右下角点击 NEW DEVICE,创建一个新设备。

弹窗点击CONTINUE

选择New Device Setup,创建新的配置文件

为新的配置文件命名

选择设备类型,此处保持默认配置,选择ESP32即可

复制 Encryption Key 备用,点击SKIP跳过

在生成的配置文件卡片下点击EDIT进行编辑:

打开配置文件进行修改
psram:
mode: quad
speed: 80MHz
i2c:
- id: bsp_i2c
sda: GPIO12
scl: GPIO14
- id: cam_i2c
sda: GPIO25
scl: GPIO23
esp32_camera:
name: OV3660 Camera
external_clock:
pin: GPIO27
frequency: 20MHz
i2c_id: cam_i2c
data_pins: [GPIO32, GPIO35, GPIO34, GPIO5, GPIO39, GPIO18, GPIO36, GPIO19]
vsync_pin: GPIO22
href_pin: GPIO26
pixel_clock_pin: GPIO21
reset_pin: GPIO15
resolution: 640x480
jpeg_quality: 10此处采用的默认图像配置,如需更改配置可以参考 ESPHome 提供的配置范例
esphome:
name: timercamera-x
friendly_name: timercamera-x
...
on_boot:
then:
# read the RTC time once when the system boots
bm8563.read_time:
...
time:
- platform: bm8563
i2c_id: bsp_i2c
# repeated synchronization is not necessary unless the external RTC
# is much more accurate than the internal clock
update_interval: never
- platform: homeassistant
# instead try to synchronize via network repeatedly ...
on_time_sync:
then:
# ... and update the RTC when the synchronization was successful
bm8563.write_time: 系统会在启动的时候读取 RTC 中的时间信息,当连接到 Home Assistant 后,会自动同步 Home Assistant 的时间信息
output:
- platform: ledc
id: blue_led
pin: GPIO2
light:
- platform: monochromatic
output: blue_led
name: "Blue LED"
restore_mode: RESTORE_DEFAULT_ON蓝色 LED 会默认在设备上电后打开,可以在 Home Assistant 里面控制 LED 开关和亮度
switch:
- platform: gpio
id: bat_hold_pin
name: "Battery Hold Pin"
pin: GPIO33
restore_mode: RESTORE_DEFAULT_ON此处 GPIO33 用于控制是否使用电池,开启并且保持拉高即可让电池工作,默认情况会一直保持拉高;如果关闭此开关,没有外接电源的情况下设备会关机
TimerCamera-X 和 TimerCamera-F 上预装了电池,可以供过获取 GPIO38 的 ADC 读数来得到电池电压信息,转换后得到大致电池电量信息:
sensor:
- platform: adc
pin: GPIO38
attenuation: 12dB
name: "Battery Voltage"
id: battery_voltage
update_interval: 10s
filters:
- multiply: 1.51
- platform: template
id: battery_percent
name: "Battery Percentage"
unit_of_measurement: "%"
accuracy_decimals: 0
lambda: |-
float voltage = id(battery_voltage).state;
float min_voltage = 3.350f;
float max_voltage = 4.150f;
if (voltage <= min_voltage) return 0.0;
if (voltage >= max_voltage) return 100.0;
float percent = ((voltage - min_voltage) / (max_voltage - min_voltage)) * 100.0;
return percent;修改完成后,点击右上角 SAVE 和 INSTALL, 在弹出的选项中选择 Manual Download

编译完成后,点击 Download 按钮,选择 Factory Format 下载固件

将套件通过 USB Type-C 数据线连接至主机,打开ESPHome Web,点击CONNECT连接设备

之后点击INSTALL,选择之前编译的固件进行上传

再次点击INSTALL进行烧录,等待烧录完成

完成固件烧录后,设备开机将自动进行 Wi-Fi 连接。导航至 Settings->Device & services 查看设备情况。点击 Add 即可添加设备至 Home Assistant

Dashboard示例:

点击相机实体,可以查看实时预览画面

TimerCamera (TimerCamera-X) 如左, TimerCamera-F 由于使用的是鱼眼镜头,所以呈现效果如右图所示