기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

android kitkat 버전에 ralink rt3070 usb type wifi module을 포팅중입니다.


wpa_supplicant 에 driver 로 wext 를 사용하였고 unix domain socket으로 control interface를 생성하였습니다

(wpa_supplicant.conf  내용에 ctl_interface=DIR=/data/system/wpa_supplicant )


setting menu에서 wifi on/off 하면

드라이버 모듈도 정상으로 올라가고 내려갑니다.

logcat을 보면 wpa_supplicant 도 정상으로 동작하고 scan도 되면서 AP list가 나타납니다.


그런데 화면에는 ap list가 나타나지 않고 searchin... 중으로 만 표시됩니다.

wpa_cli 명령으로 scan 과 scan_results를 하면 콘솔상에서 AP list가 출력됩니다.

wpa_supplicant 동작과 소켓연결은 정상인것으로 보입니다.


wpa_supplicant가 인식한 scan 결과가 어떤 경로로 android framework으로 전달되어 wifi 리스트에 나타나는지 모르겠네요


혹시라도 같은 경험이 있으시거나 원인을 아시면 조언 부탁드립니다.



고도리

2015.05.21 09:35:22
*.200.239.210

android는 wpa_cli와 같은 역할을 합니다.


setting menu에서 동작된다면, 일단 android setting은 정상적으로 보여지는데,

wifi hal쪽에서 관련 데이터가 위로 올라가는데 문제가 있는 듯 합니다.


wpa_cli의 역할을 하는 android까지 데이터가 제대로 올라가는지 찍어봐야 하지 않을까 합니다.

MrWho

2015.05.21 18:34:56
*.255.49.147

안드로이드에서 wpa_supplicant에 보내는 명령과 리턴값이 문제인것 같습니다,

HAL 에서 커맨드를 출력해보면 "IFNAME=wlan0 BSS RANGE=0- " 이런형태입니다.

wpa_cli 로 위 명령을 적용하면 UNKNOW COMMAND 로 나옴니다.

안드로이드는 4.4.2 키켓 버전이고요

wpa_suppilcant 는 0.8 버전에 WEXT 드라이버를 적용했습니다

인터네상에서 WEXT는 wpa_supplicant 0.6을 사용하던데

wpa_supplicant 버젼차이 일까요. 아니면 android framework 버젼이 높아서 일까요?




List of Articles
번호 제목 글쓴이 날짜 조회 수

사용자 로그인