|
Post by papa on Sept 9, 2021 19:47:17 GMT
A Sketch of Firmware for ESP32 Board Connecting Camera Board to OpenHAB
To the sketch offered in this post, I included code from a PubSubClient example sketch for reconnecting MQTT if disconnected. The sketch also has code so openHAB can send messages to the OLED screen. See more below.
With Arduino IDE, open the firmware sketch & OK its being put in a folder ( make note of the folder) Close the firmware sketch just downloaded & saved to a folder. ESP32_pins.h (11.1 KB) << Download this .h header file to the folder now holding the firmware sketch that was downloaded above.
(Note: as camera_pins.h, this came with CameraWebServer.h, but I renamed & augmented it for this sketch.) Re-open the firmware sketch & see the ESP32_pins.h header file in another Arduino IDE tab From now on, when you save these two files, they should be in the same folder. Go to the next post for customization of the firmware sketch & the .h header file. Next, Customizing the ESP32 Board Firmware
|
|
|
Post by papa on Sept 9, 2021 19:54:16 GMT
Customizing the ESP32 Board Firmware (ESP32_mqtt....ino)nodeID must be a unique number for each WiFi device, but should be a unique node number in your openHAB system. I assume a nodeID of 31 below. wifi_ssid_A, wifi_password_A edit in your SSID & password If you have another WiFi station, edit in that info to wifi_ssid_B, wifi_password_B. Otherwise, give B the same WiFi info as A. mqtt_server, edit in the IP address of your computer hosting the mqtt broker (See above for install) In the list of Camera_Model_xxxxxx, UNcomment & thus select ONLY ONE board. As is, the sketch, activates CAMERA_MODEL_TTGO_ESP32_White, the only one in the list I've tested so far. (Though as noted, RandomNerds.com tested the Camera code of some of the boards & other boards came with the official example, CameraWebServer.) Caution 1: in ESP32_pins.h, for the Camera_Model you activate, check/correct the pin assignments to the best of your ability. If needed, create another pin assignment list & Camera_Model name. Caution 2: At the end of the firmware's customization section are five defines: Enable_SSD1306, OLED_TXT, BTN, PIR, & Camera. Because CAMERA_MODEL_TTGO_ESP32_White can use all these features, all five are UNcommented/activated. Comment/DEactivate any define that does not apply to your board or to the functions you desire. Next, Uploading the Firmware
|
|
|
Post by papa on Sept 9, 2021 19:57:09 GMT
Uploading the ESP_mqtt FirmwareConnect the ESP32 board to your Arduino IDE computer's USB (perhaps via FTDI device) & upload the sketch. Make sure Arduino IDE is configured as in this post. Nothing more should be required for uploading to CAMERA_MODEL_TTGO_ESP32_White Other boards may require grounding a pin &/or pressing a button. See some notes early in the sketch Next, Expected Results on Serial Monitor & OLED Screen (if present, & Browser Tab)
|
|
|
Post by papa on Sept 10, 2021 15:38:36 GMT
Expected Results on Serial Monitor
With the board connected to USB, on Arduino IDE, open the Serial Monitor at 115200 baud. If the board does not connect to WiFi/MQTT shortly, press its Reset button once or twice. Searching the sketch (Ctrl+F) for " ifdef SHOWME" will show you various success & error messages that can display on the serial monitor. Including: push button states (0, 1), PIR states (Motion, No Motion), & messages being sent for openHAB (which needs configuring as shown later). Sample Serial Monitor Output: topic home/esp_gw/nb/node31/dev72 value:text received PIR reads motion topic home/esp_gw/nb/node31/dev41 value:ON push button = 0 topic home/esp_gw/nb/node31/dev40 value:dwn push button = 1 topic home/esp_gw/nb/node31/dev40 value:up PIR reads no motion topic home/esp_gw/nb/node31/dev41 value:OFF PIR reads motion topic home/esp_gw/nb/node31/dev41 value:ON PIR reads no motion topic home/esp_gw/nb/node31/dev41 value:OFF topic home/esp_gw/nb/node31/dev02 value:-49 topic home/esp_gw/nb/node31/dev10 value:192.168.10.xxx topic home/esp_gw/nb/node31/dev40 value:up topic home/esp_gw/nb/node31/dev41 value:OFF topic home/esp_gw/nb/node31/dev72 value:text received Next, Expected Results from OLED Screen & Browser Tab
|
|
|
Post by papa on Sept 10, 2021 15:39:54 GMT
Expected Results on OLED Screen (if present), & Browser Tab
Searching the sketch (Ctrl+F) for " ifdef ENABLE_SSD1306" will show you various success & error messages that can display on the OLED screen (if present). Including: "TTGO Camera," IP Address of the ESP32 board, "Smile, you are on camera" (if PIR present & activated & motion in front of PIR), & a screen of sample messages which can be re-purposed to show other information. Note the camera board's IP address displayed on the Arduino IDE's Serial Monitor & OLED screen. Enter that IP address in a browser tab & see the camera stream there.
Next, Configuring openHAB to Handle Board Data
|
|
|
Post by papa on Sept 10, 2021 15:43:10 GMT
Configuring openHAB to Handle Board Data Introduction
My preferred method is using openHAB 3's Dashboard to configure Add-ons (like Bindings), Things, Channels, & HABPanels. I use text files to configure Items, Rules, & Sitemaps. Items can be written so they automatically link with channels. The Dashboard displays Things in alphabetical order, but displays a Thing's channels in the order they are created.
Hint: The Dashboard process is somewhat tedious. It's quicker, but "messier" if you create Things as you need them. If you like the Things in neater alphabetical order, create them in that order & create all you may eventually use. (It should hurt nothing if they are not used.) For the TTGO White Board, I use devices/channels: 02 (RSSI), 10 (IP address), 40 (push button), 41 (PIR) & 72 (screen messages) & created those in order below. The device's firmware also has device 03 (firmware version). Again the following assumes the features of a TTGO White Board which has been programmed as Node 31. When you use the instructions below, adjust to the features of your board. Next, Create a Thing for Our Board
|
|
|
Post by papa on Sept 12, 2021 20:12:14 GMT
Configuring OpenHAB to Handle Board Data Create a Thing for Our BoardGo to localhost:8080/settings/things/ Click ( + ), (plus sign in a blue disc). Click " MQTT Binding". Click " ADD MANUALLY" We must choose which type of Thing for the MQTT 3 Binding. Some types are standards that may fit a standard used on our physical device. For physical devices (like our DIY RFM69 or ESPxxxx Nodes) which don't match listed standards, we use the Generic MQTT Thing & configure the Thing with the message standard used on our device. Click MQTT Binding. Click Generic MQTT Thing. Configure the Generic MQTT Thing using something like the following fields: (Customize to your situation.)
Name [starts as Generic MQTT Thing] Node31db << This is the ESP32 Node to be accessed. Thing ID [ generated for us ] Location MAINFL [Thing's location on an organization tab, may be blank ] Click the Bridge field & select MQTT Broker. Click [Create Thing]
Next, Create Channels for the Thing
|
|
|
Post by papa on Sept 13, 2021 15:56:15 GMT
Configuring openHAB to Handle Board Data Create Channels for the Node31dbThing Corrected to Node31 from Node30
Logged in to your openHAB configuration, go to localhost:8080/settings/things/In the listed Things, click Node31db. Then click the [channels tab] near the top. Near the bottom, click Add Channel. In the Add Channel Window, fill the fields with configs: Hint: Be careful as you fill the Add Channel fields below. Clicking Configure Channel does not let us change all channel parameters. To change Channel type, we must delete (Remove Channel) the channel, start over, & accept the channel's being listed at the end of its Thing's list. First we add a channel 02 for the node's RSSI (signal strength).
(Customize to your situation) Channel id: Node31Channel02 Label: dBell_31_RSSI Channel type: Text value in the list MQTT state topic: home/esp_gw/nb/node31/dev02
Check your work & click [Create] to save your work.
Next, Continue Creating Other Channels
|
|
|
Post by papa on Sept 13, 2021 16:03:15 GMT
Continue Creating Other Channels For Node31db (or your Thing) Corrected to Node31 from Node30
Follow the same process as in the last post. The following lists the field contents which you customize to your situation. Channel id: Node31Channel03 Label: dBell_31_Version [Node's Firmware version]
Channel type: Text value in the drop down list MQTT state topic: home/esp_gw/nb/node31/dev03 (Click Create) Channel id: Node31Channel10 Label: dBell_31_IP [Node's IP address]
Channel type: Text value MQTT state topic: home/esp_gw/nb/node31/dev10 (Click Create) Channel id: Node31Channel40 Label: dBell_31_BTN [state of Node's push button]
Channel type: Text value MQTT state topic: home/esp_gw/nb/node31/dev40 (Click Create) Next, Create a PIR Channel with a Transformation
|
|
|
Post by papa on Sept 13, 2021 18:07:18 GMT
Create a PIR Channel with a Transformation Corrected to Node31 from Node30
If you have not already, go to http://localhost:8080/settings/addons/transformation/ At the lower right, click "+" Then click Map Transformation & click "Install" Mostly like previous posts, create a channel for the Node's PIR states.
Channel id: Node31Channel41
Label: dBell_31_PIR Channel type: Text value MQTT state topic: home/esp_gw/nb/node31/dev41 [Click Show advanced]
Incoming Value Transformations MAP:pir.map [Click Create]In openHAB's /transform folder (Linux: /etc/openhab/transform), create the text file: pir.map [with the Contents] ON=MOTION OFF=NO MOTION [save the file] Note: The Node sends "ON" or "OFF". The channel transforms that to "MOTION" or "NO MOTION"
Next, Create Items for Channel Data
|
|
|
Post by papa on Sept 13, 2021 18:39:09 GMT
Create Items for Channel Data Corrected to Node31 from Node30
In openHAB's items folder (Linux: etc/openhab/items), in an .items file (new or existing), I created the following entries for Node31 (which need adapting):
String Node31Rssi "DB_31_RSSI (db)[%s]" <network> (Nodes) { channel="mqtt:topic:c08f02ca8d:5d8e082ad4:Node31Channel02" }
String Node31Version "DB_31_Vrsn (db)[%s]" { channel="mqtt:topic:c08f02ca8d:5d8e082ad4:Node31Channel03" }
String Node31IP "DB_31_IP [%s]" <network> { channel="mqtt:topic:c08f02ca8d:5d8e082ad4:Node31Channel10" }
String Node31BTN "DB_31_BTN [%s]" <wallswitch> { channel="mqtt:topic:c08f02ca8d:5d8e082ad4:Node31Channel40" }
String Node31PIR "DB_31_PIR [%s]" <motion> { channel="mqtt:topic:c08f02ca8d:5d8e082ad4:Node31Channel41" }
To adapt the above entries to your situation ... Go to localhost:8080/settings/things/ Scroll to your listed Node Thing Beneath & to the right is a small stacked pages icon. Click on that icon to copy the Thing UID Paste that Thing UID in place of mqtt:topic:c08f02ca8d:5d8e082ad4
Next, Items Linking to Their Channels
|
|
|
Post by papa on Sept 13, 2021 18:55:41 GMT
Items Linking to Their Channels
If the previous steps were done correctly according to the above posts, the Items should automatically link to their channels.
Next, Add Linked Items to a Sitemap
|
|
|
Post by papa on Sept 13, 2021 19:09:44 GMT
Add Linked Items to a Sitemap & Display in a User Interface (UI)
Go to openHAB's sitemaps folder (Linux: /etc/openhab/sitemaps &
add the following entries (or your comparables) to a new or existing .sitemap file (I used My.sitemap): Image url="http://camera board's IP Address" refresh=1000 Text item=Node31Rssi Text item=Node31PIR Text item=Node31IP Text item=Node31BTN Make sure your Node is powered & connected to WiFi/MQTT. Be logged in,
In a browser tab, enter http://localhost:8080/basicui/app?sitemap=My
^^ corrected Your User Interface should display the current output from Node31. See the board's camera streaming.
Push the board's button & wave your hand over the board's PIR sensor & see states change on the UI.
Later, you might delete some of these entries from showing in the sitemap, but (through rules), do things based on the items' states. Next, Add Linked Items to HABPanel
|
|
|
Post by papa on Sept 14, 2021 15:14:55 GMT
Add Linked Items to HABPanel & Display StatesThis post provided a link to get started with HABPanel & displayed the camera stream on a HABPanel Dashboard. Now we add other camera data on that HABPanel Dashboard. Open a Dashboard (new or existing). Hover the mouse pointer over the Dashboard's name. Click on the pencil icon (edit). At the upper right, click Add Widget. Create 4 dummy widgets... a) Name: DBrssi Item: Node31Rssi Save (at lower right) b) Name: DBip Item: Node31IP Save c) Name: DBpir Item: Node31PIR Save d) Name: DBbtn Item: Node31BTN Save Create an Image Widget added Sept. 27, 2021a) Name DoorCam01 url: http://IP Address of the Camera Board Save Stretch the widget large. At upper left, click Save & click Run to see the camera board's states, including camera output of the board. Next, An Enclosure Case for the TTGO White Camera Board
|
|
|
Post by papa on Sept 14, 2021 15:21:34 GMT
An Enclosure Case for the TTGO White Camera Board & ?? Other Boards with the Same Dimensions & Features
The following could help protect & beautify the camera board node.
15:18 DrZzs discusses enclosures. Also see in comments below the video: DrZzs suggests waterproofing the soap box with silicone. Maybe hot glue would work also. I have a Plastic Soap Box, but have not yet tried making it into a case. See more about the Thingiverse Model in the next post.
Next, More on an Enclosure Case
|
|
|
Post by papa on Sept 14, 2021 15:28:37 GMT
More on a 3D Printed Enclosure For the TTGO White Camera Board & Similar Boards ??
I obtained a 3D printed case based on Dr. Zzzs design posted above. The case works nicely to hold the board so everything works. It protects the board, but it's not waterproof. I can mount this on my mostly covered porch. Otherwise some other protection would be needed. I'm unsure about one piece of Dr. Zzzs' design. It's wedge shaped with a screw hole. I assume it's for mounting the case. Here's my thoughts: the wedge piece's longest side matches the case's width. Looks like the other 2 sides could fit in a corner (next to the outside of a door frame?) & a screw thru the hole (into wood door frame?) to hold the wedge in place. Gluing the case to the wedge's longest side would cover the ability to remove the case. But maybe Velcro could hold the case's back to the longest side of the wedge & allow removing the case (especially if an opening in the Velcro gives access to the screw head). Other thoughts? Next, Some Success, Some Glitches
|
|
|
Post by papa on Sept 15, 2021 15:55:53 GMT
Some Success, Some Glitches Some Troubleshooting
The ESP32 Camera node firmware documented above worked moderately well in combining the possibilities of camera, PIR motion detector, push button, & OLED screen. The screen shows the node's IP address & a message when motion is detected. The camera streams to a browser tab or to an openHAB's User Interface (sitemap or HABPanel). At that point, I was not able to send a screen message from openHAB to the node's OLED. Then I experimented more with the node displaying messages on its OLED. I discovered that the node updated openHAB items for a time after its startup, but then updates stopped. The node still reliably displayed text on the OLED. The camera still streamed to openHAB (& so the node was still connected to WiFi), but that was through http, not MQTT. I experimented with a variety of ways for openHAB to send text to the OLED display, but none worked. After a while, I wondered if the OLED code interfered with the MQTT code. I also wondered if MQTT disconnected. If so, could MQTT be reconnected? I decided to try some reconnect MQTT code from a PubSubClient example sketch.
Next, Glitch Fixed
|
|
|
Post by papa on Sept 15, 2021 15:58:57 GMT
Glitch FixedAs mentioned in the last post, I added code from a PubSubClient example sketch for reconnecting MQTT if disconnected. For the next 24 hours, the node's MQTT never stopped communicating with the openHAB User Interface. Previously, by 60 minutes, the node would have stopped communicating with openHAB. See this post above for firmware programming that stays reliably connected to the MQTT message service. From that post continue to the needed customizing & openHAB configuration.
Next, OpenHAB Can Send Messages to an ESP32 Node's OLED Screen Firmware Customization
|
|
|
Post by papa on Sept 16, 2021 14:59:51 GMT
OpenHAB Can Send Messages to an ESP32 Node's OLED Screen Firmware CustomizationAs of firmware version ...02d09d ( see this post to download the latest version), the ESP32 Camera node can receive messages from openHAB for its OLED screen. To activate this ability, UNcomment & activate #define OLED_TXT in the firmware sketch. Next, Needed openHAB Configuration
|
|
|
Post by papa on Sept 16, 2021 15:04:08 GMT
OpenHAB Can Send Messages to an ESP32 Node's OLED Screen Configure OpenHAB Channel
First we add a channel 72 (command topic) to enable the node to receive messages (from openHAB) for its OLED screen. I assume Node 31. For a different node ID #, adapt the following: Go to http://localhost:8080/settings/things/ Click on Node31db Click the Channels TabTo add a channel to the Node 31db Thing, near the bottom click, Add Channel. Complete the Add channel fields: Channel id: Node 31Channel72 Label: dBell_ 31_OledTxt Channel type: Text value in the drop down list MQTT command topic: home/esp_gw/sb/node31/dev72 Check your work & at the bottom, click " Create" Next, Configure OpenHAB Items
|
|
|
Post by papa on Sept 17, 2021 14:36:27 GMT
OpenHAB Can Send Messages to an ESP32 Node's OLED Screen Configure OpenHAB ItemsIn the following, I added to an existing Main-Fl.items file & created new items for Node 31. Adapt for your situation. Go to openHAB's /items folder (Linux: /etc/openhab/items) & in a new or existing .items file, create the following entries: Switch Send 31OLEDmsg1 "0:push btn" { expire="1s,command=OFF" } Switch Send 31OLEDmsg2 "0:coming" { expire="1s,command=OFF" } Switch Send 31OLEDmsg3 "2:lv pkg" { expire="1s,command=OFF" } Switch Send 31OLEDmsg4 "2:no thx" { expire="1s,command=OFF" } ======================================================== Note: I had used another method (in a rule) to turn off the above switches after a brief delay, but at rubenkona's suggestion, I now use expire. OH 3 includes expire. For OH 2.5.x, install the expire binding. Also, create an entry adapted from this: String OLEDprint 31 { channel="mqtt:topic: c08f02ca8d:5d8e082ad4:Node 31Channel72" } Replace ^^ c08f02ca8d:5d8e082ad4 ^^ with the Thing UID you found in this post above. If the OLEDprint 31 item is configured correctly, it should link automatically to Node 31Channel72. Next, Configure OpenHAB Rules
|
|
|
Post by papa on Sept 17, 2021 14:40:18 GMT
OpenHAB Can Send Messages to an ESP32 Node's OLED Screen Configure OpenHAB Rules
In the following, I added to an existing Main-Fl.rules file & created new rules for Node31. Customize to your situation.
rule "write31_OLED_Msg1" when Item Send31OLEDmsg1 received update then if (Send31OLEDmsg1.state==ON) { OLEDprint31.sendCommand("0:Push button") OLEDprint31.sendCommand("1:for attention.") } end
rule "write31_OLED_Msg2" when Item Send31OLEDmsg2 received update then if (Send31OLEDmsg2.state==ON) { OLEDprint31.sendCommand("0:I'm on my way") OLEDprint31.sendCommand("1:to answer door") } end
rule "write31_OLED_Msg3" when Item Send31OLEDmsg3 received update then if (Send31OLEDmsg3.state==ON) { OLEDprint31.sendCommand("2:Leave packages") OLEDprint31.sendCommand("3:left of door") } end
rule "write31_OLED_Msg4" when Item Send31OLEDmsg4 received update then if (Send31OLEDmsg4.state==ON) { OLEDprint31.sendCommand("2:Not interested") OLEDprint31.sendCommand("3:No thank you") } end
Next, Configure OpenHAB Sitemap
|
|
|
Post by papa on Sept 18, 2021 12:41:50 GMT
OpenHAB Can Send Messages to an ESP32 Node's OLED Screen Configure OpenHAB SitemapIn the following, I added to an existing My.sitemap file & created new entries for Node 31. Customize to your situation. Switch item=Send 31OLEDmsg1 Switch item=Send 31OLEDmsg2 Switch item=Send 31OLEDmsg3 Switch item=Send 31OLEDmsg4 ============================================ Make sure your Node is powered & connected to WiFi/MQTT. Be logged in,
In a browser tab,enter http://localhost:8080/basicui/app?sitemap=My
Your User Interface should display switches you can click to send text to Node31's OLED screen.
Next, Configure OpenHAB HABPanel
Then, What to Expect, How This Works
|
|
|
Post by papa on Sept 18, 2021 12:59:31 GMT
OpenHAB Can Now Send Messages to an ESP32 Node's OLED Screen Configure OpenHAB HABPanelThis post provided a link to get started with HABPanel & displayed the camera stream on a HABPanel Dashboard. Now we add other camera board controls on that HABPanel Dashboard. Open a Dashboard (new or existing). Hover the mouse pointer over the Dashboard's name. Click on the pencil icon (edit). At the upper right, click Add Widget. Create 4 switch widgets ( Customize to your node's number.)... a) Name: 0:pushBtn 31 Item: Send 31OLEDmsg1 Save (at lower right) b) Name: 0:coming 31 Item: Send 31OLEDmsg2 Save c) Name: 2:lvPkg 31 Item: Send 31OLEDmsg3 Save d) Name: 2:noThx 31 Item: Send 31OLEDmsg4 Save At upper left, click Save & click Run to see the camera board's states & controls. =============================================== Next, What to Expect, How This Works
|
|
|
Post by papa on Sept 19, 2021 13:14:02 GMT
OpenHAB Can Send Messages to an ESP32 Node's OLED Screen What to Expect, How This WorksSince an earlier firmware version, the camera board node displays standard (video doorbell) messages on an OLED screen. In the firmware sketch, search for msg01. You should find a list of Strings whose names start with msg. Msg01 thru msg04 display on lines 0 thru 3 of the OLED's first screen. These messages are "TTGO Camera" & the node's IP address (for a while before blanking). When the PIR motion detector triggers, "Smile, you are on camera" appears on the bottom two lines of the first screen. Msg05 thru msg08 display on the OLED's second screen. Via the openHAB UI or HABPanel, clicking switches whose linking Items start with Send31OLEDmsg will display the two lines associated with the switch. The label beside or on the UI switch hints at the message content & which screen line the message starts on. You can customize the second screen's messages in the rules created above. The number before the colon sets the screen line (zero being the top line & 3 is the last). Be aware that the node firmware will trim each screen line (after the colon) to the maximum length of 14 characters for the present font size. Next, Display 4 Camera Feeds on OpenHAB's User Interface
|
|
|
Post by papa on Sept 23, 2021 19:00:03 GMT
Display 4 Camera Feeds on OpenHAB's BasicUI (Resizable via a Slider) Camera_feed_5.html (2.1 KB) << Forum members, download this .html file. Near the end, the 4 camera IP address are all the same. Edit the IP addresses to be the IP addresses of your one to four cameras. ( This site provided the original .html file.) On the computer hosting openHAB, save the edited .html file in openHAB's html folder nested in OpenHAB's config folder (Windows: /conf/html) (/etc/openhab/html for a Linux apt-get install). You can test this .html file by opening it in a browser window. If the cameras' output does not display in the browser window, try rebooting the camera boards & refreshing the BasicUI browser tab You may rename the .html file, but use the new name consistently with tashe following instructions Continues ...
|
|
|
Post by papa on Sept 23, 2021 19:16:33 GMT
Display 4 Camera Feeds on OpenHAB's BasicUI (Resizable via a Slider)This post above offered this sitemap entry which displays one camera feed:
To display up to 4 camera feeds, substitute this sitemap entry (which includes the edited .html file from the last post): Note: Apparently openHAB knows that the /static folder is the /html folder nested in openHAB's configuration folder. Point openHAB's BasicUI to the edited sitemap. If the cameras' output does not display in the browser windows, try rebooting the camera boards & refreshing the BasicUI browser tab Next, Display 4 Camera Feeds on HABPanel
|
|
|
Post by papa on Sept 27, 2021 21:46:34 GMT
Display 4 Camera Feeds on HABPanel (Resizable via a Slider)This post above offered this HABPanel image widget which displays one camera feed:
To display up to 4 camera feeds, create a new HABPanel Dashboard with ... this HABPanel frame widget (which includes the edited .html file from the last post): Stretch the widget to fill the dashboard. Save. Run. If the cameras' output does not display in the browser windows, try rebooting the camera boards & refreshing the HABPanel browser tab Next, Feedback from a Forum Member
|
|
|
Post by papa on Sept 28, 2021 21:36:22 GMT
Feedback from a Forum Member Very very very very much thanks for this thread! I bought one of these Esp32 Cams on Aliexpress to do some DIY in my home, adding it to my other OpenHAB stuff, I have several Esp32 & Esp8266 all of them with EspHome firmwares. So I have received this which "seems to be white LilyGo", & directly burned with EspHome with all stuff of cam. At first, cam seems to work but not connecting to anything. Then after first reboot, cam no longer works. When I test some EspHome stuff, device works but if I put cam, doesn't work. After some searching, I found that Cams with EspHome only work with HomeAssistant api, so I can't use it with OH. Searching a lot, I found this thread, because all stuff for Esp32 Cams with arduino aren't very clear. I have followed all your steps, very great, thanks, camera works from first post, also all other stuff like PIR, OLED screen, etc. I very much confirm all this. I am at last steps, only have to integrate with OH, the easy part!, but MQTT messages are working, same as camera streaming. So I am very happy!, and very thankful. I only have to investigate a little to fix a static IP instead of using a DHCP assigned one, not a big problem. And only a little question? Have you tested the face detection and/or recognition? Samples of that from LilyGo seem to work. Thanks again! Ruben PS: Though my board seems the same as yours, my pin assignments correspond to CAMERA_MODEL_ESP_EYE Next, Papa's Response to Ruben
|
|
|
Post by papa on Sept 28, 2021 21:37:50 GMT
Papa's Response to Rubenrubenkona, I am glad that this thread proved useful for you. It has been a while since I've worked on the board's firmware. When I first used the board with its original firmware, I believe I tried the face detection/recognition a little. I believe it worked sometimes & sometimes not & that others' reviews indicated the same results. Note: I am currently working my way through updating & augmenting this documentation in relation to OH 3. As I go along, I'm testing everything with OH 3 & the camera board. Next, Troubleshooting Feedback from Ruben
|
|