• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

BLE SoC PHY6202

pvvx

Активный участник сообщества
Так эта та же ерунда, что у вас. Просто я адреса по-другому написал.
Адреса I2C 0x18 и 0x19, регистр (0x0f) WHO_AM_I = 0x11.
Начальный дамп:
Код:
    0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
0x 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 11
1x 00 fe 00 ff ff 5c 91 fd 00 03 01 02 00 00 00 00
2x 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20
3x 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
4x 1c 8d 00 6a 69 6e 00 4f 65 38 26 32 1b 12 18 0f
5x 02 03 03 38 44 50 29 00 58 0f 07 00 00 00 00 00
6x 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
7x 11 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00
Такой-же? Так PDF на него и не нашел.
 

pvvx

Активный участник сообщества
Некоторое время назад покупал китайский пульсометр Kyto 2809. Выдавал по всем каналам какую-то ерунду. Взял отвертку - внутри nRF51422. Устаревший, памяти мало. Но выпуска 4й недели 2019г. Взяв nRF SDK v10 (также устаревшую) сколхозил свою прошивку. Теперь и по ANT+ и по BT предается то, что нужно. Плюс бонусом прикрутил сервис DFU OTA, чтоб не раскручивать больше.
Это я к чему. Древнее барахло еще производят, покупают и используют. Нордическая SDK содержит кучу примеров, по которым можно собрать что нужно. И она не такая уж и непонятная. Не без проблем конечно.
В том-то и дело, что элементарных примеров хотя-бы передачи потока со встроенного ADC нет, а nRF чипы на рынке уже вторую пятилетку.
Пример нужен для оценки - пойдет вообще данный чип куда или нет. А без наглядной проверки и примерки - такого чипа для разработки просто не существует - вычеркнут из списка претендентов...
OTA есть у всех - это ныне минимальный стандарт.
А на счет барахла - кому нужно делать то, что уже продается готовое? Какой-то спортивный блогерский интерес?
Но вот простого выключателя с экраном как не было, так и нет... Это единственное во что можно переделать фитнес-часы.
 

greyfox13

New member
У меня нет начального дампа в таком же виде. Могу только или скрин от DSView показать, или из него отчет TXT.
Хотя там "начального" и "конечного" дампа нет. Он все время делает одно и то же. Сначала лезет в регистр 0x2F (читает состояние FIFO - количество сэмплов), потом в регистр 0xA8 (читает сами сэмплы), напоследок что-то пишет в 0x2E, потом "отключается". Потом опять по-новой 2 раза в секунду. WHO_AM_I пока не читал с него. Схема подключения тоже как у Боша, а регистры почти как у STM. Надо искать среди самых дешевых китайских клонов. В другом браслете на TSLR стоит похоже BGA корпус. SDA и SCL не выведены. Потом попробую подключиться.
Делать то-что продается готовое - это зачем перешивал? Потому что нужны были точные замеры RR-интервалов, была надежда что оригинал работает, но он выдавал не весть что (на один удар сердца выдавал, что прошло 4-5, при этом пульс показывал +-5 точность). Раз не заработало с завода, сделал сам. 100% работают дорогие аналоги известных фирм, но у них и цены другие.
 

greyfox13

New member
В том-то и дело, что элементарных примеров хотя-бы передачи потока со встроенного ADC нет, а nRF чипы на рынке уже вторую пятилетку.
Хоть оффтоп. Залез в доки про свой древний nRF51422. Потокового преобразования АЦП нет в принципе, если нужно делается запуском через таймер и отловом данных через прерывание. В примере это как раз и реализовано. В новых чипах может и есть, надо читать.
 

pvvx

Активный участник сообщества
Хоть оффтоп. Залез в доки про свой древний nRF51422. Потокового преобразования АЦП нет в принципе, если нужно делается запуском через таймер и отловом данных через прерывание. В примере это как раз и реализовано. В новых чипах может и есть, надо читать.
По прерываниям на 5..200 кГц :)
 

greyfox13

New member
Читает ужасно медленно (ff прочитало за 2096.556 sec), но писать специальный boot-loader-rd/wr-flasher для единичного чтения китайской прошивки я пока не хочу...
А у меня нормально прочитало. Или скрипт поменяли?
Код:
Start address: 0x11000000, length: 0x00080000 ...
  Time: 323.655 sec
Writes: 1703948 Bytes
 Reads: 2228230 Bytes

Start address: 0x10000000, length: 0x00020000 ...
  Time: 80.372 sec
Writes: 425996 Bytes
 Reads: 557062 Bytes
