Модули E73-2G4M04S на базе nRF52832

a5021
Offline
Зарегистрирован: 07.07.2013

Народ в инстаграмме хвастается:

 

a5021
Offline
Зарегистрирован: 07.07.2013

Прошлый раз пришло запаянным в пакетик, теперь в виде куска ленты:

a5021
Offline
Зарегистрирован: 07.07.2013

Фотки с mysensors.org

 

a5021
Offline
Зарегистрирован: 07.07.2013

Еще один хак фитнесс-браслета на nRF5.

 

Чип, правда, 51822, но любопытному глазу там есть за что зацепиться и в рамках данной темы.

a5021
Offline
Зарегистрирован: 07.07.2013

 Дошли руки до тестов режима пониженного энергопотребления. В режиме "System On Idle" получились вот такие цифры:

System On Idle -- это режим, когда ядро выключено, основной генератор тактовой частоты выключен, периферия выключена и работает только блок RTC, от которого, при надобности, происходит пробуждение. В моем случае RTC тактируется от внешнего 32кгц кварца. Не совсем понятно, но с внешним тактированием потребляет меньше, чем с внутренним, хотя по даташиту должно быть наоборот.

Цифры на картинке меня откровенно порадовали. Когда я экспериментировал с режимами пониженного энергопотребления на STM32F030, то там минимум потребления, который удалось получить, был где-то в районе 3-4мка. Это при том, что ядро там Cortex-M0, а тут M4+FP и пробуждаясь STM32 делает себе полный резет, а тут по-нормальному, продолжает с той точки, где засыпал.

Прикрутил  BME280 и изобразил что-то вроде метеодатчика. Правда, вывод тут не в эфир, а в последовательный порт. По логам терминала можно оценить точность времени пробуждения:

4:38:08.637> 24.27C,   100148.01 Pa / 751.18 mmHg,   60.95%  D/I = 8/2
4:39:08.637> 24.29C,   100165.03 Pa / 751.31 mmHg,   60.93%  D/I = 8/4
4:40:08.637> 24.27C,   100152.68 Pa / 751.22 mmHg,   60.68%  D/I = 8/6
4:41:08.637> 24.21C,   100160.12 Pa / 751.27 mmHg,   60.45%  D/I = 8/0
4:42:08.638> 24.24C,   100158.74 Pa / 751.26 mmHg,   59.67%  D/I = 8/2
4:43:08.638> 24.24C,   100161.48 Pa / 751.28 mmHg,   59.22%  D/I = 8/4
4:44:08.638> 24.25C,   100161.22 Pa / 751.28 mmHg,   59.32%  D/I = 8/6

Левая колонка -- это часы компьютера. Можно сказать, что точность неплохая. Кварц он и есть кварц.

a5021
Offline
Зарегистрирован: 07.07.2013

Допилил код автономного беспроводного метеодатчика на nRF52832 + BME280. Прототип представляет из себя беспаечную макетку, куда воткнута плата с E73, BME280 на проводах и отсек с двумя АА батарейками в качестве электропитания.  Впоследствии ее легко можно будет превратить в законченное решение. Конструкция довольно простая, но характеристиками обладает довольно неплохими.

К настоящему времени прототип уже более двух суток передает каждые 25 сек. пакет данных с актуальными температурой, давлением и влажностью. Работает стабильно.

5:08:01.465> 707E970098090000DFEA0000:  24.56C,     99283.04 Pa / 744.69 mmHg,     60.12%
5:08:26.466> 9D7C970099090000BDEA0000:  24.57C,     99278.37 Pa / 744.66 mmHg,     60.09%
5:08:51.466> 507E97009A0900009BEA0000:  24.58C,     99282.72 Pa / 744.69 mmHg,     60.05%
5:09:16.466> 078097009B09000092EA0000:  24.59C,     99287.11 Pa / 744.72 mmHg,     60.05%
5:09:41.466> 537D97009D09000066EA0000:  24.61C,     99280.19 Pa / 744.67 mmHg,     60.00%
5:10:06.466> 337D97009F09000046EA0000:  24.63C,     99279.87 Pa / 744.67 mmHg,     59.97%
5:10:31.466> 597F97009F09000023EA0000:  24.63C,     99285.37 Pa / 744.71 mmHg,     59.93%
5:10:56.466> C57C9700A0090000F5E90000:  24.64C,     99278.77 Pa / 744.66 mmHg,     59.89%
5:11:21.466> 857C9700A3090000D7E90000:  24.67C,     99278.13 Pa / 744.66 mmHg,     59.86%
5:11:46.466> EA7D9700A4090000AAE90000:  24.68C,     99281.70 Pa / 744.68 mmHg,     59.81%
5:12:11.466> 987D9700A30900009DE90000:  24.67C,     99280.88 Pa / 744.68 mmHg,     59.80%

