![]() |
Модераторы: javastic, AntonSaburov |
![]() ![]() ![]() |
|
XMbIPb |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 6.10.2008 Репутация: 1 Всего: 1 |
Есть задача: написать простенький мидлет для телефона, который бы выдавал уровень принимаемого сигнала при BT соединении с другим телефоном.
Перерыл кучу старниц, форумов и т.д. и никак не могу найти решения! Поможайте товарищи! ![]() Хочется примерно следующего, цитатка: 7 августа 2002 года исследовательское отделение японского филиала IBM на семинаре в Токио продемонстрировало доработанную версию этих часов, оснащенных контроллером беспроводной связи Bluetooth. По заявлению представителя IBM, в ходе демонстрации часы WatchPad использовались как для передачи данных, так и для измерения расстояния до ближайшего Bluetooth-устройства. Расстояние определяется в зависимости от мощности радиоволн. Часы способны измерять примерное расстояние в трех диапазонах: менее одного метра, от одного до пяти метров, от 10 метров и более. Для этого я так понимаю нужно использовать возможности BT. http://www.palowireless.com/infotooth/knowbase/radio/100.asp Кто-то работал с этой функцией? Какие ограничения есть? Вобщем хачу все знать, а потом заказать разработку приложения... ;) |
|||
|
||||
Dummy |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 21.5.2007 Репутация: 7 Всего: 19 |
Боюсь, что вопрос не сюда. Ибо, если верить этому, даже с использованием Symbian использование RSSI невозможно (уж не знаю, как там дела обстоят с более новыми версиями). А уже в J2ME такими тонкими материями оперировать и подавно не получится.
|
|||
|
||||
XMbIPb |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 6.10.2008 Репутация: 1 Всего: 1 |
На счет S60 не знаю... Платформа то древняя, появилась по-моему во времена BT 1.0 версии. А там RSSI еще не было.
Накидаю ссылок которые нарыл: http://www.avetana-gmbh.de/avetana-gmbh/pr...h/hci/Rssi.html http://www.palowireless.com/infotooth/knowbase/radio/100.asp http://books.google.com/books?id=O9_xowxLN...5&ct=result http://cs.brown.edu/research/pubs/theses/ugrad/2005/jye.pdf Цитата: Hardware components would be provided by the vendor that implements this feature at the radio and baseband layers (remember it's optional). As for software there is functionality provided at the LMP level that permits you to manage the above. It allows you to read the RSSI level and control the TX RF output power (the LMP power commands). Короче видимо доступ к RSSI параметру - опция. Я вот сам не могу пока ответить есть или нет возможность написать такой мидлет... Прошу помощи. Это сообщение отредактировал(а) XMbIPb - 6.10.2008, 17:10 |
|||
|
||||
Dummy |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 21.5.2007 Репутация: 7 Всего: 19 |
Да здесь ведь дело даже не в возможностях самого устройства, а в том, есть ли к ним доступ из мидлета. Мощами JSR-82 этого сделать нельзя - все API там абстрагирует подобные детали от разработчика.
Вот из-за бесправности мидлетописателей большинство этих ссылок кажутся мне не особо полезными. Разве что API от Avetana... Но и тут конкретики по доступу из J2ME мало. Я было закапал ковер слюной, когда почитал здесь. Но потом наткнулся на такую фразу:
Получается, что в лучшем случае мы ограничены Windows Mobile'ом Я попытался кратко погуглить на предмет тех девайсов, которые работают с расширениями JSR-82 от Avetana - и что-то ничего в явном виде не нашел. |
|||
|
||||
XMbIPb |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 6.10.2008 Репутация: 1 Всего: 1 |
На счет Windows Mobile думаю и это уже не плохо!
![]() Про JSR`ы читал мельмок, но так и не понял, а как они относятся к MIDP? Именно MIDP вроде пишут в характеристах телефонов, а про JSR ничего не пишут... Так выходит что понять зарянее про реализацию нашей функции никак нельзя? А что если написать мидлет и протестить его на куче аппаратов? Есть еще как-то JSR-179, на базе которого вроде реализуются Location Based Services... Но и тут конкретики по доступу из J2ME мало. А как же: http://books.google.com/books?id=O9_xowxLN...5&ct=result ??? Это же целый учебник под названием "Bluetooth Technology and Its Applications with JAVA and J2ME". И в нем нет конкретики? :( Это сообщение отредактировал(а) XMbIPb - 7.10.2008, 18:40 |
|||
|
||||
Dummy |
|
||||||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 21.5.2007 Репутация: 7 Всего: 19 |
JSR - это спецификации, описывающие те или иные функциональности в Java. MIDP - это тоже JSR, и даже не один, а два: JSR37 (MIDP 1.0) и JSR118 (MIDP 2.0). Остальные JSR'ы, как правило, позиционируются или расширением MIDP (например, JSR75), или независимой функциональностью, которая, однако, доступна из MIDP-совместимых Java-платформ (коими являются большинство бюджетных мобильных аппаратов). Примером такого JSR и является JSR82 "Java APIs for Bluetooth"
Можно. В некоторых JSR есть отдельный пункт, под названием вроде "Package Discovery", где приводятся свойства, по наличию которых можно судить о наличии или отсутствии поддержки данного JSR. В остальных случаях можно написать общий мидлет и отлавливать ClassNotFoundException при первой попытке использовать тот или иной специфичный API.
Говоря о конкретике, я имел в виду именно доступ к RSSI. К сожалению, в глаза не видел книжку "Bluetooth Technology and Its Applications with JAVA and J2ME" (а в том формате, в котором она приведена по приведенной ранее ссылке, читать не стал, ибо глаза и так уже не очень хорошо видят ![]()
Так что конкретно надо-то - Bluetooth RSSI или все же Location Based Services? ![]() Это сообщение отредактировал(а) Dummy - 7.10.2008, 19:39 |
||||||||
|
|||||||||
XMbIPb |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 6.10.2008 Репутация: 1 Всего: 1 |
Dummy, нужно конечно RSSI. Я притянул LBS только потому, что полагал следующее: уж если существует какой-то API для LBS, то уж точно там должна быть функция RSSI, а раз так, то не проще ли сразу глядеть в сторону LBS и использовать его API, пусть они и избыточны для нашей задачи получения RSSI.
Ну а в остальном вроде я стал понимать больше! ;) Теперь вот хочется ответить на вопрос что делать дальше?.. Очень надо в эксперименте, так сказать, установить истину. Хотя может быть я как ламер зря зацикливаюсь на параметре RSSI... Задача вообще-то формулируется так: необходимо определить расстояние между двумя терминалами ВТ находящимися в коннекте. На первом этапе расстояние достаточно определить приблезительно. Я вижу решение в том, что мы определяем 3-4 диапазона расстояний(условно: "очень близко", "близко", "далеко", "очень далеко") и указываем в каждый момент времени в каком из них находится один терминал относительно другого. Вот мидлет иммено это и должен реализовывать. Это сообщение отредактировал(а) XMbIPb - 8.10.2008, 07:18 |
|||
|
||||
magdelphi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 5.3.2007 Где: г. Иваново Репутация: 2 Всего: 2 |
Попробуй вариант измерения времени между посылкой запроса и получением ответа.
|
|||
|
||||
XMbIPb |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 6.10.2008 Репутация: 1 Всего: 1 |
Это ж какая точность часов в телефоне нужна???
![]() Не подскажете модель телефона с атомными часами на борту? Для справки: точность обычных кварцевых часов порядка 10 в -6 степени, специально сконструированых порядка 10 в -7 степени, нам же, для определения расстояния с точностью хотя бы в 1 метр на борту телефона нужно иметь часы с точностью порядка 10 в -9 степени, что в 1000 раз точнее обчных кварцевых часов! Если будем мерять с помощью обычных кварцевых часов, то точность наших измерений будет порядка 1000 метров, а Bluetooth имеет дальность порядка 10 метров... Вывод: и пыпаться не стоит. |
|||
|
||||
magdelphi |
|
|||
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 5.3.2007 Где: г. Иваново Репутация: 2 Всего: 2 |
Да, это если один запрос.
А если представить что сигнал запроса передаёться по цепочке из 1000000 телефонов. |
|||
|
||||
XMbIPb |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 6.10.2008 Репутация: 1 Всего: 1 |
Если так, то точность такой цепочки будет в миллион раз хуже! А значит мы вообще хоть сколько-нибудь "точно" определить ни время ни расстояние не сможем...
|
|||
|
||||
XMbIPb |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 6.10.2008 Репутация: 1 Всего: 1 |
Ну что, продолжаем беседу?
![]() Давайте товарищи разберемся с тем где и как нам доступен параметр RSSI. Мы уже более или менее разобрались с API, c JSR и т.д. Но вот меня волнует следующее. Есть такая команда HCI_Read_RSSI. Что это за команда такая? Относится ли она с некому API, который может быть доступен или не доступен в каком-то аппарате? Или это команда контроллера? Приведу цитату из одного материала: The link qualities and RSSIs of the Bluetooth devices are measured respectively using the “HCI_Read_ Link_Quality” and “HCI_Read_RSSI” of the HCI commands defined by the “Bluetooth Specification Version 2.0+ EDR” which is the specifications formalized by the Bluetooth Special Interest Group (SIG) in specified in November 2004, Version 2.0 (implementations feature Bluetooth Enhanced Data Rate (FDR) and roach 2.1 Mbit/s). Значит ли это что данная команда будет доступна всегда вне зависимости от того какие API поддерживает данная модель телефона? Это сообщение отредактировал(а) XMbIPb - 10.10.2008, 07:15 |
|||
|
||||
![]() ![]() ![]() |
FAQ раздела лежит здесь! |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java ME (J2ME) | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |