Клуб любителей телефонов Siemens (BenQ-Siemens)
Главная | Телефоны | Барахолка | Файлы | Аксессуары | Мелодии | Игры для Siemens | Графика | Документация | в закладки |
  ПравилаПравила FAQ по Siemens (BenQ-Siemens)FAQ ПоискПоиск
 
 РегистрацияРегистрация ВходВход 

i2c. Исследование.
На страницу 1 2 3 4 5 6
Новая тема Написать ответ Форумы Все для телефонов Siemens (BenQ-Siemens) » Исследование ПО телефонов Siemens [ Версия для печати ]
Предыдущая тема :: Следующая тема  
Автор Сообщение
Первое сообщение темы
СообщениеДобавлено: Вс Авг 29, 2010 02:54    Заголовок сообщения: i2c. Исследование. Цитата

Немного истории... когда то давно контора филипс, он же типерь NXP для своих телевизоров придумали внутрисхемную двухпроводную последовательную шину для управления той горой чипов что они ставили на платы, многие оценили эту идею и вот мы имеем в нашем любимом симаке одну из вариаций - TWI (Two Wire Interface). В рядовом нсг есть один хардверный мастер порт (на схеме I2C) на котором висит диалог и радио в е71/цл61 и один софтверный мастер порт реализованный на GPIO (на схеме он обозначен I2C_2) к которому подключена камера. У сг немного иначе тк камера подключена к и2ц порту эпсона до которого чтобы добраться нужно сначала по спи заслать данные в эпсон, в случае с диалогом всё так же как и в нсг. кто спросит зачем диалог ещё по спи подключен к камню сразу отвечаю что не знаю, если кто нить имеет какую нить инфу про спи и диалог поделитесь Wink По поводу софтверного порта ничего не скажу так же как и про назначание вывода PM_INT (Power Management Interrupt) хотя идеи есть, а вот про хардверный есть кое что интересное icon_yes

1. Железо

все чипы подключаются параллельно по схеме монтажного и, скорость шины 400кГЦ, адресация 7 бит

2. Управление

а) через прошивку - разная структура у сг и нсг, пользуем дефайн
б) напрямую - только для нсг

3. Адреса

Диалог 0x31h
Радио 0x10h

4. Профит

Профит заключается в том что мы можем спокойно в наглую управлять диалогом и радио (а паятели ещё чем нить) как нам вздумается, НО прошивка тоже будет управлять и где то даже мешать нам, поэтому если всё же твёрдо решили что прошивочные ф-ии управления нам не нужны и мы можем справиться со всем сами тогда ищем что нам мешает и прибиваем патчем))) да, патчей таких пока ещё нет так что...

5. Конкретнее

В составе диалога кроме управляемых линейных стабилизаторов, пары DC/DC конверторов и пары LED драйверов есть такие вещи как: аналаговый аудио микшер, цифровой аудио микшер, усилитель наушников, усилитель динамика, линейный вход, два микрофонных входа, цап, ацп, вибра контрол... есть ещё keyklick/tone генератор (щелчки кнопок, srt мелодии, сервисные сигналы, звучки дозвона etc.) но как оно работает пока толком не ясно icon_confused2 В случае с подсветкой/громкостью/виброй можно перехватить управление и очень плавно без морганий и прочего делать что захочется

6. Как юзать во благо сименсовода

Определяемся с платформой мобилы и как будим управлять напрямую или через прошивку, проверяем в свилиб.аш наличие новой структуры которая с дефайном для сг/нсг для управления через прошивку или добавляем в проэкт асм файлик для управления напрямую, ну а далее понятно... Спросом пользуются эльфы вольюм/баклайт контрол для плавного изменения громкости/яркости подсветки, для е71/цл61 пригодится плюшка для включения радио на динамик с воткнутой гарнитурой, у кого дохлая стекляха на разъёме телефона и не определяется гарнитура пригодится плюшка для переключения звука на гарнитуру, на е71/цл61 пригодится плюшка для управления SLI_LED, кому то вибратор, кому то аудиомикшеры для переключения моно/стерео... у сг микрофонные входы и ацп для всяких HQ диктофонов...