Приемник -- nRF24L01 под управлением STM8S. Такая конструкция имелась уже в готовом виде, т.ч. пока решил использовать именно ее. Приемник и передатчик расположены в разных комнатах, разделенных ж/б стеной. Прямой видимости нет. Передача ведется на 99 канале, выпадений пакетов пока особо не видно. Лог большой, пробежался глазами в нескольких местах, никакого криминала не обнаружил.

Код пока существует, как проект в KEIL-е. Собираюсь перебросить в Arduino IDE и как закончу выложу здесь.

b707
Offline
Зарегистрирован: 26.05.2017

a5021 пишет:

К настоящему времени прототип уже более двух суток передает каждые 25 сек. пакет данных с актуальными температурой, давлением и влажностью. Работает стабильно.

=== было бы интересно видеть в данных еще и изменение напряжения батарейки, чтобы оценить. сколько девайс реально потребляет в этом режиме

a5021 пишет:

Код пока существует, как проект в KEIL-е. Собираюсь перебросить в Arduino IDE и как закончу выложу здесь.

любопытно глянуть

a5021
Offline
Зарегистрирован: 07.07.2013

b707 пишет:
было бы интересно видеть в данных еще и изменение напряжения батарейки, чтобы оценить. сколько девайс реально потребляет в этом режиме

На 2 х АА изменения очень медленно происходят, т.ч. ничего там не увидеть. У меня в уличном датчике с августа прошлого года напряжение снизилось на 10мв. Причем, это может и киснущий контакт в батарейном отсеке оказаться. Для оценки потребления я ионисторы пользовал. 0.66F рзряжается больше суток.

Вобщем, прикрутил измерение VDD. Теперь вот так выглядят данные на приемнике.

6:22:10.425> 3F839700140A0000E2EC0000AC0A:  25.80C,     99295.35 Pa / 744.78 mmHg,     60.64%, V_BAT = 2.732
6:22:35.425> 28849700040A0000F0ED0000AC0A:  25.64C,     99297.68 Pa / 744.80 mmHg,     60.91%, V_BAT = 2.732
6:23:00.425> 4F8497002A0A00003BEA0000AC0A:  26.02C,     99298.07 Pa / 744.81 mmHg,     59.96%, V_BAT = 2.732
6:23:25.425> 738197003C0A00008CE80000AB0A:  26.20C,     99290.75 Pa / 744.75 mmHg,     59.53%, V_BAT = 2.731
6:23:50.425> FE8197004F0A000062E60000AA0A:  26.39C,     99292.14 Pa / 744.76 mmHg,     58.97%, V_BAT = 2.730

АЦП у nRF52832 тоже довольно интересный. Сам умеет оверсемплинг делать. Т.е. говоришь ему, что измерь вот по этой линии, скажем, 64 раза и выдай мне среднее. Или не просто среднее, а еще и дополнительный разряд или два. Из тех семейств микроконтроллеров, с которыми приходилось сталкиваться, нигде такого не встречал, хотя идея, что называется, на поверхности лежит.

Цитата:
любопытно глянуть

Попозже сюда закину.

b707
Offline
Зарегистрирован: 26.05.2017

a5021 пишет:

На 2 х АА изменения очень медленно происходят, т.ч. ничего там не увидеть. У меня в уличном датчике с августа прошлого года напряжение снизилось на 10мв.

оффтоп, но что же там в датчике?

0.01в снижения за год - это батареек должно бы хватить лет на двадцать, если б не саморазряд

a5021
Offline
Зарегистрирован: 07.07.2013

