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

Обсуждение NRF52840

vad7

Active member
Кому вообще сдался опрос ADC окном с дырками?
Датчик, какой-нить, типа протечки сделать.
Пока, правда, китайцы еще не начали делать беконы с nrf52840, только с 52832 есть, а у него дальность хуже.
Screenshot_20200122-231125.png
Аналог, на сколько видно, не выведен, но похоже можно нарыть выводы, если взять без гироскопа.
 

pvvx

Активный участник сообщества
В общем с ADC у nRF52 беда. Каждая версия SDK имеет свои заголовки (названия процедур, параметров).
Такое использовать невозможно.
Arduino от Adafruit содержит часть SDK 0.15.1, но пристыковать что-либо нереально - надо убить неделю проф. программисту, вместо часа на других чипах! А смысл, если уже SDK 0.16.x и там всё опять по новому...
Такие приколы от Nordic. И у него всё так - не могут сформировать простые алго - наверно камни кривые...
Кароче ADC в nRF52 умерло не родившись. Лет через десяток можно будет поглядеть снова - вдруг сделают более менее...
 

pvvx

Активный участник сообщества
Поиск в инет дал те-же результаты. С nRF52 и ADC беда. Нет примеров, одни вопросы.
Если пример и есть, то он из exapmle из SDK и примитивен - ни о каких потоковых замерах разговора не идет. Только частный периодический опрос с дичайшим размером кода (несколько страниц только основных процедур по инициализации ADC)... и патчами с errata...
При этом для сборки примитива используется от нескольких сотен килобайт хидеров, которые различаются в каждой версии SDK.
 

pvvx

Активный участник сообщества
Я не собираюсь тратить своё время (оценка - недели до красноглазика) на разбор что там наплодили и плодят в исходниках SDK Nordic для ADC.
Дайте готовый пример потокового чтения ADC с энергосбережением в Arduino!
 

pvvx

Активный участник сообщества
Наверняка же есть тот, кто положил свою жизнь на разбор потока "кучек г." от Nordic в его SDK! :)
 

pvvx

Активный участник сообщества
Народ на девзоне писал, что примеры нордика сложные и просил простое чтение.
Дали ссылку - andenore/NordicSnippets
Нужен с PPI, он есть в \examples\peripheral\saadc, но не собрать в Adafruit Arduino - не состыковать хидры (не хватило стандартных 30 минут до хоть какой-то сборки и я забросил).
Это andenore/NordicSnippets - собирается
Скетч использует 35780 байт (4%) памяти устройства. Всего доступно 815104 байт.
Глобальные переменные используют 6628 байт (2%) динамической памяти, оставляя 230940 байт для локальных переменных. Максимум: 237568 байт.

, но там одиночный замер.

PS: За время менее пробы сборки \examples\peripheral\saadc собрал на TLSR8266 c DFIFO рабочий тест... Нафиг такой nRF ?
 

vad7

Active member
но не собрать в Adafruit Arduino
Ага, глянул, адафрукты похоже схалтурили, в cores\nRF5\nordic\nrfx\drivers\src\ нет 30 файлов.
А в том примере ссылки на функции из nrfx_saadc.c.
Еще примеры для старого SDK, в новом SDK есть соответствия в integration\nrfx\legacy\, а в адафрукте нету.

Нафиг такой nRF ?
А что делать? В космос с ним не лететь, а для простейших поделок на батарейке CR2032 похоже самое то.
Опять же совместимость с nRF24L01, то есть не надо будет переделывать рабочие устройства.
 

pvvx

Активный участник сообщества
Ага, глянул, адафрукты похоже схалтурили, в cores\nRF5\nordic\nrfx\drivers\src\ нет 30 файлов.
А в том примере ссылки на функции из nrfx_saadc.c.
Еще примеры для старого SDK, в новом SDK есть соответствия в integration\nrfx\legacy\, а в адафрукте нету.
А у других лицензия от Nordic.
Взять более дешевый чип.
В космос с ним не лететь, а для простейших поделок на батарейке CR2032 похоже самое то.
Пока не очень-то. Жрет много.
Опять же совместимость с nRF24L01, то есть не надо будет переделывать рабочие устройства.
nRF24L01 - TX 0 дБ, даже до BT 4.2 не дотягивает. Как он совместится с nRF52?