7. Полезная инфа

Управление напрямую для NSG
Аналаговый микшер. Описание
Структурная схема диалога
SLI LED описание
И2ц регистри тестер (c) alfinant x85 only!
структура сг

8. C.R.I.

Автор (c) alfinant
Фиксы сг (r) Dimadze
Идея моя...

****** старый первый пост ******

Пришло время разобраться с и2ц телефона, а так же всех устройствах что на ней висят. Сразу скажу что раскопки начаты на е/ел71 и чтобы ознакомиться с первыми результатами нужно обновить бф в телефоне патчем и свилиб.аш в папке инклюда иара. Первоначинателем был тов. alfinant. Огромное спасибо за ценные наводки и подсказки. Итак, что мы имеем: телефон на пмб8876, два порта и2ц и два устройства на ней (в случае с е71 три, прибавляется фм радио). На первом порту висит диалог и радио, на втором камера. Камеру мы пока не трогаем, а вот с диалогом интересней. Пример использования и2ц от автора даёт возможность считать все 96 регистров диалога, а мои маленькие примерчики как ими управлять. Сейчас раскопано всего несколько регистров, но думаю что раскопать остальные не так сложно будет. Адрес диалога и структура регистров одинакова на всех моделях, это делает метод управления по и2ц диалогом универсальным Smile в архиве pa.zip примеры вкл/выкл усилителей динамика и наушников, в архиве i2c_test.zip примеры от автора по моделям (запускаем нужный при вкл плеере, слышим резко подскачившую громкость, вырубаем плее, идём в корень диска 0 и видим бинарный дамп регистров), в архиве i2c_test_src.zip мои исходники примера записи значения в регистр+обновлённая свилиб.аш для правильной компиляции, в файле Dialog register map.txt уже раскопанные регистры. Вобщем смотрим/обсуждаем/предлагаем и т.д.

Зы тестилось на е71 и ел71 Smile кста, мой первый эльф

****** ******

feanor
Мастер
Мастер
Популярность: +37 (47)
Имя: Сергей
Возраст: 30
С нами с: 15.04.2007
Сообщений: 185
Откуда: Архангельск
Модель телефона: S65/58

1/15 СообщениеДобавлено:Пн Сен 27, 2010 13:47   Заголовок сообщения:
Цитата

Цитата:
есть же функции управления подсветкой без моргания

RamScreenBrightness или как там её.

_________________
S65/58, 2*CX70/56, S75/47, A35, C25, полумертвая EL71/45.
^ Вверх ^
Профиль Личное ICQ
tick
Глав. Хелпер
Глав. Хелпер
Популярность: +136 (166)
Имя: Евгений

Возраст: 33
С нами с: 25.05.2005
Сообщений: 785
Откуда: Литва, Висагинас
Модель телефона: Nokia C5-00

2/15 СообщениеДобавлено:Вт Сен 28, 2010 00:27   Заголовок сообщения:
Цитата

Люди добрые, а я кажется нашёл как выключается экран симака с возможностью его пробуждения без перезагрузки. Похоже что там где то в контроллере есть ключ на получения определённых данных на отрисовку, что вводят экран в сон.
Тут я подробнее описал как я это сделал и мне кажется любой может это повторить
http://forum.allsiemens.com/viewtopic.php?t=61519

Если я несу что-то не то, не злитесь, я по железной части телефона полный нуль.

_________________
C30, 2xС45v50, C65v12 -> SL65v53, С75v11 -> C75v22, 2xCX65v12 -> 2xCX70v56, M65v50 -> CX70v56, S65v58 t-mobile -> Nokia C5-00 the end
^ Вверх ^
Профиль Личное
tick
Глав. Хелпер
Глав. Хелпер
Популярность: +136 (166)
Имя: Евгений

Возраст: 33
С нами с: 25.05.2005
Сообщений: 785
Откуда: Литва, Висагинас
Модель телефона: Nokia C5-00

3/15 СообщениеДобавлено:Вс Янв 02, 2011 01:56   Заголовок сообщения:
Цитата

Всех с новым годом!Smile

Может всё таки есть иследования по динамическому отключению и включению экрана?