В том датчике присутствуют: stm32f030f4p6, повышайка (включается, когда батарейки ниже 2 вольт уходят),  BMP180, SI7021, BH1750 и NRF24L01+. Приблизительно измерял ионистроным способом среднее потребление, выходило 22мка * ч, т.е. сто тысяч часов от двух алкалиновых АА -- это больше 11-и лет. Причем, эта цифра была получена способом, где все  неточности, допуски и пр. трактовались исключительно в пользу повышения потребления и уменьшения времени работы.

По сравнению с той моей конструкцией 2016 года, похожий прибор на nRF52832 позволит снизить энергопотребление кратно. Пока что я вижу, что он точно выигрывает по ключевым показателям энергопотребления не меньше 2 раз, но на круг должно выходить и больше.

Современные алкалиновые батарейки имеют довольно низкие значения саморазряда и производители таких батарей сегодня дают 10 лет гарантийного срока хранения. Т.е. за десять лет хранения баратейка вследствие саморазряда не уйдет ниже номинала.

При таких показателях энергобаланса, одного, максимум -- двух, комплектов батарей формата АА должно хватить на весь срок жизни устройства.

a5021
Offline
Зарегистрирован: 07.07.2013

Добавил еще температуру с кристалла МК. Итого, пакет данных = 10 байт, периодичность раз в минуту:

8:00:02.885> 280A97143C08401CAF0A:  21.08C / 20C, 98985.36 Pa / 742.46 mmHg, 72.32%, V_BAT = 2.735
8:01:02.885> 930897143408601CB10A:  21.00C / 20C, 98981.31 Pa / 742.43 mmHg, 72.64%, V_BAT = 2.737
8:02:02.886> 5F0897143208831CAF0A:  20.98C / 20C, 98980.79 Pa / 742.43 mmHg, 72.99%, V_BAT = 2.735
8:03:02.886> 170697143E08301CB20A:  21.10C / 20C, 98974.95 Pa / 742.38 mmHg, 72.16%, V_BAT = 2.738
8:04:02.886> D60697143D084C1CB10A:  21.09C / 20C, 98976.86 Pa / 742.40 mmHg, 72.44%, V_BAT = 2.737
8:05:02.886> 1F0997143208641CB00A:  20.98C / 20C, 98982.71 Pa / 742.44 mmHg, 72.68%, V_BAT = 2.736
8:06:02.886> 470797143C087C1CB00A:  21.08C / 20C, 98977.99 Pa / 742.40 mmHg, 72.92%, V_BAT = 2.736
8:07:02.886> AF0897144F083F1CB00A:  21.27C / 20C, 98981.59 Pa / 742.43 mmHg, 72.31%, V_BAT = 2.736
8:08:02.886> 270997144408581CAF0A:  21.16C / 20C, 98982.79 Pa / 742.44 mmHg, 72.56%, V_BAT = 2.735
8:09:02.886> EC0A97154E08471CAE0A:  21.26C / 21C, 98987.32 Pa / 742.47 mmHg, 72.39%, V_BAT = 2.734
8:10:02.887> E20797154208551CB00A:  21.14C / 21C, 98979.54 Pa / 742.42 mmHg, 72.53%, V_BAT = 2.736

 

a5021
Offline
Зарегистрирован: 07.07.2013

Энтузиасты продолжают извращения. :)

 

Распайка, судя по всему, витой парой.

pup
Offline
Зарегистрирован: 19.08.2018

а вот кусок такой платы на ошпарке обошелся бы в каких-нибудь пять долларов с доставкой и в количестве трех штук? вполне себе удобная штуковина. 

я ошибаюсь, или где-то у нордика были рекомендации неиспользуемые пины сажать на землю? тогда было бы удобно еще и земляное обрамление сразу заварганить. 

Pavel.N
Offline
Зарегистрирован: 18.08.2018

pup пишет:

а вот кусок такой платы на ошпарке обошелся бы в каких-нибудь пять долларов с доставкой и в количестве трех штук? вполне себе удобная штуковина. 

я ошибаюсь, или где-то у нордика были рекомендации неиспользуемые пины сажать на землю? тогда было бы удобно еще и земляное обрамление сразу заварганить. 

Дак какая разница как человек спаял. Главное работает. А втеме пишу, потому что видел отладочную плату под nRF52832 на алике. Вообще плюсу +100500

