이번에 판매가 시작되는 Palm Pre의 기능중 하나가 iTunes에 연결해 아이팟/아이폰과 동일하게 뮤직 라이브러리를 싱크할 수 있는 것이다.

다만 애플에서 허가해 주지 않았는데 어떻게 구현했는가가 궁금했는데 Jon Lech Johansen의 블로그에 올라온 디바이스 리포트에 그 비밀이 밝혀졌다.

Palm Pre에는 'USB Drive' 모드와 'Media Sync' 모드가 있는데 각 모드인 경우 USB 디바이스 리포트가 달라진다. 위의 그림에서 볼 수 있는것처럼 Media Sync모드에서는 Palm Pre를 아이팟이라고 리포트를 해서 iTunes에게는 아이팟이 연결된 것 처럼 속여주는 것이다.
이렇게 되면 iTunes는 아이팟이 연결되었다고 생각하고 동작하게 된다.

다 만 이 방법은 mass storage device를 iPod이라고 이야기하는 것 뿐 저 화면에는 나오지 않았지만 root USB node (IOUSBDevice)는 'Palm Pre'라고 알려주고 있기 때문에 IOUSBDevice와 위의 4번 엔트리 값을 비교하면 매우 쉽게 이 편법을 쓸 수 없게 만들어 줄 수 있다. 아마 조만간 아이튠 업데이트에 이 부분이 추가될 가능성이 상당히 크다고 본다. (현재 iTunes 8.2에서는 아직까지 이 편법이 동작한다.)
Posted by nautes

댓글을 달아 주세요

  1. 2009.11.18 11:19

    언젠가 아이폰이나 아이팟 제품군의 경쟁력 악화로 점유율이 떨어질 때가 되서야 아이튠즈의 동기화를 타사의 제품에도 허락하는 방안이 나올 것 같습니다. 사용자마다 가지고 있는 음악의 재생횟수나 별점 표기가 애플 입장에서 가장 큰 자산이죠. 팜 프리나 픽시나 작고 앙증맞은 모양이 무척 맘에 드는데 주파수 문제로 같은 방식을 사용하고 있는 lgt가 들여오지 못하고 있는 현실이 안타깝습니다..

  2. 2010.02.02 15:04

    이 글과 관련 없는 질문을 올려서 우선 죄송합니다.
    검색하다가 님의 블로그까지 흘러들어왔네요~

    지난 주에 아이폰을 구매했습니다. (애플관련 제품을 처음 사용해서 애플의 정책에 굉장한 불만을 갖고 있습니다 ㅎㅎ)
    처음에 회사에서 사용하는 컴퓨터에 아이튠스를 설치하고 USB케이블을 이용하여 아이폰에 자료를 넣고 충전까지도 잘했습니다.
    그런데, 집에서 충전기를 이용하여 충전을 하려고 하니 안되더군요..
    "어라 충전기의 문제인가?" 하는 마음에 컴퓨터를 켜고 다시 USB케이블을 이용하여 충전하려고 했더니 안되더군요..
    재미있는건 아이폰을 컴퓨터가 인식은 하더라는거죠.. -_-
    이상하다 싶어 이리 저리 만지다가 혹시나 하는 마음에 아이튠스를 설치했습니다.
    그랬더니 충전이 되더군요.. (이 부분에서 욕이 좀 나왔었습니다)
    보조배터리를 사은품으로 받았는데도 충전이 안되더군요..
    역시나 시거짹을 이용하여 차량에서 충전하려 했지만.. 역시나 결과는 똑같았습니다.
    시거짹으로 아이폰이 충전이 되는지 검색하다가 님의 글을 보고 이렇게 장문의 글을 적어봅니다.

    제가 생각하기에는 아이폰 충전 단자쪽의 문제인 듯 싶은데 님께 고견을 듣고 싶어서 이렇게 글을 남겨봅니다.
    답변 부탁드리겠습니다. 감사합니다.

    (그런데, 현재 아이폰 카페에 글을 보니 특정 노트북등에서 USB케이블을 이용한 충전이 안된다는 글을 봤습니다)

    • 2010.02.03 05:08 신고

      http://techblog.textcube.com/55

      http://techblog.textcube.com/56

      http://techblog.textcube.com/115

      아이폰의 충전과 관련된 제 포스팅들입니다.
      기본적으로 USB의 +, gnd만 있어서는 충전이 안되고 d+,d-에 일정 전압이 걸려야 아이폰이 충전을 하게 되어 있습니다.

      만일 사은품으로 받으셨다는 보조배터리나 가지고 계시는 충전기가 아이폰용 제품인데도 충전이 안된다면 제품 불량을 의심해 보셔야 할 거 같고 그렇지 않고 단지 5V만 나오는 제품이면 위의 포스트에 있는것같은 회로가 추가되어야 충전이 될 겁니다.

3G iPhone에 추가되었다는 A-GPS에 대해 사람들이 착각을 하는 경우가 많다.


main_maps20080609.jpg

Assisted라는 단어 때문에 그 동안 2G iPhone에서 wifi access point를 통하거나 현재 한국에서 위치찾기에 사용하는 식으로 휴대폰 기지국 신호를 가지고 대강의 현재 위치를 파악하는 pseudo GPS같은 방식이라고 생각하는 사람들이 많이 있다.