Ai-Thinker вон наплодил TB-01 и TB-02 (ранее плодил ESP8266 модули)...
 

vad7

Active member
Как он совместится с nRF52?
через Enhanced ShockBurst, без блютуса естественно.
Ai-Thinker вон наплодил TB-01 и TB-02
И чего с ними делать? Mesh?
Примеры через AT команды нашел, но это не для слабой батарейки.
Да и дружественность исходников зашкаливает:
upload_2020-1-25_15-41-23.png
 

vad7

Active member
Пока не очень-то. Жрет много.
Мельком глянул, вроде подходит.
Думал использовать отсыл оповещения раз в день и по срабатыванию компаратора в режиме датчика протечки и раз в 1 - 10 минут в режиме датчика температуры/влажности.
 

azt59

Member
Нужен с PPI, он есть в \examples\peripheral\saadc, но не собрать в Adafruit Arduino - не состыковать хидры (не хватило стандартных 30 минут до хоть какой-то сборки и я забросил).
Это andenore/NordicSnippets - собирается
Скетч использует 35780 байт (4%) памяти устройства. Всего доступно 815104 байт.
Глобальные переменные используют 6628 байт (2%) динамической памяти, оставляя 230940 байт для локальных переменных. Максимум: 237568 байт.

, но там одиночный замер.

PS: За время менее пробы сборки \examples\peripheral\saadc собрал на TLSR8266 c DFIFO рабочий тест... Нафиг такой nRF ?
keil собирает этот пример на сдк 15, прошил, пишет в uart по 5 замеров. Дело в принципиальном следовании лицензии? для оценки качества adc можно и ломаным кейлом собрать, а уж если чтото в продакшн то там уж и соблюдать требования
 

pvvx

Активный участник сообщества
keil собирает этот пример на сдк 15, прошил, пишет в uart по 5 замеров. Дело в принципиальном следовании лицензии? для оценки качества adc можно и ломаным кейлом собрать, а уж если чтото в продакшн то там уж и соблюдать требования
Проблемс лицензии Nordic в том, что исходники не выложить в паблик с патченными исходниками либ.
Обход этого только у Adafruit Arduino. Внутренние лицензии замещены заглавной - adafruit/Adafruit_nRF52_Arduino
Как им это удалось - не знаю. :)
 

pvvx

Активный участник сообщества
Мельком глянул, вроде подходит.
Думал использовать отсыл оповещения раз в день и по срабатыванию компаратора в режиме датчика протечки и раз в 1 - 10 минут в режиме датчика температуры/влажности.
Одиночный "отсыл" не принимает никто. Тут нужен какой либо шлюз Mesh/Zigbee следящий только за данным BLE вечно, либо никто из стандартных не примет - всё потеряется.
Для примера возьмите ПО обнаружения маяков BLE. Потери пачками даже при 1 метре от них (коллизии и прочее на момент передачи маяка и приемник вечно не может слушать)... Для маяков это нормально, т.к. они вечно повторяют одно и то-же...
Само соединение BLE - это цельный процесс и там мкА не отделаться. Можно вечно держать соединение (с шагом до 3-х секунд из-за расхождений кварцев), но тогда о deep-sleep можно забыть.
 

pvvx

Активный участник сообщества
через Enhanced ShockBurst, без блютуса естественно.


И чего с ними делать? Mesh?
Примеры через AT команды нашел, но это не для слабой батарейки.
Да и дружественность исходников зашкаливает:
Посмотреть вложение 8707
Китайский - ныне второй технический язык - привыкайте :p
SDK от Telink нормальное к ним. Никакой проприетаршины для сборки = GCC и Eclipse.
 
Сверху Снизу