Экономия батарейки была бы приличная.

_________________
C30, 2xС45v50, C65v12 -> SL65v53, С75v11 -> C75v22, 2xCX65v12 -> 2xCX70v56, M65v50 -> CX70v56, S65v58 t-mobile -> Nokia C5-00 the end
^ Вверх ^
Профиль Личное
PICAS
Студент
Студент
Популярность: +18 (36)
Имя: СТАС

Возраст: 29
С нами с: 06.08.2009
Сообщений: 229
Откуда: Москва
Модель телефона: CX70sw56+E71sw45+EL71sw45

4/15 СообщениеДобавлено:Вс Янв 02, 2011 20:08   Заголовок сообщения:
Цитата

ЕЛКА:
REG: 06/86H DAT: 1C/1DH // гаснет дисплей, потом через некоторое время серые полоски на экране, при нажатии на кнопку - очищается экран и ошибка карты
REG: 14H DAT: 3B/40-4СH etc. // вырубается подсветка

_________________
Мозг - мой второй любимый орган. =)
^ Вверх ^
Профиль Личное Сайт ICQ Фото
PICAS
Студент
Студент
Популярность: +18 (36)
Имя: СТАС

Возраст: 29
С нами с: 06.08.2009
Сообщений: 229
Откуда: Москва
Модель телефона: CX70sw56+E71sw45+EL71sw45

5/15 СообщениеДобавлено:Вс Янв 02, 2011 20:58   Заголовок сообщения:
Цитата

tick писал(а):
Люди добрые, а я кажется нашёл как выключается экран симака с возможностью его пробуждения без перезагрузки. Похоже что там где то в контроллере есть ключ на получения определённых данных на отрисовку, что вводят экран в сон.
Тут я подробнее описал как я это сделал и мне кажется любой может это повторить
http://forum.allsiemens.com/viewtopic.php?t=61519

Если я несу что-то не то, не злитесь, я по железной части телефона полный нуль.



Т.Е. просто белый экран? а ты пробывал в этот момент папуасом выводить тестовые картинки? а то я давно уже сделал чтоб на сх70 не рисовалось на дисплее ничего, правда тест картинки папуасом все же рисуются...

_________________
Мозг - мой второй любимый орган. =)
^ Вверх ^
Профиль Личное Сайт ICQ Фото
tick
Глав. Хелпер
Глав. Хелпер
Популярность: +136 (166)
Имя: Евгений

Возраст: 33
С нами с: 25.05.2005
Сообщений: 785
Откуда: Литва, Висагинас
Модель телефона: Nokia C5-00

6/15 СообщениеДобавлено:Пн Янв 03, 2011 16:09   Заголовок сообщения:
Цитата

PICAS, да то была паника)
Только на дисплеях выше чем C65 наблюдался эффект сливания цветов в одну массу при некоторых окрасках.
У С65 экран оставался не изменный, т.е. другая матрица - другое поведение.

А вот нормальное програмное отключение так и не получилось.

_________________
C30, 2xС45v50, C65v12 -> SL65v53, С75v11 -> C75v22, 2xCX65v12 -> 2xCX70v56, M65v50 -> CX70v56, S65v58 t-mobile -> Nokia C5-00 the end
^ Вверх ^
Профиль Личное
Dimadze
Реаниматор
Реаниматор
Популярность: +70 (118)
Имя: Диман
Возраст: 30
С нами с: 04.03.2009
Сообщений: 656
Откуда: ..\Поволжье\Астрахань\..
Модель телефона: Sie M65,CF75,CX75,E71,HTC Mzrt

7/15 СообщениеДобавлено:Пн Фев 07, 2011 16:01   Заголовок сообщения:
Цитата

Собственно не надо долго извращатся чтобы вырубить экран, при этом никакой папуас ничего не может вывести
Про BFC-команды слышали? Вот выдрал из них прошивочне процедуры:

Код:
 
        //CX75/25
        defadr  DisplayGetCount, 0xA080D620
        defadr  DisplayGetType, 0xA080D540

        defadr  DisplayDeactivate, 0xA080CCD0

        defadr  DisplayRedrawDisable, 0xA080CC84
        defadr  DisplayRedrawEnable, 0xA080CC54
       
        defadr  DisplayGetInfo, 0xA080CE88