하지만 실제로 A-GPS는 정확한 위치를 파악하는데 정지궤도상에 떠 있는 GPS위성의 신호를 사용한다. Assisted라는 단어가 앞에 붙은 이유는 GPS의 성능을 향상시키기 위해 추가적으로 wifi나 기지국의 도움을 받기 때문이다. 실제 A-GPS는 미국 FCC가 휴대폰에서 걸려오는 911(응급전화)의 경우 경찰이나 소방서같은 기관에서 휴대폰의 위치를 자동으로 파악할 수 있도록 하는 E911을 의무화 시킴으로서 개발이 가속화 되었다.


사용자 삽입 이미지

GPS시스템은 약 20,200km 상공의 MEO(Medium Earth Orbit)에 24개의 GPS위성이 운용되고 있다. (참고로 원래 GPS는 군용으로 만들어져서 초기에는 군용으로만 사용되었는데 1983년 KAL007편 격추 사건 이후 레이건이 민간에 사용을 허가하도록 했다. 다만 군용에 비해 민간용 코드는 오차범위가 크다)

사용자 삽입 이미지

위의 그림이 GPS의 동작 원리이다. 현 위치에서 최소 3개 이상의 위성에서부터 신호를 수신해서 자신과 각 위성과의 거리를 계산하고 그 거리를 이용해서 삼각측량 방식으로 자신의 위치를 계산해 낼 수 있다. 위 그림에서처럼 3개 위성과의 정확한 거리를 알 수 있으면 3개의 위성만으로도 자신의 정확한 위치를 계산할 수 있지만 실제로는 여러가지 오차들 때문에 위성과의 거리가 100% 정확하지 않기 때문에 3개의 위성만으로는 위치계산이 힘들고 더 많은 위성이 필요하고 그래도 어느 정도의 오차는 피할 수 없다.

현재 사용되고 있는 GPS의 경우 위성에서 신호를 받아오기 위해서는 수신기와 위성간에 LoS (line-of-sight)가 확보되어야 하는데 커다란 나무나 도심의 빌딩들 사이에 있는 경우, 또는 실내에서는 위성의 신호를 제대로 받아올 수 가 없다. 그리고 꺼져있던 수신기가 이런 상황에서 처음으로 켜지면 위성에서 almanac과 ephemeris정보를 다운받을 수가 없기 때문에 나중에 깨끗한 위성신호를 받을 수 있는 곳으로 나가도 위치를 파악하는데 1분 이상이 걸릴 수 있다.

A-GPS는 이런 문제점들을 해결하기 위해 GPS위성신호에 추가적으로 assistance server를 사용한다.


agps.jpg

* Assistance server는 자신의 정확한 위치를 GPS신호를 수신해서 알고 있고 충분한 컴퓨팅 파워가 있기 때문에 휴대폰 신호를 분석해서 휴대폰의 대강의 위치를 계산할 수 있다. 그러므로 E911같은 경우 휴대폰이 GPS신호를 받지 못해 정확한 위치를 제공해주지 않아도 E911에 대강의 위치를 알려줄 수 있다.

* Assistance server는 휴대폰에게 위성의 궤도정보를 제공해 줄 수 있기 때문에 휴대폰이 그 정보를 이용해 빠르고 정확하게 GPS 위성신호를 잡을 수 있게 해 준다.

* Assistance server에서는 GPS신호의 오차에 영향을 미치는 ionospheric condition등에 대해 정확하게 측정할 수 있기 때문에 그 정보를 휴대폰에 전송해 줘서 휴대폰이 위성에서 수신한 신호를 사용해서 훨씬 정확한 위치를 계산할 수 있게 해 줄 수 있다.

일부 A-GPS는 위치를 파악하기 위해 기지국과의 연결이 필수적인 경우도 있고, 다른 경우는 기지국과 연결되면 좀 더 빠르고 정확하게 위치를 파악할 수 있지만 기지국과 연결이 필수적이지 않은 경우도 있다.

--

애플 사이트의 3G iPhone 페이지에 보면 iPhone 3G에 사용한 위치파악 방법에 대해 설명(http://www.apple.com/iphone/features/gps.html)하고 있다.

빠른 시간내에 가장 정확한 위치를 찾아내기 위해 GPS위성, Wi-fi 핫스팟, 셀타워에서의 신호를 사용한다. GPS 신호를 수신할 수 있으면 아이폰은 파란색의 GPS 인디케이터를 표시한다. 하지만 실내인 경우 (GPS위성과의 LoS가 유지되지 않는 경우) 아이폰은 wifi를 사용해서 위치를 파악한다. Wifi 핫스팟의 범위에도 들어있지 않은 경우는 셀타워를 사용해서 위치를 파악한다. 위치를 알려주는 원의 크기를 통해 아이폰이 계산한 위치가 얼마나 정확한가를 알려준다. 즉 원이 작을수록 더 정확한 위치라는 말이다.

--

즉 3G iPhone에서 위치파악하는 기능이 GPS 위성을 사용하는게 아니라거나 셀타워와 연결되어야만 한다는 말은 모두 잘못된 정보이다.

Posted by nautes

댓글을 달아 주세요

  1. 2008.06.19 18:26

    지구가 평면이라면 이론적으로 3개 위성만으로도 정확한 위치파악이 가능합니다.
    그러나 아시다시피 지구는 평면이 아닙니다. 따라서 4개의 위성이 있어야 위치를 제대로 파악할 수 있습니다.
    물론 기본적으로 GPS를 통해 위치계산을 하기 위해서는 해당 지역의 평균 고도값을 주기 때문에, 크게 오차는 나지 않습니다만...

  2. 2008.06.19 20:15

    휴대용 GPS 맵 단말기를 사용중인데요... 일반 GPS 단말기에서도 wifi나 무선망 신호를 받아서, 초기 위성 찾는 시간을 줄여주면 좋겠어요...

    근데, 생각해 보니 몇 년 지나면, 휴대용 GPS 단말기 보다는 그냥 GPS 기능이 있는 휴대폰을 구입하는 것이 더 좋겠네요.. ^^;; 야외에서 사용할 수 있게 배터리 오래가고 튼튼한 GPS 휴대폰 나오면 좋겠습니다. (12시간 이상, AA 배터리 이용, 간단한 방수, 사림 키 정도에서 떨어뜨려도 괜찮은 정도로.. )

  3. 2008.06.20 14:50

    싸이파이님 께서 생각 안하신게 있네요 위성과 지상의 거리는 정해져있기 때문에 3개여도 괜찮습니다.

  4. 2008.06.23 17:50

    불량불곰님.. 위성과 지상의 거리가 정해져있다.. 하심은 어떤 의미이신지...
    지상 고도에 따라서 위성이 오르락내리락 하신다는 말씀은 아니실 것 같고..

    물론 위성의 고도에서 보자면, 지구 전체 표면의 고도 편차가 그렇게 크지 않은 것은 사실이고,
    그것 때문에, 3차원으로 나타나야할 GPS의 위치값에서, 고도 부분의 에러가 제일 크게 나는 것도 사실이지만,
    '이론적'으로는 4개가 되어야 하는게 맞는 것으로 알고 있습니다.

    괜히 Tech Viator님의 좋은 글에 와서 논쟁하는 것 같아서 좀 죄송스럽습니다만...

  5. 2008.08.25 15:57

    자세한 자료 감사합니다.

  6. 2009.04.01 11:09

    gps 위성이 3개가 fix 되면 2차원적인 좌표를 알수가 있고
    4개가 fix 되면 높이까지 알수가 있습니다.

  7. 2009.07.25 10:52

    아이폰의 경우에는 그닥 오차를 모르겠던데요.. 구글지도 펴놓고 자신위치를 정확하게 표시해주던데...

    빌딩사이에 있을 경우... 정확하게 저의 위치인 큰빌딩으로부터 남동쪽 횡단보도 앞에 있으면 잘 표시를 해주던데요...
    (일본 아이폰기준으로...)

    저기에서 말하는 오차라는 건.. 음 좀더 세부적이고 전문적으로의 오차를 뜻하는 건가요?

    지나가다 흥미로운 글을 발견해서 읽고 글을 남기고 있습니다

  8. 2009.08.10 09:24

    agps 수신받는 코드는 어디서 구하는지 아시나여?

    테스트좀 해보려고

    서치중인데 도대체 안나오네요 ㅎㅎ

    sgps랑 수신받는 코드가 틀리나요?

  9. 2009.12.31 17:34

    GPS에대해서 자세히 알아갑니다~ 감사합니다~

  10. 2010.10.04 22:59

    위성개수에 대해 많이 다르게 알고 계신듯 하여 몇글자 적고 갑니다.
    타원이냐 평면이냐는 무관합니다.
    일단 3차원 세계이므로 미지수가 XYZ 3개 입니다. 이 값을 알기 위해서 3개의 위성이 기본적으로 필요합니다.
    그러나...
    삼각측량을 위해서는 위성과 GPS 수신기 사이의 거리를 알아야 합니다.
    이 거리는 위성에 탑재된 초정밀 시계와 수신기의 시간차이를 통해서 구하게 됩니다
    여기서 문제가 발생합니다
    정밀한 위성시계와 비교적 정밀하지 못한 수신기 시계의 차이를 보정하기 위해서 위성이 하나더 필요하게 됩니다.
    그래서 일반적으로 GPS 위성이 위치를 잡기위해서는 4개의 위성이 필요합니다.

    • 2010.10.05 01:23 신고

      위에 써 놓은 내용은 GPS의 기술적 내용을 잘 모르는 사람들을 위해 동작원리를 설명하기 위한 것이지 아주 세부적인 사항까지 포함하지 않은 것입니다. 말씀하신 부분까지 포함하려면 저 정도 분량으로는 어림도 없죠.
      그리고 4개도 최소한의 갯수일 뿐 실제적으로 어느 정도 정확한 위치를 파악하려면 더 여러개의 위성신호를 트래킹해야 합니다.

이전버튼 1 이전버튼