Для обеспечения полной совместимости ключей Guardant Code 5 поколения (выпускаемых с июня 2021 года) с предыдущим поколением устройств, требуется однократно пересобрать загружаемый код (далее - ЗК). BIN-файл, подготовленный в соответствии с данной инструкцией, будет универсальным. Его можно будет загружать как в новые, так и старые ключи.
Процедура сборки
Для сборки универсального ЗК нужно:
- Скачать Guardant SDK последней версии по ссылке и установить (требуется Guardant SDK 7 Update 7 или новее)
- Из установленного SDK потребуются следующие файлы:
- Универсальный makefile (можно взять в составе примера [%ProgramFiles(x86)%\Guardant\SDK7\Samples\Loadable Code API\01 - General Sample\Loadable Code\])
- Утилита elfconv.exe (в директории [%ProgramFiles(x86)%\Guardant\SDK7\Build\arm\bin])
- В одну директорию с исходным кодом ЗК скопировать новый makefile
- Если в makefile через [CFG_SYS_DIR = "$(BUILD_ARM)\bin"] указана нестандартная директория, то в эту же директорию нужно скопировать утилиту elfconv.exe . Если этот параметр в makefile настроен «по умолчанию» (см. выше пункт 2.b), то elfconv.exe никуда копировать ненужно
- Если требуется, указать в makefile свои параметры ROM и RAM
- Выполнить make template, затем make
Примечание
Отличие нового makefile от старого: адрес RAM памяти задаётся в относительных значениях, как смещение. Для этого введена константа [CFG_RAM_OFFSET]: