포럼 회원으로 등록하신분만 다운로드가 가능합니다. 최대 업로드 가능한 용량은 20MB 입니다.

MV6410의 android gps

조회 수 13108 추천 수 0 2009.07.29 22:32:27
소스는 freerunner_gps.c를 이용했습니다. 원본의 gps_qemu.c와 완벽하리 만치 동일합니다.컴파일은 그냥 원본 파일의 설정 그대로 이용했습니다. libgps.so이렇게 생성하지 않고. 그냥 libhardware_legacy.so에 들어가도록 했습니다. 
gps_dev_power()에서 power on/off하는 부분이 있는데 이놈을 죽였습니다. 그대로 두면 예외처리로 인해 바로 return되면서 thread가 실행되지 않더군요. 시간나면 이 기능도 살려서 함 해봐야 겠습니다. 그리고 gps_stat_init()에 보면 device를 open하는 부분이 있는데 여기 gps연결된 serial port를 바로 넣었습니다.
GPS_DEBUG가 0으로 되어 있는데 이놈을 1로 바꿔 주시고 컴파일 한 다음 부팅하면 gps관련NMEA 파싱 메시지가 쭈~욱 올라오는 것이 보입니다. 여기까지 오면 기능이 제대로 동작하지 않더라도 밑단은 의심하지 마세요. 응용단에서 문제를 찾아야 합니다.
대부분 gps가 위성과 연결되지 않아 생기는 문제일 가능성이 큽니다.
SDK1.5의 구글 맵을 띄운후 메뉴중에 내위치를 선택하면 현재 위치를 확인할수 있습니다.
freerunner_gps.c원본소스 첨부합니다.


고현철

2009.07.30 01:40:49
*.59.122.199

와오.....감사합니다...^^

gps라....음, 이건 실제 타겟에 붙어 있어야 하는 것인데, 돌려볼 일이 생길래나 모르겠네요.
그래도 자료는 감사합니다.

정낙주

2009.07.30 07:02:06
*.183.237.58

혹시 BoardConfig.mk에서 Default로 되어 있는 USE_QEMU_GPS_HARDWARE := true 관련 설정은 그대로 사용하셨나요?
그리고, gps 폴더의 Android.mk는 어떻게 수정하셨나요?
저도 이러저리 해 보고 있는데, 잘 되지 않네요. 위 소스를 가지고 libgps.so도 만들어 보고 gps_qemu.c를 수정해서 libhardware_legacy.so에도 넣어 봤습니다만, 제대로 처리가 되지 않네요.. 제가 빌드하는 설정상에 문제인지, 아니면 실행하는
target의 환경 문제인지 감으 못 잡겠네요..

gps_qemu.c를 그대로 사용해봤을때는, gps_get_qemu_interface() 는 호출되지만, 이후에 qemu_gps_init() 등은 호출되지 않네요.
또, gps_freerunner.c를 적용해서 libgps.so를 만들었을때는 gps_get_hardware_interface() 조차도 호출되지 않네요.
제가 gps_freerunner.c를 사용할 때는 BoardConfig.mk에서 USE_QEMU_GPS_HARDWARE 는 주석처리하고, BOARD_GPS_LIBRARIES := libgps 로 설정해서 작업했었습니다.



고현철

2009.07.30 11:00:08
*.59.122.199

freerunner BoardConfig.mk 를 보니 이렇게 되어 있네요.

BOARD_HAVE_BLUETOOTH    := true
BOARD_USES_ALSA_AUDIO   := true
BOARD_HAVE_FREERUNNER_GPS := true
#BOARD_USES_GENERIC_AUDIO   := true
HAVE_HTC_AUDIO_DRIVER   := false
HAVE_WEXT_WIFI_DRIVER   := true
USE_PRODUCT_WIFI_CONF   := true
CONFIG_CTRL_IFACE       := y
TARGET_NO_BOOTLOADER    := true
TARGET_NO_KERNEL        := true
TARGET_PROVIDES_INIT_RC := true
USE_CAMERA_STUB         := true
USE_LED_TYPE            := generic
USE_QEMU_GPS_HARDWARE   := false
USE_SENSOR_TYPE         := moko
USE_VIBRATOR_TYPE       := led
#This builds Android with the PacketVideo Player and codecs that
#require licensing. Comment the line below to include these codecs.
#BUILD_WITH_PV  := true
# The jpeg assembly doesn't currently suport armv4t
ANDROID_JPEG_NO_ASSEMBLER   := true

BOARD_GPS_LIBRARIES := libfreerunner_gps

박상민

2009.09.12 01:07:19
*.61.205.18

gps 관련 작업을 하다가 참조해 보았는데..해당 소스를 어디에 넣어야 하는지요.. Android.mk 어떻게 되는지요..
List of Articles
번호 제목 글쓴이 날짜 조회 수
44 [번역] Android Opencore Multimedia Framework 번역본 file [7] 고도리 2009-08-25 17636
43 안드로이드 실행 시 미디어 서버 pending 현상 원인 중 한가지 file 박병구 2009-08-22 10810
42 Android OpenCore 모임추진 ? [8] 장석원 2009-08-07 16001
41 Android 폰 가지고 놀기^^ [1] 2009-08-07 10211
40 [번역] Android OpenCore multimedia framework-part1 file [7] 고현철 2009-08-04 13768
39 Android audioflinger 분석자료 입니다. file [11] 고현철 2009-07-30 18819
» MV6410의 android gps file [4] 주재경 2009-07-29 13108
37 [강좌]안드로이드 1.5 compile해서 NFS root filesystem으로 만들... file [1] 고도리 2009-07-18 14140
36 Android make옵션 [3] 2009-07-16 19464
35 Android Java쪽에서 시작 하는 main()부분... file [1] 2009-07-16 9977
34 Vmware에서 x86으로 안드로메다 포팅 법 [1] 2009-07-15 11075
33 Android 윈도우에서 git로 소스 받기.. [3] 2009-07-14 17021
32 aesop 안드로이드 보드의 3D 성능 측정을 부탁드립니다. file [8] 최영빈 2009-07-09 11041
31 S3C6410 Android ADB USB-OTG 동작 화면 file [8] 김재훈 2009-07-09 15621
30 android gstreamer 동작화면 file [10] 고현철 2009-07-07 11025
29 HTC G2 안드로이드폰 밧데리 시간 [3] 2009-06-25 9720
28 MV6410용 aesop-android-2.6.29 입니다. (CS8900 관련) file [4] 2009-06-17 10621
27 mv6410 보드에 안드로이드 올렸습니다. . 2009-06-11 9549
26 Android Battery 드라이버...ㅎㅎㅎ-.-; [3] 2009-06-02 10769
25 cupcake, android 1.0/1.5의 의미 2009-05-20 10710

사용자 로그인