Простой способ прошивки стика CC2531 если нет дебаггера, но есть raspberry.


CC2531 можно купить тут: https://ru.aliexpress.com/item/32954698530.html


Все делал по инструкции, в разделе о малине.

Должна стоять wiringPi, затем качаем flash_cc2531 командой:

git clone https://github.com/jmichault/flash_cc2531.git

Подключаем CC2531 через дебаг кабель к Raspberry по следующей схеме:

  • pin 1 (GND) –> pin 39 (GND)
  • pin 7 (reset) –> pin 35 (GPIO24, BCM19)
  • pin 3 (DC) –> pin 36 (GPIO27, BCM16)
  • pin 4 (DD) –> pin 38 (GPIO28, BCM20)

 


Если дебаг кабеля нет, можно аккуратно припаять провода к колодке на самом сс2531, распиновка аналогичная:


 

Вставляем стик в raspberry и тестируем:

cd flash_cc2531
./cc_chipid

В ответ должны получить:

ID = b524.

Скачиваем последнюю прошивку вот отсюда: https://github.com/Koenkk/Z-Stack-firmware/tree/master/coordinator/Z-Stack_Home_1.2/bin

wget https://github.com/Koenkk/Z-Stack-firmware/raw/master/coordinator/Z-Stack_Home_1.2/bin/default/CC2531_DEFAULT_20190608.zip

На момент написания это CC2531_DEFAULT_20190608.zip

Распаковываем CC2531ZNP-Prod.hex в каталог прошивальщика flash_cc2531

unzip CC2531_DEFAULT_20190608.zip

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

./cc_erase
./cc_write CC2531ZNP-Prod.hex

Очистка идет быстро. Прошивка минуты 3. После прошивки запустилась верификация, но очень долгая, я ее отменил.

Прошивка CC2530 через Raspberry Pi описана тут:

Прошивка CC2530 через Raspberry Pi

P.S

С некоторыми cc2531 бывают проблемы распознавания утилитой flash_cc2531. Вместо ID = b524 ответ 0088, 0000 или ffff. В комментариях отписались о решении проблемы, решение тут: https://github.com/jmichault/flash_cc2531/issues/9#issuecomment-557893592

 

5 1 vote
Article Rating

Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

44 Комментарий
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Сергей
Сергей
1 год назад

