Skip to content

Flashing

Alex Egony edited this page Apr 1, 2021 · 22 revisions

UNDER CONSTRUCTION

Прошивка стиков v4 (cc2652/cc1352) c помощью питоновского прошивальщика.

Проверено на Windows 7 x64 + python 3.8.6. На линуксе все аналогично.


Внимание!

Данный способ работает, только если в чипе есть прошивка с поддержкой BSL!

Внимание!

Залив прошивку не от того устройства, или прошивку без BSL, или прошивку, в которой BSL активируется НЕ через пин DIO_15 - есть шанс получить кирпич, кторый можно поднять только программатором!

Внимание!

Если качаете прошивку от KoenKK, сверьтесь с типом своего стика в табличке.


Подготовка

Вариант 1

Качаем и устанавливаем python 3.8.6.

Устанавливаем необходимые дополнения: pip3 install pyserial pip3 install intelhex

Распаковываем прошивальщик (файл cc2538-bsl.py). Это дважды модифицированный прошивальщик отсюда (в нем модификации от jethome и мои). Оригинальный прошивальщик шьет не все ревизии стиков.

Вариант 2

Используем exe-файл cc2538-bsl_x64.exe (питон и его модули ставить не нужно).


Прошивка

Процесс прошивки для стиков разных ревизий выглядит по-разному из-за разных методов активации бутлоадера (кнопками или автоматически).

Внимание!!! Все нижесказанное справедливо ТОЛЬКО для стиков, которые собирал я лично.

Ревизию стика можно посмотреть на плате стика.

Прошивка стиков rev.2.0E и rev.1.0R

Нажатие кнопок не требуется.

python.exe cc2538-bsl.py -p COM3 --invoke-bootloader 3 -ewv znp_CC2652P_E72_sdk_4_40_00_44_20210319.hex

Прошивка стиков rev.2.1E и rev.2.3E

Нажатие кнопок не требуется.

python.exe cc2538-bsl.py -p COM3 --bootloader-invert-lines -ewv znp_CC2652P_E72_sdk_4_40_00_44_20210319.hex

Прошивка стиков rev.2.5E, rev.3.0E, rev.3.2E, rev.3.2R

Нажатие кнопок не требуется.

python.exe cc2538-bsl.py -p COM3 -ewv znp_CC2652P_E72_sdk_4_40_00_44_20210319.hex

Прошивка остальных стиков (активация бутлоадера кнопками).

Зажать кнопки RESET (RST) и FLASH (BSL), отпускаете RESET, затем отпускаете FLASH. или Зажать кнопку FLASH (BSL), вставить стик в USB, отпустить FLASH.

python.exe cc2538-bsl.py -p COM3 -ewv znp_CC2652P_E72_sdk_4_40_00_44_20210319.hex

Процесс выглядит примерно так:

C:\Misc\cc2538-bsl>flash_2652.cmd
Opening port COM3, baud 500000
Reading data from CC1352P2_CC2652P_other_20201113.hex
Your firmware looks like an Intel Hex file
Connecting to target...
CC1350 PG2.0 (7x7mm): 352KB Flash, 20KB SRAM, CCFG.BL_CONFIG at 0x00057FD8
Primary IEEE Address: 00:12:4B:00:21:B4:94:C2
    Performing mass erase
Erasing all main bank flash sectors
    Erase done
Writing 360448 bytes starting at address 0x00000000
Write 104 bytes at 0x00057F980
    Write done
Verifying by comparing CRC32 calculations.
    Verified (match: 0x55e2e461)

По окончании прошивки, возможно, потребуется переткнуть стик в USB или нажать RESET.

Clone this wiki locally