pup
Offline
Зарегистрирован: 19.08.2018

нутк  я ж не говорю, что какой кошмар :-) просто я б так не сумел.  нечто подобное лутил под себя. лут - не то, чтобы от хорошей жизни. 

елси б можно было в один клик заказать на том же ошпарке - было б удобно наверное. 

отладочная плата на алике - без ссылки нещитова) 

a5021
Offline
Зарегистрирован: 07.07.2013

pup пишет:
я ошибаюсь, или где-то у нордика были рекомендации неиспользуемые пины сажать на землю?

У нордика такая документация, что определенно должно повезти, чтобы увидеть некоторые важные нюансы. Вот по заземлению ног мне точно не свезло, т.к. не видел таких рекомендаций.

Фотки моих самодельных плат слетели из первого сообщения, а редактировать его форум теперь уже не дает. Картинки остались на гите. Там же есть проект бредборд-совместимой отладочной платки в протеусе для запайки E73.

dosikus
Offline
Зарегистрирован: 11.03.2017

Я самый ленивый...

 

pup
Offline
Зарегистрирован: 19.08.2018

это все хорошо для прототипирования, но вот в конечное устройство как-то не лезет) 

что за девайс, кстати, для программирования? в какой среде используется? работает стабильно? не вылетает? 

dosikus
Offline
Зарегистрирован: 11.03.2017

Ну во первых протип это и есть -время изготовления 10 минут, наиграюсь сделаю борду.
А девайс JLinkOB072 - программатор/отладчик арм имеет VCOM на борту. Полный оригинал(софт) , обновляемый с дров сеггера через бут. Плата своя ляпанная лутЪ, две стороны, низ сплошной GND.

Работает и с кайлом и с SES (Ozone)и IAR и эмобитс и с поделками на основе клипсины .
Вылетов никаких не наблюдал, кроме зае***бов на версии дров 6.22, с какого-то лешего не работал с стм F0.

pup
Offline
Зарегистрирован: 19.08.2018

Блин, мы тут на два форума. Научи, плз, где брать этот полный оригинал? Вроде как голые чипы есть на али, а дальше что делать? Или речь об официальных чипах с прошивкой от дилеров сеггера? Где их брать? 

dosikus
Offline
Зарегистрирован: 11.03.2017

http://forum.easyelectronics.ru/viewtopic.php?f=38&t=22589&start=300
Там прошивка в dfu. Чип умеет dfu с завода, софт для заливки на сайте стм .
В той же ветке и печатки и схема.

Изготовливаете плату , паяете комплектующие, замыкаете бут, втыкаете в usb.
В устройствах появиться stm32 в dfu mode.
Запускаете софтину, заливаете прошивку.
Перетыкаете девайс , ставите дрова от сеггер, в Jlink Configuratornобновляете, в Jlink Commander прописываете серийник.

pup
Offline
Зарегистрирован: 19.08.2018

ясно. буду гуглить, что такое dfu и с чем его едят.. 

dosikus
Offline
Зарегистрирован: 11.03.2017

Dfu загрузчик через usb.
Счас некогда, завтра время будет распишу подробнее

a5021
Offline
Зарегистрирован: 07.07.2013

Чешу репу в раздумьях. Может и дальше бы обходился ST-LINK-ом, но как раз на теме nRF52832-ARDUINO  словил ситуацию, когда связка OpenOCD + ST-LINK в качестве прошивальщика под ArduinoIDE ничего не может сделать с микроконтроллером (nRF52832), находящемся в состоянии сна. Небольшой инвестигейшн показал, что сам ST-LINK отдает информацию о том, что МК в PowerDown, но OpenOCD воспринимает это, как код ошиблки и с воплями падает. KEIL/IAR в этой же ситуации отрабатывают без вопросов. Виноват, безусловно, OpenOCD, но поможет ли в этой ситуации J-Link-072 не совсем понятно. Парочка 072 валяется без дела, но какого-то пинка пока недостает.

dosikus
Offline
Зарегистрирован: 11.03.2017

Возможно придется физически соединить Reset и выставить опцию connect under reset. OpenOSD ущербная недоделка. А мне счас хочется попробовать JLinkOB72_128kb , в нем есть прошивка grag&drop.

