Camera WiFi in Client mode - WORKING .ash SCRIPT inside

yeah, i didn't see him there lately...
 
there's a section in the app where you can post feedback, not necessarily contact the developers..
 
i write my own apps :)
 
And then you share it with us, right? :) LOL
 
mhm :)

now i came to the point where i am seriously thinking about compiling own version of wpa_supplicant binary for the camera. Yes, part of firmware...
 
I knew you would be fixing it... you really can't let it pass, huh bratr? :)
 
i never said i wouldn't :D
 
even with chrome, it's still beyond comprehension...
 
@Andy_S, I'd like to know what kind of wifi issue, and try to help contact Yi Cam developper for you.
Just try to, you know, even I contact with Yi Cam company in Chinese, maybe get no respond back.
 
@xu.hao & @luckylz : well, the problem is, that the camera is capable of connecting to existing wifi network(s), but there is small bug preventing it to do so. It is (most probably) caused by version incompatibility of wifi driver and/or its libs (bcmdhd, cfg80211, lib80211) AND wpa_supplicant binary.

When you try to launch wpa_supplicant manually, you get this error
Code:
ICSMR1 built driver used with Jellybeans supplicant
suggesting, that the driver was built in NDK for android plattform 14,
but wpa_supplicant binary for newer one and it causes issues preventing wpa_supplicant to scan for APs and do anything at all.

I even managed to get dmesg log from the camera while it is trying to connect to existing AP,
i attached full log HERE where the part with failed connecting to the AP is cut below in this spoiler (note last 3 lines):
Code:
[ 1045.070000] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[ 1045.080000] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 1045.080000] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 1045.090000] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[ 1045.210000] mmc1:attach sdio array 1
[ 1045.210000] mmc1:attach sdio array 1
[ 1045.240000] mmc1: new high speed SDIO card at address 0001
[ 1045.240000] PM: Adding info for mmc:mmc1:0001
[ 1045.250000] PM: Adding info for sdio:mmc1:0001:1
[ 1045.250000] PM: Adding info for sdio:mmc1:0001:2
[ 1046.380000] PM: Adding info for No Bus:phy1
[ 1046.390000] PM: Adding info for No Bus:rfkill3
[ 1046.390000] wl_create_event_handler(): thread:wl_event_handler:7ef started
[ 1046.390000] CFG80211-ERROR) wl_event_handler : tsk Enter, tsk = 0x810a1aa4
[ 1046.390000] PM: Adding info for No Bus:rfkill4
[ 1046.460000] dhd_attach(): thread:dhd_watchdog_thread:7f2 started
[ 1046.470000] dhd_attach(): thread:dhd_dpc:7f3 started
[ 1046.470000] dhd_attach(): thread:dhd_sysioc:7f4 started
[ 1046.730000] dhd_bus_init: txglom_bucket_size=1680
[ 1046.890000] dhd_preinit_ioctls:A >> srl = 4
[ 1046.890000] dhd_preinit_ioctls:A >> lrl = 7
[ 1046.900000] dhd_preinit_ioctls:B >> srl = 15
[ 1046.900000] dhd_preinit_ioctls:B >> lrl = 15
[ 1046.930000] dhd_txglom_enable: enable 1
[ 1046.930000] PM: Adding info for No Bus:wlan0
[ 1046.930000] Broadcom Dongle Host Driver: register interface [wlan0] MAC: 04:e6:76:49:5b:0a
[ 1046.980000]
[ 1046.980000] Dongle Host Driver, version 1.88.45.10 (r507781)
[ 1046.980000] Compiled in /home/ants07/rproduct/trunk/boss_sdk/output.oem/build/bcmdhd-amba/driver/v1.88.45.10/open-src/src on Jun  9 2015 at 10:04:51
[ 1047.670000] CFGP2P-ERROR) wl_cfgp2p_supported : wl p2p error -23
[ 1051.510000] CFGP2P-ERROR) wl_cfgp2p_supported : wl p2p error -23
[ 1051.780000] CFGP2P-ERROR) wl_cfgp2p_supported : wl p2p error -23

I tried to use different wpa_supplicants (from SJ5000+ for example) but it didn't work due to unsupported driver (old version of wpa_supplicant),
i also failed when i tried to compile wpa_supplicant myself. :(

So any help will be greatly appreciated by many many people...
 
Last edited:
@xu.hao & @luckylz : well, the problem is, that the camera is capable of connecting to existing wifi network(s), but there is small bug preventing it to do so. It is (most probably) caused by version incompatibility of wifi driver and/or its libs (bcmdhd, cfg80211, lib80211) AND wpa_supplicant binary.

When you try to launch wpa_supplicant manually, you get this error
Code:
ICSMR1 built driver used with Jellybeans supplicant
suggesting, that the driver was built in NDK for android plattform 14,
but wpa_supplicant binary for newer one and it causes issues preventing wpa_supplicant to scan for APs and do anything at all.

I even managed to get dmesg log from the camera while it is trying to connect to existing AP,
i attached full log HERE where the part with failed connecting to the AP is cut below in this spoiler (note last 3 lines):

I tried to use different wpa_supplicants (from SJ5000+ for example) but it didn't work due to unsupported driver (old version of wpa_supplicant),
i also failed when i tried to compile wpa_supplicant myself. :(

So any help will be greatly appreciated by many many people...

Connecting camera to existing Wi-Fi ... Well, we don't officially support this feature yet.

I'll forward your message to our firmware developer. I'll let you know if I have any updates on it. Thanks for your feedback.
 
Yes, i know that, thats why i am trying to help you solve it and give you hints why it is not working as it should be.

You -technically- are supporting custom wifi configurations for a long time
(much longer than via app - when you upload custom wifi.conf into SD card /MISC/ folder, it gets copied to the camera's folder and is applied)
so advanced people can already set it for their network, it just doesn't connect properly. Yet. :)
 
I think the Yi Cam team, just needs long, long, long R&D circle than you imagine.:p There are dosens of complaints in Chinese forum.

But anyway, thanks @xu.hao who prompt replied to you much faster than to Chinese forum.
 
Well, that can be true, but it all may be just recompiling wpa_supplicant for plattforms/android-14 instead of newer one.
If the firmware guy would recompile that supplicant (+ acompanying wpa_cli) and send me just the resulting binaries, i would GLADLY test that myself (as i know how) before Xiaomi would release the official firmware update. Imho thats all what is missing right now for this functionality :)
 
Last edited:
Oh and btw - that would be one more functionality that even GoPro doesn't have!
YES, people were crying for it with GoPro, but that camera doesn't contain wpa_supplicant at all,
so XiaoYi would be better cam in the networking aspect than GoPro!

And honestly, since this could (and possibly does) apply to the security camera as well and people usualy buy security cams to connect them to existing networks -
they would be able to attach more than one camera (which is huge disadvantage right now).
So, basically, to get this working would be HUGE boost of its usability for everyone :)
 
ALL HAIL @nutsey !!!

he noticed there are TWO wpa_supplicants in the firmware.
/usr/local/bcmdhd/wpa_supplicant
/usr/bin/wpa_supplicant

i didn't pay any attention to it (my mistake), but by default, wpa_supplicant links to the one in /usr/local/bcmdhd - its version 2.3_devel. (I expected system to prioritize /usr/bin... wouldn't you?)

Guess what version is the one in /usr/bin ? THE CORRECT ONE !!!!!!!!


Now i am trying to hack the wifi network once again. Its a HUGE step forward...
 
No comment needed:

wifi.png
 
Like this, you can link Yi cam to existing wlan?
Great job!
 
Back
Top