m5cameraF



  • I am having an issue with the new fisheye camera. I plugged it in and accessed the ap wifi but then when I go to 196.128.4.1 it is just showing a black screen with a small white square in the middle. I downloaded the firmware and reloaded it but it does the same thing. Can anybody tell me what might be the issue.



  • @jpilarski How about burnning lastest firmware through M5Burner?

    https://m5stack.com/download



  • @watson First off that is really convenient to have all the firmware in one download for all the various M5 devices. I used the cameraF firmware but still no image. It does provide an access point and it is assigning an ip to the station but when I try to connect to the camera in the browser I get no image. I also tried this on a different browser and a different device and still no luck.



  • Hello @jpilarski Check what the M5CameraF print to serial window. Let me view those information.



  • Here is the serial output

    ets Jun 8 2016 00:22:57

    rst:0x1 (POWERON_RESET),boot:0x32 (SPI_FAST_FLASH_BOOT)
    flash read err, 1000
    ets_main.c 371
    ets Jun 8 2016 00:22:57

    rst:0x10 (RTCWDT_RTC_RESET),boot:0x32 (SPI_FAST_FLASH_BOOT)
    configsip: 0, SPIWP:0xee
    clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
    mode:DIO, clock div:2
    load:0x3fff0018,len:4
    load:0x3fff001c,len:8132
    load:0x40078000,len:10816
    load:0x40080400,len:6928
    entry 0x400807a0
    D (73) bootloader_flash: mmu set block paddr=0x00000000 (was 0xffffffff)
    I (36) boot: ESP-IDF v3.3-dev-159-ga9eb37e2c-dirty 2nd stage bootloader
    I (36) boot: compile time 10:31:28
    D (37) boot: Enabling RTCWDT(9000 ms)
    I (49) boot: Enabling RNG early entropy source...
    D (49) boot: magic e9
    D (49) boot: segments 04
    D (51) boot: spi_mode 02
    D (54) boot: spi_speed 00
    D (57) boot: spi_size 02
    I (59) boot: SPI Speed : 40MHz
    I (63) boot: SPI Mode : DIO
    I (67) boot: SPI Flash Size : 4MB
    D (71) bootloader_flash: mmu set paddr=00000000 count=1
    D (77) boot: mapped partition table 0x8000 at 0x3f408000
    D (82) flash_parts: partition table verified, 4 entries
    I (87) boot: Partition Table:
    I (91) boot: ## Label Usage Type ST Offset Length
    D (98) boot: load partition table entry 0x3f408000
    D (103) boot: type=1 subtype=2
    I (106) boot: 0 nvs WiFi data 01 02 00009000 00006000
    D (114) boot: load partition table entry 0x3f408020
    D (119) boot: type=1 subtype=1
    I (122) boot: 1 phy_init RF data 01 01 0000f000 00001000
    D (129) boot: load partition table entry 0x3f408040
    D (134) boot: type=0 subtype=0
    I (137) boot: 2 factory factory app 00 00 00010000 00100000
    I (145) boot: End of partition table
    D (149) boot: Trying partition index -1 offs 0x10000 size 0x100000
    D (156) esp_image: reading image header @ 0x10000
    D (160) bootloader_flash: mmu set block paddr=0x00010000 (was 0xffffffff)
    D (167) esp_image: image header: 0xe9 0x0c 0x02 0x02 400813bc
    I (173) esp_image: segment 0: paddr=0x00010020 vaddr=0x3f400020 size=0x1e314 (123668) map
    D (182) bootloader_flash: mmu set paddr=00010000 count=2
    D (231) bootloader_flash: mmu set block paddr=0x00020000 (was 0xffffffff)
    I (231) esp_image: segment 1: paddr=0x0002e33c vaddr=0x3ff80000 size=0x00000 ( 0) load
    D (235) bootloader_flash: mmu set paddr=00020000 count=1
    D (241) bootloader_flash: mmu set block paddr=0x00020000 (was 0xffffffff)
    I (248) esp_image: segment 2: paddr=0x0002e344 vaddr=0x3ff80000 size=0x00000 ( 0) load
    D (256) bootloader_flash: mmu set paddr=00020000 count=1
    D (262) bootloader_flash: mmu set block paddr=0x00020000 (was 0xffffffff)
    I (269) esp_image: segment 3: paddr=0x0002e34c vaddr=0x3ffb0000 size=0x01cc4 ( 7364) load
    D (278) bootloader_flash: mmu set paddr=00020000 count=2
    D (286) bootloader_flash: mmu set block paddr=0x00030000 (was 0xffffffff)
    I (290) esp_image: segment 4: paddr=0x00030018 vaddr=0x400d0018 size=0x77cb0 (490672) map
    D (299) bootloader_flash: mmu set paddr=00030000 count=8
    D (476) bootloader_flash: mmu set block paddr=0x000a0000 (was 0xffffffff)
    I (476) esp_image: segment 5: paddr=0x000a7cd0 vaddr=0x3ffb1cc4 size=0x0190c ( 6412) load
    D (481) bootloader_flash: mmu set paddr=000a0000 count=1
    D (489) bootloader_flash: mmu set block paddr=0x000a0000 (was 0xffffffff)
    I (493) esp_image: segment 6: paddr=0x000a95e4 vaddr=0x3ffb35d0 size=0x00000 ( 0) load
    D (502) bootloader_flash: mmu set paddr=000a0000 count=1
    D (507) bootloader_flash: mmu set block paddr=0x000a0000 (was 0xffffffff)
    I (514) esp_image: segment 7: paddr=0x000a95ec vaddr=0x40080000 size=0x00400 ( 1024) load
    D (523) bootloader_flash: mmu set paddr=000a0000 count=1
    D (529) bootloader_flash: mmu set block paddr=0x000a0000 (was 0xffffffff)
    I (535) esp_image: segment 8: paddr=0x000a99f4 vaddr=0x40080400 size=0x175e8 ( 95720) load
    D (544) bootloader_flash: mmu set paddr=000a0000 count=3
    D (589) bootloader_flash: mmu set block paddr=0x000c0000 (was 0xffffffff)
    I (589) esp_image: segment 9: paddr=0x000c0fe4 vaddr=0x400c0000 size=0x00000 ( 0) load
    D (594) bootloader_flash: mmu set paddr=000c0000 count=1
    D (599) bootloader_flash: mmu set block paddr=0x000c0000 (was 0xffffffff)
    I (606) esp_image: segment 10: paddr=0x000c0fec vaddr=0x50000000 size=0x00000 ( 0) load
    D (615) bootloader_flash: mmu set paddr=000c0000 count=1
    D (621) bootloader_flash: mmu set block paddr=0x000c0000 (was 0xffffffff)
    I (627) esp_image: segment 11: paddr=0x000c0ff4 vaddr=0x50000000 size=0x00000 ( 0) load
    D (636) bootloader_flash: mmu set paddr=000c0000 count=1
    D (642) bootloader_flash: mmu set block paddr=0x000c0000 (was 0xffffffff)
    D (649) esp_image: Calculated hash: 5711b5c3ff14297bfc5d922c0ccd48c595c7327bc11cd87d7e795489ffbbeaa8
    D (658) bootloader_flash: mmu set paddr=000c0000 count=1
    D (663) bootloader_flash: mmu set paddr=000c0000 count=1
    I (682) boot: Loaded app from partition at offset 0x10000
    I (682) boot: Disabling RNG early entropy source...
    D (682) boot: Mapping segment 0 as IROM
    D (686) boot: Mapping segment 4 as DROM
    D (690) boot: calling set_cache_and_start_app
    D (695) boot: configure drom and irom and start
    D (699) boot: start: 0x400813bc
    I (704) spiram: Found 32MBit SPI RAM device
    I (707) spiram: SPI RAM mode: flash 80m sram 80m
    I (713) spiram: PSRAM initialized, cache is in low/high (2-core) mode.
    I (720) cpu_start: Pro cpu up.
    I (724) cpu_start: Starting app cpu, entry point is 0x4008136c
    I (0) cpu_start: App cpu up.
    I (1219) spiram: SPI SRAM memory test OK
    I (1219) heap_init: Initializing. RAM available for dynamic allocation:
    I (1219) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM
    I (1226) heap_init: At 3FFBB578 len 00024A88 (146 KiB): DRAM
    I (1232) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
    I (1238) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
    I (1245) heap_init: At 400979E8 len 00008618 (33 KiB): IRAM
    I (1251) cpu_start: Pro cpu start user code
    I (1256) spiram: Adding pool of 4096K of external SPI memory to heap allocator
    I (270) cpu_start: Starting scheduler on PRO CPU.
    I (0) cpu_start: Starting scheduler on APP CPU.
    I (271) spiram: Reserving pool of 32K of internal memory for DMA/internal allocations
    I (371) gpio: GPIO[0]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 
    I (391) gpio: GPIO[15]| InputEn: 0| OutputEn: 1| OpenDrain: 0| Pullup: 0| Pulldown: 0| Intr:0 
    I (471) gpio: GPIO[19]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (471) gpio: GPIO[36]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (481) gpio: GPIO[18]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (491) gpio: GPIO[39]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (501) gpio: GPIO[5]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (511) gpio: GPIO[34]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (521) gpio: GPIO[35]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (531) gpio: GPIO[32]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (541) gpio: GPIO[25]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (551) gpio: GPIO[26]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (561) gpio: GPIO[21]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0 
    I (561) camera: Allocating 3 frame buffers (175 KB total)
    I (571) camera: Allocating 58 KB frame buffer in OnBoard RAM
    I (581) camera: Allocating 58 KB frame buffer in OnBoard RAM
    I (591) camera: Allocating 58 KB frame buffer in OnBoard RAM
    I (711) wifi: wifi driver task: 3ffd27dc, prio:23, stack:3584, core=0
    I (711) wifi: wifi firmware version: 3f23198
    I (711) wifi: config NVS flash: enabled
    I (711) wifi: config nano formating: disabled
    I (711) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE
    I (721) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE
    I (761) wifi: Init dynamic tx buffer num: 32
    I (761) wifi: Init data frame dynamic rx buffer num: 32
    I (761) wifi: Init management frame dynamic rx buffer num: 32
    I (761) wifi: Init static tx buffer num: 16
    I (771) wifi: Init static rx buffer size: 1600
    I (771) wifi: Init static rx buffer num: 10
    I (781) wifi: Init dynamic rx buffer num: 32
    I (851) phy: phy_version: 4000, b6198fa, Sep 3 2018, 15:11:06, 0, 0
    I (851) wifi: mode : softAP (3c:71:bf:06:f6:01)
    I (861) wifi: Init max length of beacon: 752/752
    I (861) wifi: Init max length of beacon: 752/752
    I (861) camera: wifi_init_softap finished.SSID:M5Psram_Cam password:
    I (562141) wifi: n:1 1, o:1 0, ap:1 1, sta:255 255, prof:1
    I (562141) wifi: station: 9c:b6:d0:df:2f:57 join, AID=1, bgn, 40U
    I (562141) camera: station:9c:b6:d0:df:2f:57 join, AID=1
    dhcps: send_offer>>udp_sendto result 0
    I (562221) tcpip_adapter: softAP assign IP to station,IP is: 192.168.4.2



  • @jpilarski your serial information does not display any error. I think you should try to update ESP32-IDF.

    my serial information here

    I (739) wifi: Init static rx buffer size: 1600
    I (749) wifi: Init static rx buffer num: 10
    I (749) wifi: Init dynamic rx buffer num: 32
    I (829) phy: phy_version: 4000, b6198fa, Sep  3 2018, 15:11:06, 0, 0
    I (829) wifi: mode : softAP (b4:e6:2d:9c:5f:1a)
    I (829) wifi: Init max length of beacon: 752/752
    I (839) wifi: Init max length of beacon: 752/752
    I (839) camera: wifi_init_softap finished.SSID:M5Psram_Cam password:
    I (8669) wifi: n:1 0, o:1 0, ap:1 1, sta:255 255, prof:1
    I (8669) wifi: station: 94:65:2d:8e:a1:08 join, AID=1, bgn, 20
    I (8669) camera: station:94:65:2d:8e:a1:08 join, AID=1
    dhcps: send_offer>>udp_sendto result 0
    dhcps: send_offer>>udp_sendto result 0
    I (10899) tcpip_adapter: softAP assign IP to station,IP is: 192.168.4.2
    ``


  • @watson
    I am using the firmware from m5burner so that is using esp tool and this should mean esp-idf isn't the issue. This is strange because the other firmwares are loading onto my other m5cameras using this same process. I have camera A and the non psram camera. Both work as expected. This one just doesn't seem to do anything when I attempt to go to 192.168.4.1. After I load the firmware and select the wifi is there anything else that needs to be done to get the fisheye camera to work. Might this just be a bad board. I notice the red LED is always on.



  • I finally got it working. It was a bad sccb connection so that is why I wasn't getting an image and why I was sometimes getting a senor error 0x000023. What I tried was to take a camera sensor from the model A camera I have and I swapped it with the model F sensor. Once I loaded up the appropriate firmware and swapped the 22 and 25 pin value in the code they each worked great. I then switched the sensors back to their original boards and loaded the default firmware and they still worked. I guess the sensor just got loose during shipping. I have a new question, if I want to ad use the F camera with some of the esp-idf facial recognition firmwares what changes should I be looking to make. I noticed there is a vertical flip on the F camera. Is there other custom settings I would need to add.



  • @jpilarski
    If you want to realize face recognition function with F camera, you just need to change the pin map that is corresponding to F camera.