a5021, ставь SES и Ozone там масса плюшек от сеггер ...

 

a5021
Offline
Зарегистрирован: 07.07.2013

Так понимаю, что начать можно с обращения Blue Pill в старую версию J-Link ? Сильно много там чего работать не будет?

dosikus
Offline
Зарегистрирован: 11.03.2017

Не будет VCOM, но скорость должна быть выше чем в 072. Остальное все так же.

Одно но, я еще не прикручивал бут, хотя люди говорят что делали...

pup
Offline
Зарегистрирован: 19.08.2018

вот. blue pill уже есть, и есть желание превратить ее в jlink для работы с nrf через тот же сеггер. 

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

dosikus
Offline
Зарегистрирован: 11.03.2017

Ozone и под макось и под линух и под винду , Ozone это продвинутый дебуггер.

А деббугер в SES выглядит так:

 

 

b707
Offline
Зарегистрирован: 26.05.2017

pup пишет:

вот. blue pill уже есть, и есть желание превратить ее в jlink для работы с nrf через тот же сеггер. 

 

Из BluePill можно сделать аж три программатора на выбор - JLink, STLink или BlackMagicProbe. Любой из трех подходит для программирования nRF52832

pup
Offline
Зарегистрирован: 19.08.2018

но ведь не любой будет работать с ses? 

где найти, как из него делать j-link? 