Код:
 
  extern int DisplayDeactivate(int dnum);
  extern int DisplayRedrawEnable(int dnum);
  extern int DisplayRedrawDisable(int dnum);
  extern int DisplayGetType(int dnum);
  extern int DisplayGetCount();
 
  extern int DisplayGetInfo(int dnum, int *w_screen, int *h_screen, int *unk);


Токо как включить обратно я хз)))))

_________________
Сё шо нажито непосильным трудом, сё же похибло: три кинокамеры, три махнитофона, куртки замшевых - три.
^ Вверх ^
Профиль Личное Email Сайт ICQ
Ganster
Мастер
Мастер
Популярность: +52 (102)
Имя: Леха

Возраст: 33
С нами с: 13.02.2006
Сообщений: 454
Откуда: Украина, Северодонецк
Модель телефона: Orange San Francisco

8/15 СообщениеДобавлено:Пн Фев 07, 2011 18:07   Заголовок сообщения:
Цитата

Да закрасить его белым, и заюзать DisplayRedrawDisable(int dnum);
Только вот я не понял кто такой dnum? Display Number?

_________________
Motorola M3588-сгорел передатчик :( -> A65 sw17(разбил) -> Siemens S75 sw47 + E71Asw45 ElfLoader 3.0 -> Orange San Francisco :P
^ Вверх ^
Профиль Личное Сайт ICQ
Dimadze
Реаниматор
Реаниматор
Популярность: +70 (118)
Имя: Диман
Возраст: 30
С нами с: 04.03.2009
Сообщений: 656
Откуда: ..\Поволжье\Астрахань\..
Модель телефона: Sie M65,CF75,CX75,E71,HTC Mzrt

9/15 СообщениеДобавлено:Пн Фев 07, 2011 18:49   Заголовок сообщения:
Цитата

А смысл то его так "отключать" тогда? Very Happy
Отключение же ради батарейки), а не ради визуального восприятия)
dnum - да, номер дисплея, то есть если у нас один дисплей то dnum = 1;

Если допустим у нас у нас CF75 то dnum = 1 это главный экран, dnum = 2 - внешний

_________________
Сё шо нажито непосильным трудом, сё же похибло: три кинокамеры, три махнитофона, куртки замшевых - три.
^ Вверх ^
Профиль Личное Email Сайт ICQ
kostett
Новичок
Новичок
Популярность: +2 (32)
Имя: Constantin

Возраст: 25
С нами с: 05.08.2009
Сообщений: 146
Откуда: Российская Федерация, Архангельск
Модель телефона: %Сцыманс%

10/15 СообщениеДобавлено:Сб Мар 19, 2011 13:34   Заголовок сообщения:
Цитата

идея: прикрутить к сголдам фонарик по и2ц для удобного управления эльфом. Что для этого потребуется?
_________________
^ Вверх ^
Профиль Личное Email ICQ
Ganster
Мастер
Мастер
Популярность: +52 (102)
Имя: Леха

Возраст: 33
С нами с: 13.02.2006
Сообщений: 454
Откуда: Украина, Северодонецк
Модель телефона: Orange San Francisco

11/15 СообщениеДобавлено:Сб Мар 19, 2011 14:35   Заголовок сообщения:
Цитата

Dimadze писал(а):
А смысл то его так "отключать" тогда? Very Happy
Отключение же ради батарейки), а не ради визуального восприятия)

Для тех кто в танке, LCD сам по себе вообще практически ничего не потребляет, больше всего жрет его подсветка => отключив перерисовку и подсветку, отключится все что жрет что либо со стороны дисплея)