ROM совпадает полностью, а FF только частично (OTA bootloader наверное).
На ваших часах на фото видна деталька на шлейфе. Это для измерения пульса, та что со светодиодами?
В моем браслете другая реализация. Нанотехнологии, измеряет пульс, давление и SPO2 на любой части тела дистанционно. Можно даже у кошки замерить. Вот фото шлейфа.
IMG_4576.JPG
 

pvvx

Активный участник сообщества
А у меня нормально прочитало. Или скрипт поменяли?
Для меня долго если более 0.2 секунд. Стандартная реакция у человека из трех стадий - восприятие, обработка, действие.
К примеру это время проходит при звонке на старый телефон с трубкой под рукой. От начала звонка и до того как трубка снята. Аналогично и времени реакции водителя (не пьяного :) ).
Если кнопка не реагирует на нажатие, то мысль о молотке приходит уже после 0.2 секунд бездействия устройства...
На ваших часах на фото видна деталька на шлейфе. Это для измерения пульса, та что со светодиодами?
В моем браслете другая реализация. Нанотехнологии, измеряет пульс, давление и SPO2 на любой части тела дистанционно. Можно даже у кошки замерить. Вот фото шлейфа.
В часах ценой примерно до 400 руб с али обычно аналогично - там датчика нет, а стоят светодиоды для подражания.
Но бывают исключения и датчик есть.
 

pvvx

Активный участник сообщества
Скорость чтения зависима от чипа USB-COM-TTL и дров к нему.
 

pvvx

Активный участник сообщества
ROM совпадает полностью, а FF только частично (OTA bootloader наверное).
Я обновлял версию из проги в телефоне на каких-то из тех часов. Может по этому и не совпадает.
Надо было-бы скачать OTA прошивку, поглядев в логах смарта, но как-то оно мне не надо... Носить как часы это чудо я не собираюсь.
 

pvvx

Активный участник сообщества
пытаюсь получить стабильные показания параметров пульсовой волны.
применение БПФ не решает проблему фильтрации скачков и медленных дыхательных волн.
Задача более сложная, чем кажется изначально.
Все датчики запихали в кольцо:
 

greyfox13

New member
Интересно, но командой er512 flash у PHY6202 стирается не полностью. Не стирается часть 11000000-11001FFF.
 

pvvx

Активный участник сообщества
Интересно, но командой er512 flash у PHY6202 стирается не полностью. Не стирается часть 11000000-11001FFF.
Там хранится разметка для bootloader-а.
Эта часть просто так и не пишется. В SDK пытались сделать туда только эксклюзивный доступ из глубин bootloader-а. Но оставили ошибки... и эту область можно хитро писать.
 

greyfox13

New member
Эта область пишется и не хитро, я туда писал простым write. Первую 1000. А вот стирать получается, но как-то криво. А вот область 1000-1FFF уже не просто.
 

pvvx

Активный участник сообщества
Если посмотрите исходники моего "флашера", то там резервной задана
PHY_FLASH_ZONE = 0x4000
и операции стирания (и записи) делаются так:
if offset < PHY_FLASH_ZONE:
offset |= 0x400000
 

pvvx

Активный участник сообщества
После команд записи блоков в этой области появится таблица.
По этому, при записи полной Flash сначала стираете всю особой командой (указано в доках) и пишите часть с 0x4000 адреса, без начала. После записи этой части стираете "начало" и записываете начальный кусок, но со смещением 0x400000, чтобы встроенный в ROM код не волновался. :)
 

pvvx

Активный участник сообщества
Хотя нет, 1000-1FFF у меня тоже пишутся просто так write'ом.
Всё равно область с 0 до 0x4000 (четыре сектора) стандартной блочной командой не записать. При её работе будет дополнена таблица в этих секторах (4-ый сектор) и ваши данные испортит.
Этот кусок пишется только путем перебора адресов в команде записи 32-х биного слова, а не блочной командой записи с контролькой, которая и фиксируется в таблице в 4-ом секторе.
 

pvvx

Активный участник сообщества
Но стереть разметку в 4-ом секторе не сможете. Команды стирания сектора в этой области заблокированы и придется давать смещение на 16 Мб, т.к. там flash дублируется в адресном пространстве, а старшие биты самой flash ( выше 16 Мб ) не передаются.
 

greyfox13

New member
А 6212 в руки не попадалась? У них-то произвольное чтение хоть как-то убрали? Там же есть режим FCT.
 

pvvx

Активный участник сообщества
А 6212 в руки не попадалась? У них-то произвольное чтение хоть как-то убрали? Там же есть режим FCT.
6212 ещё не было. Программа для них та-же и наверняка boot-loader не отличается.
OTA сделали на WebBluetooth? Я пока не утруждался.
 
Сверху Снизу