я официально переделал в j-link программатор на плате discovery, но оно в таком работает только с чипами st :-(

dosikus
Offline
Зарегистрирован: 11.03.2017

pup, по той же ссылке есть и на 103ий.

b707, STLink или BlackMagicProbe - в топку 

a5021
Offline
Зарегистрирован: 07.07.2013

Вот и Кларк (автор stm32duino) хвастается, как он из  Blue Pill сделал J-Link. Но ссылки у него ведут фактически туда же.

pup
Offline
Зарегистрирован: 19.08.2018

ну и отлично. осталось выкроить время, попробовать прошить блю пил, а потом ею поковырять nrf. 

dosikus
Offline
Зарегистрирован: 11.03.2017

a5021 пишет:

Вот и Кларк (автор stm32duino) хвастается, как он из  Blue Pill сделал J-Link. Но ссылки у него ведут фактически туда же.

Охренеть, вот как они загрузчик выдернули...

a5021
Offline
Зарегистрирован: 07.07.2013

А чет я не пойму в чем проблема загрузчика? Прошил голубую пилюлю с помощью ST-Link'а, так после подключения винда сразу подхватила и драйвера поставила. Теперь сегеровский софт видит пилюлю, как J-Link OB

Цитата:
Connecting to J-Link via USB...O.K.
Firmware: J-Link ARM-OB STM32 compiled Aug 22 2012 19:52:04
Hardware version: V7.00
S/N: 20090928
License(s): RDI,FlashDL,FlashBP,JFlash,GDBFull
VTref=3.300V
VTref=3.300V
ITarget=0mA
TCK=1 TDI=1 TDO=1 TMS=1 TRES=1 TRST=1
Supported target interface speeds:
 - 16 MHz/n, (n>=4). => 4000kHz, 3200kHz, 2666kHz, ...
J-Link>

только на серийный номер ругается.

pup
Offline
Зарегистрирован: 19.08.2018

а что делать , чтобы не ругалось? открывать файл в бинари формате, искать эту строчку и менять чуть-чуть на другую? 

a5021
Offline
Зарегистрирован: 07.07.2013

Фиг его знает, где там это искать. Глянул по быстрому, ничего не увидел. В кейле на стм32 проверил, все работает, шьется отлаживается даже не смотря на вопли о неправильном серийнике.

pup
Offline
Зарегистрирован: 19.08.2018

я как лох купил платку за тыщу рубле, а она на том же чипе, что и блюпил (по сути то же самое, разводка чуть другая), и в ней прошивка вроде бы как раз эта самая -  и вот ses с ней работает с nrf через попу: прошить успевает, а чото еще поделать - нет :-(

 

a5021
Offline
Зарегистрирован: 07.07.2013

У меня пока получается вот что: могу собрать в SES проект, залить его в nRF52832 и даже поотлаживать какое-то время в Ozon'е.  В произвольный момент отладка отваливается по невыясненным причинам -- мож проводки с контактами гуляют, мож из-за серийника левого. Не знаю.

Поначалу напутал с резетом, отчего было решил, что проблема моя не решается и подключиться к спящему мк не получится и j-link'ом, но все вроде разрешилось.

dosikus
Offline
Зарегистрирован: 11.03.2017

a5021, на котах в личку кинул.

dosikus
Offline
Зарегистрирован: 11.03.2017

a5021 пишет:

А чет я не пойму в чем проблема загрузчика?


Прошивка на 103 хоть не часто но меняется.
На 072 чаще.
Конечно выдрать новую прошивку и прикрутить не проблема, но ты это делал?
Я да...

a5021
Offline
Зарегистрирован: 07.07.2013

А вот, кстати, прошивка с другим серийником, но они очень похожи. :) С этой все прежние неудобства исчезли.

Попробовал ардуиной залить скетч через этот j-link arm ob -- ничего не получилось. OpenOCD, которая под ардуино IDE и занимается прошивкой, валится с воплями, что не может открыть USB устройство. Гугление подсказало, что без дополнительных танцев с бубном, j-link здесь бы и не заработал. Инструкция о том, что надлежит сделать, находится здесь: https://github.com/sandeepmistry/arduino-nRF5#driver-setup-for-segger-j-link.

После переустановки драйверов через некий Zadig

все заработало. В диагностическом окне ардуины наблюдаю:

Цитата:
Open On-Chip Debugger 0.10.0-dev-00254-g696fc0a (2016-04-10-10:13)
Licensed under GNU GPL v2
For bug reports, read
    http://openocd.org/doc/doxygen/bugs.html
debug_level: 2
0
adapter speed: 10000 kHz
cortex_m reset_config sysresetreq
Info : No device selected, using first device.
Info : J-Link ARM-OB STM32 compiled Jun 30 2009 11:14:15
Info : Hardware version: 7.00
Info : VTarget = 3.300 V
Info : clock speed 10000 kHz
Info : SWD IDCODE 0x2ba01477
Info : nrf52.cpu: hardware has 6 breakpoints, 4 watchpoints
nrf52.cpu: target state: halted
target halted due to debug-request, current mode: Thread
xPSR: 0x01000000 pc: 0x000006e4 msp: 0x20010000
** Programming Started **
auto erase enabled
Info : nRF51822-QFN48(build code: B00) 512kB Flash
Warn : not enough working area available(requested 32)
Warn : no working area available, falling back to slow memory writes
wrote 8192 bytes from file \arduino_build_748449/NRF52_SPIM_0.ino.hex in 16.704685s (0.479 KiB/s)
** Programming Finished **
** Verify Started **
Warn : not enough working area available(requested 52)
verified 6612 bytes in 0.138925s (46.479 KiB/s)
** Verified OK **
** Resetting Target **
shutdown command invoked

Однако, не все скоту масленница. Отпали все штатные сеггеровские средства работы с адаптером, а вместе с этим и возможность использовать программатор из кейлов/иаров. Ценой еще часа усилий все было возвращено на исходную, но что дальше делать и как скрестить этих антагонистов, пока не понятно. Вариант, постоянно переставлять драйвера в пользу тех или иных, как-то не подкупает своим изяществом.

 

dosikus
Offline
Зарегистрирован: 11.03.2017

a5021 пишет:

А вот, кстати, прошивка с другим серийником, но они очень похожи. :) С этой все прежние неудобства исчезли.

 

А вот эта кстати уже с бутом. И обновилась у меня ...

a5021, если тебе из аурдуньи просто шить, попробуй JFlash lite, он в комплекте с дровами.

 

Да и можно наверняка прикрутить   nRF5x Command Line Tools   .

a5021
Offline
Зарегистрирован: 07.07.2013

Чем шить -- это не вопрос. С прикручиванием геморроиться лениво. Вообще, такой подлянки не ожидал, что оно не будет совместимым образом с OpenOCD работать. Теперь уже нашел, что сеггеры у себя в вики об этом пишут:

"Using J-Link with OpenOCD
=========================
In general, it is possible to use J-Link with OpenOCD. OpenOCD handles J-Link as a dumb JTAG/SWD/... probe and only uses the very low level logic to output JTAG/SWD/... sequences. It does not make use of any high level logic etc. and therefore is much slower than the proprietary SEGGER J-Link DLL / GDBServer / ... implementation. In order to use J-Link with OpenOCD the standard J-Link USB driver must be replaced with the WinUSB driver, using 3rd party utilities. There are lots of walkthroughs available on the internet.
Note: Once the J-Link USB driver has been replaced, no SEGGER software from the J-Link software package will be able to communicate with J-Link anymore. To use SEGGER J-Link software again, the USB driver needs to be switched back to its default.

"

dosikus
Offline
Зарегистрирован: 11.03.2017

Если хочешь можешь свою таблетку перешить в стлинк v2.
А я бы на твоем месте , плюнул бы на OSD .
Что в кайле , что в сес все прекрасно компилится, нахрена нужны прослойки?

a5021
Offline
Зарегистрирован: 07.07.2013

Нет, в ст-линк шить не имею никакого желания. Во первых он есть, а во вторых, инстументы у сеггера весьма неплохи и я очень доволен, что до них добрался. Плюс бесплатная лицензия от сеггера для nRF52. Вообще красотень.

Касательно ардуины + ocd + j-link, буду морщить лобик, как этот клубок расплести. Другого ничего не остается.

dosikus
Offline
Зарегистрирован: 11.03.2017

a5021, наверняка можно прикручивать вызов консольных приложений, OSD же как-то прикрутили. А там по образу и подобию...

a5021
Offline
Зарегистрирован: 07.07.2013

С большой-пребольшой неохотой взялся прикручивать эти утилиты командной строки. Не обошлось без чертовщины. Начал с nrfjprog, которая в автономном режиме шила чип без проблем. Пока курил конфиги, прикидывал, что да как, nrfjprog шить перестала. Напрочь. Пишет, что JLink с таким серийным номером не подключен к компу. С каким "таким серийным номером" -- тайна покрытая мраком есть. Запущенная с ключем -i говорит, что серийник 12345. Что за серийник и откуда он взялся я так и не понял. Весь остальной софт работает с JLink'ом без проблем. Нафиг. Откинул nrfjprog. Взялся за JFlash. Она, правда, не совсем программатор командной строки, как та же дудка, скажем, но прикрутить ее можно. Один раз ее придется запустить ручками, чтобы создать пустой проект. Единственное, что там нужно указать -- это чип Nordic Semi nRF52832_xxAA. Дальше следует сохранить этот пустой проект куда-нибудь и не забыть, куда. В нижеприведенной конфигурации это C:/TEMP/nrf52.jflash.

Следующй момент -- добавление нового программатора в файлы конфигуарации ардуины. Отредактировать придется два файла: platform.txt и programmers.txt. Лежат они обычно довольно далеко. Для Win8.1 это обычно папка C:\Users\userName\AppData\Local\Arduino15\packages\sandeepmistry\hardware\nRF5\0.5.1\, где userName -- это имя учетки.

В конец файла programmers.txt нужно добавить сии незамысловатые строки:

Цитата:
#**********************************************
# Jlink with JFlash
#**********************************************
jflash.name=J-Flash for nRF52
jflash.program.tool=jflash
jflash.bootloader.tool=sandeepmistry:jflash

в конец файла platform.txt такие:

Цитата:
#
# jflash upload
#

tools.jflash.path=C:\Program Files\SEGGER\JLink_V633i
tools.jflash.cmd=JFlash.exe

tools.jflash.program.params.verbose=
tools.jflash.program.params.quiet=-hide -exit
tools.jflash.program.pattern="{path}/{cmd}" -openprjC:/TEMP/nrf52.jflash -open"{build.path}/{build.project_name}.hex" -auto -startapp

В вышеприведенном тексте следует обратить внимание на то, где "живет" jflash.exe и где сохранен пустой проект. Если раздражает окно приложения, которое остается висеть после загрузки, можно в последнюю строку добавить "-hide -exit". В остальном же, эта конфигурация позволяет шить nRF52832 через J-Link штатными средствами, в том числе и в случае, когда микроконтроллер находится в режиме сна.

dosikus
Offline
Зарегистрирован: 11.03.2017

a5021,  посмотри в jlink configurator серийник. Может он у тебя -1 ?