Не мог понять почему выдается ID = 0000 , прочитал здесь (https://www.zigbee2mqtt.io/information/alternative_flashing_methods.html) подключите 2 pin на cc2531 к 1-му pin на rasspberry (это 3.3 v) тогда все норм можно шить

Сергей
Сергей
1 год назад
Reply to  kvv

Ох, спасибо я как-то пропустил это в статье, всё ищу сложные пути 🙂

Дмитрий
Дмитрий
1 год назад

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

Ruslan
Ruslan
11 месяцев назад
Reply to  Дмитрий

можно и проводки припаять

pavuk
11 месяцев назад
Reply to  kvv

Вот бы еще понять распиновку проводов напрямую к колодке на cc2531…

pavuk
11 месяцев назад
Reply to  kvv

Спасибо. Но ведь можно тогда не паять, а соединить с помощью Dupont мама-мама? Для чего тогда вообще нужна эта дебаг плата с проводами?

Анатолий
Анатолий
11 месяцев назад

Добрый вечер, уважаемый kvv.
Прошил координатор на базе СС2531. Все работает. Я использую Hass.io c add-on ZigBee2Mqtt

Решил добавить еще роутер СС2531. Прошивка router-cc2531-diag.hex от 04/02/2019 установилась нормально и прошла верификация. Однако спаривание координатора с маршрутизатором не происходит. Короткие быстрые мигания (один раз в секунду) горит красный светодиод, что означает что всетаки маршрутизатор пытается подключается к сети. Подскажите пожалуйста в чем может быть причина?

А пока буду пытаться ставить другую прошивку router-cc2531-diag-usb.hex и смотреть что же он шлет.

Михаил Иванов
Михаил Иванов
10 месяцев назад

Не совсем ясно как скачать прошивку в Raspberry

Михаил Иванов
Михаил Иванов
10 месяцев назад
Reply to  kvv

Спасибо. Сейчас буду пробовать прошивать.

Лео
Лео
10 месяцев назад

Как с прошивкой?

Лео
Лео
10 месяцев назад
Reply to  Лео

Прошил через Arduino nano, выше инструкция не работает(проблемы с wiringPi)

Лео
Лео
10 месяцев назад
Reply to  kvv

При сопряжении устройства стик и малина, соответственно при отсутствие питания «000» а при включение «fff» пробовали и отделено 3.3v подавать, и на прямую с усб входа. Проверял таблицы соответствия, все совпадает как в инструкциях. Пробовал ставить разные версии wiringPi так так программа больше не поддерживается. Ешо пробовали подключать по плану «б» (где то в инструкциях есть описание), такой-же результат. Грешил на малинку, поменяли малину, такая-же проблемам.

ACROWA
ACROWA
9 месяцев назад
Reply to  Лео

Проблема ещё есть, но не с wiringPi, а с flash_cc2531.
Вот решение:
https://github.com/jmichault/flash_cc2531/issues/9#issuecomment-557893592
У меня на Rpi2 заработало с:
cc_delay_mult=80
Модуль новый из китая без бутлоадера.

Виктор
Виктор
1 месяц назад
Reply to  ACROWA

After cloning the repo, edit CCDebugger.c, modify the line 177

А как её редактировать?

Сергей
Сергей
10 месяцев назад

Пробую прошить по вашей методике. Прошивку сначала пробовал из вашей ссылки. Вариант 1 — на стике загорается светодиод (в произвольной время в процессе уже прошивки), прошивка просто останавливается. Вариант 2 — прошивка проходит, во время верификации показывает кучу ошибок. При попытке прошить https://github.com/kirovilya/ioBroker.zigbee получаем:
root@raspberrypi:~/flash_cc2531# ./cc_write CC2531ZNP-Pro-Secure_LinkKeyJoin_mod.hex
ID = b524.
incorrect hex file ( : missing)
Подскажете — в каком направлении двигаться?

Сергей
Сергей
10 месяцев назад
Reply to  kvv

А что скажете про прошивку iobrokrer.zigbee? Там есть «обычная» (для прошивки через Дебаггер) и мод для прошивки через Ардуино, я пробовал обе, результат одинаковый, как у меня в посте… получаем: и т.д. Действительно надо какую-то модифицированную прошивку для Малины?

Дмитрий
Дмитрий
8 месяцев назад

Застрял на распаковке, не хочет распаковывать. Файл скачен, sudo пробовал, аппарат Pi 3B+. Распаковал и залил на гитхаб .bin и .hex файл, скачал на малину по отдельности те 2 файла, пробую прошиться и опять мимо. pi@raspberrypi:~/flash_cc2531 $ dir CC2531_DEFAULT_20190608.zip CCDebugger.c cc_erase.c cc_write Makefile cc_chipid CCDebugger.h cc_read cc_write.c README.md cc_chipid.c cc_erase cc_read.c LICENSE pi@raspberrypi:~/flash_cc2531 $ unzip CC2531_DEFAULT_20190608.zip Archive: CC2531_DEFAULT_20190608.zip End-of-central-directory signature not found. Either this file is not a zipfile, or it constitutes one disk of a multi-part archive. In the latter case the central directory and zipfile comment will be found on the last disk(s) of this archive. unzip: cannot… Подробнее »

Дмитрий
Дмитрий
8 месяцев назад
Reply to  Дмитрий

Ошибся, малина 2B, не уж то из-за второй версии у меня все работает не как у людей

Александр
Александр
2 месяцев назад
Reply to  Дмитрий

Такая же проблема с 3B+, не распаковывает и все, ошибка и все.
Пробовал через 7z, также безрезультатно…как исправить, так и не понял.

Александр
Александр
2 месяцев назад
Reply to  kvv

плюнул на это. Подключился через winscp, кинул туда распакованные файлы из архива и все прошилось) 5 мин и готово)

Александр
Александр
2 месяцев назад
Reply to  kvv

проверил эту ссылку, все отлично распаковалось. Можно добавить в шапку). Спасибо.

Gladius
Gladius
6 месяцев назад

При вводе команды :
./cc_chipid
у меня выдаёт
./cc_chipid: error while loading shared libraries: libwiringPi.so: cannot open shared object file: No such file or directory
хотя
git clone https://github.com/jmichault/flash_cc2531.git
устоновлено и переход делаю
cd flash_cc2531
Может кто помочь ?

Ник
Ник
5 месяцев назад

Друзья! Кто будет шиться через raspberry pi 4b, после установки wiringPi обновите до версии 2.52 через команду
cd /tmp
wget https://project-downloads.drogon.net/wiringpi-latest.deb
sudo dpkg -i wiringpi-latest.deb

Иначе при проверке cd flash_cc2531 будет всегда писать id=0000

Из за этого перепаивал 3 раза, думал провода плохие достались и раз 10 перепроверял подключение по схеме.

Ник
Ник
5 месяцев назад
Reply to  kvv

Забыл добавить ссыль откуда взял инфу: http://wiringpi.com/wiringpi-updated-to-2-52-for-the-raspberry-pi-4b/

gena
gena
5 месяцев назад
Reply to  kvv

pin 3 (DC) –> pin 36 (GPIO27, BCM16) а на схеме выше это GPIO16 и.т.д чему верить то

Denis
Denis
1 месяц назад

А можно ли использовать Raspberry pi 2012 b ?

Denis
Denis
1 месяц назад
Reply to  kvv

для raspberry pi1b распиновка на картинке, но понять как ее использовать опыта не хватает ((

Raspberry-Pi-1-Model-B-1.png