_________________
Motorola M3588-сгорел передатчик :( -> A65 sw17(разбил) -> Siemens S75 sw47 + E71Asw45 ElfLoader 3.0 -> Orange San Francisco :P
^ Вверх ^
Профиль Личное Сайт ICQ
Маришка
Реаниматор
Реаниматор
Популярность: +101 (211)

Возраст: 29
С нами с: 06.01.2008
Сообщений: 1331
Откуда: RnD
Модель телефона: iPhone 12 Pro Max

12/15 СообщениеДобавлено:Вт Авг 16, 2011 07:40   Заголовок сообщения:
Цитата

Управление SLI Led по i2c
Идея - Gudvin, ковыряние регистров - я, работает только на E71 и CL61

Внимание! На EL71 не работает из-за другой схемотехнической реализации

Кратко о сабже: На телефонах E71 и CL61 светодиод SLI Led подключен напрямую к Dialog'у вывод M7 "LED1" поэтому им можно легко управлять без костылей.
Принцип примерно такой: Отключаем стандартное управление SLI Led патчем (да да, был такой на просторах форумов) и ваяем небольшой, может быть даже безGUIевый ельф опираясь на инфу ниже Smile Бонусом получим тотальный контроль подсветки как клавиатуры так и дисплея (на EL71 работает)

Собственно немножко о нужных регистрах:

0x12 Display Backlight Brightness
0x13 Keypad Backlight Brightness
0x14 Led Control
0x15 1st Frame
0x16 2nd Frame
0x17 3rd Frame
0x18 4th Frame
0x19 Blink Pause

Теперь о том как всё работает:

В регистрах 0x12 и 0x13 выставляем яркость свечения, работает только когда в регистре 0x14 включены соответственно LIGHT_PWM1 (LCD) и LIGHT_PWM2 (KPD). Выставлять по аналогии 0x00 0%, 0x64 100%

В регистре 0x14 управление производится вот так:

Код:


Внимание тут бинарное счисление, для получения HEX значений для вписывания их в исходник на C# конвертируем калькулятором

0 0 0 0 0 0 0 0 - соответственно бит7 -> бит0

REG 0x14
=================================================

0 0 0 0 0 0 0 0 - Light off

0 0 0 0 0 0 0 1 - Enable SLI Led

0 0 0 0 0 0 1 1 - Enable SLI Led and Blink Timers (они же Frames)

0 0 0 0 1 0 0 0 - Enable LCD Backlight

0 0 0 1 0 0 0 0 - Enable KPD Backlight



Надеюсь не нужно объяснять что для того чтобы одновременно активировать всё нужно установитm сразу все нужные биты в единицу

Биты 7, 6, 5 и 2 пока не разобрала зачем нужны, но предположительно для неиспользуемого вывода LED2 Dialog'а

О регистрах 0x15...0x18:

Тут всё просто. Вписывая разные значения устанавливаем количество коротких вспышек (от ниодной до восьми) длительность их измерить не могу, нет осциллографа. Устанавливать так: допустим нам нужно горит_не горит_горит_не горит_не горит_не горит_горит_горит что соответствует бинарному числу 10100011 или в HEX 0xA3, думаю понятно.

И, наконец, о паузах. Регистр 0x19 может принимать значения от 0x00 до 0x03 что соответствует 0 секунд...3 секунды. Эти секунды влияют на паузу между каждыми четырьмя фреймами подряд. тоесть выставив в регистрах 0x15...0x18 по 0x01 а в REG 0x14 0x1B и REG 0x19 0x03 получим четыре вспышки_пауза 3 сек_4 вспышки и т.д. по кругу Very Happy при работающей подсветке клавиатуры и дисплея.

З.Ы. надеюсь кому нибудь пригодится...

_________________
протофуллы
мои последние координаты http://vk.com/marielonelygirl
^ Вверх ^
Профиль Личное Email Сайт ICQ
Маришка
Реаниматор
Реаниматор
Популярность: +101 (211)

Возраст: 29
С нами с: 06.01.2008
Сообщений: 1331
Откуда: RnD
Модель телефона: iPhone 12 Pro Max

13/15 СообщениеДобавлено:Вт Авг 16, 2011 07:47   Заголовок сообщения:
Цитата

кому нужно описание других регистров спрашивайте, я разобрала около 60% уже
_________________
протофуллы
мои последние координаты http://vk.com/marielonelygirl
^ Вверх ^
Профиль Личное Email Сайт ICQ
Dimadze
Реаниматор
Реаниматор
Популярность: +70 (118)
Имя: Диман
Возраст: 30
С нами с: 04.03.2009
Сообщений: 656
Откуда: ..\Поволжье\Астрахань\..
Модель телефона: Sie M65,CF75,CX75,E71,HTC Mzrt

14/15 СообщениеДобавлено:Ср Авг 17, 2011 11:08   Заголовок сообщения:
Цитата

давай, давай, мне по подсветке надо, а то не верно написано, или не корректно, еще есть аппаратное плавное гашение подсветки, всё делал через свой самописный драйвер по и2ц
---
Отправлено через WAP2.0 - http://waping.ru
^ Вверх ^
Профиль Личное Email Сайт ICQ
Маришка
Реаниматор
Реаниматор
Популярность: +101 (211)

Возраст: 29
С нами с: 06.01.2008
Сообщений: 1331
Откуда: RnD
Модель телефона: iPhone 12 Pro Max

15/15 СообщениеДобавлено:Ср Авг 17, 2011 13:38   Заголовок сообщения:
Цитата

Dimadze, что именно я не корректно описала? касаемо сли всё так и есть, плавных режимов у него я не нашла, только моргания... что насчёт подсветки расскажи где там плавное гашение то? из раскопанных есть часть что отвечает за DAC и PA, но не совсем понятно как работает и2эс, а точнее синхронизация и ворд_селект... ковырялась я на цл61, а там как известно изменение состояния некторых регистров запрещено (моментально сбрасывается в исходное предусмотренное прошей)
Код:
REGN_Description_Sets

0x23_PASIC_Overtemperature (not a internal termometer)

0x40 0x00...0x3F
0x41 0x00...0x3F
0x42 SpeakerPA 0x00-off 0x01-on 0x02-HandsFree(?)
0x43 HahdsFreePA 0x00-off 0x01-on
0x44 0x00...0xFF
0x45 0x00...0x3F
0x46 0x00...0x7F
0x47 Vibra 0x00...0x64-Vibra Power

0x48 0x00...0xFF
0x49 0x00...0xFF
0x4A 0x00...0x0F
0x4B 0x00...0xFF
0x4C 0x00...0xFF
0x4D 0x00...0x7F
0x4E 0x00...0x0F
0x4F Mixer Mode Speaker 0x00...0x0F

0x50 Speaker Volume 0xBF-min...0x80-max
0x51 0x35 (Speaker0x1A)
0x52 Mixer Mode SP_Play 0x00...0xFF
0x53 HandsFree Volume 0xBF-min..0x80-max
0x54 0x14 (Speaker 0x28)
0x55 Mixer Mode HandsFree
0x56 0x00...0x0F
0x57 Mixer Mode Call ??? 0x00...0xFF

0x58 0x00...0x07
0x59 Freq i2s??? 0x00...0xFF
0x5A Sync i2s??? 0x00...0x0F
0x5B 0x70...0x73 (Sync i2s Speaker??? 0x00...0xFF)
0x5C ;Empty???
0x5D ;
0x5E ;Empty, not exist
0x5F ;


так же регистры с 0x30 до 0x3F походу вообще не используются (а в разных реализациях twigo и dialog так совсем имеют дефолтное состояние 0xFF и 0x00 соответственно). первые 32 регистра отвечают за управление линейными стабилизаторами и собакой, некторые так же защищены от записи. а вообще по хорошему нужно смотреть дебаггером или подключать диалог к мк и транслируя им комманды с ком порта следить за его поведением. гадать можно бесконечно

_________________
протофуллы
мои последние координаты http://vk.com/marielonelygirl
^ Вверх ^
Профиль Личное Email Сайт ICQ
Перейти:  
Новая тема Написать ответ Форумы Все для телефонов Siemens (BenQ-Siemens) » Исследование ПО телефонов Siemens Часовой пояс: GMT + 3
На страницу 1 2 3 4 5 6



AllNokia.ru - Клуб Nokia

» телефоны nokia » темы для nokia » игры для nokia
Проблемы с Nokia? Иди на All Nokia! » программы для nokia » прикольные смс » прошивки nokia