Compare commits

...

2 Commits

Author SHA1 Message Date
Max Brombach 19092bceb6 Device: RAD-MoonT1S: Add bootloader pipeline and chip 2026-02-13 13:17:59 -05:00
Kyle Schwarz 25b673075f All: Copyright 2026 2026-02-13 10:08:09 -05:00
5 changed files with 20 additions and 3 deletions

View File

@ -1,4 +1,4 @@
Copyright (c) 2018-2025 Intrepid Control Systems, Inc. Copyright (c) 2018-2026 Intrepid Control Systems, Inc.
Redistribution and use in source and binary forms, with or without modification, Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met: are permitted provided that the following conditions are met:

View File

@ -29,7 +29,7 @@ BEGIN
VALUE "FileDescription", "Intrepid Control Systems Open Device Communication C API" VALUE "FileDescription", "Intrepid Control Systems Open Device Communication C API"
VALUE "FileVersion", VER_FILEVERSION_STR VALUE "FileVersion", VER_FILEVERSION_STR
VALUE "InternalName", "icsneoc.dll" VALUE "InternalName", "icsneoc.dll"
VALUE "LegalCopyright", "Intrepid Control Systems, Inc. (C) 2018-2025" VALUE "LegalCopyright", "Intrepid Control Systems, Inc. (C) 2018-2026"
VALUE "OriginalFilename", "icsneoc.dll" VALUE "OriginalFilename", "icsneoc.dll"
VALUE "ProductName", "libicsneo" VALUE "ProductName", "libicsneo"
VALUE "ProductVersion", VER_PRODUCTVERSION_STR VALUE "ProductVersion", VER_PRODUCTVERSION_STR

View File

@ -12,7 +12,7 @@ subprocess.call('cd ..; doxygen docs/icsneoc/Doxyfile', shell=True)
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
project = 'libicsneo' project = 'libicsneo'
copyright = '2024-2025, Intrepid Control Systems, Inc.' copyright = '2024-2026, Intrepid Control Systems, Inc.'
author = 'Intrepid Control Systems, Inc.' author = 'Intrepid Control Systems, Inc.'
# -- General configuration --------------------------------------------------- # -- General configuration ---------------------------------------------------

View File

@ -128,6 +128,7 @@ enum class ChipID : uint8_t {
RADGALAXY2_SYSMON_CHIP = 123, RADGALAXY2_SYSMON_CHIP = 123,
RADCOMET3_ZCHIP = 125, RADCOMET3_ZCHIP = 125,
Connect_LINUX = 126, Connect_LINUX = 126,
RADMOONT1S_ZCHIP = 130,
RADGigastar2_ZYNQ = 131, RADGigastar2_ZYNQ = 131,
RADGemini_MCHIP = 135, RADGemini_MCHIP = 135,
Invalid = 255 Invalid = 255

View File

@ -37,6 +37,22 @@ public:
ProductID getProductID() const override { ProductID getProductID() const override {
return ProductID::RADMoonT1S; return ProductID::RADMoonT1S;
} }
const std::vector<ChipInfo>& getChipInfo() const override {
static std::vector<ChipInfo> chips = {
{ChipID::RADMOONT1S_ZCHIP, true, "ZCHIP", "RADMoonT1S_SW_bin", 1, FirmwareType::Zip}
};
return chips;
}
BootloaderPipeline getBootloader() override {
return BootloaderPipeline()
.add<EnterBootloaderPhase>()
.add<FlashPhase>(ChipID::RADMOONT1S_ZCHIP, BootloaderCommunication::RAD)
.add<EnterApplicationPhase>(ChipID::RADMOONT1S_ZCHIP)
.add<WaitPhase>(std::chrono::milliseconds(3000))
.add<ReconnectPhase>();
}
protected: protected:
RADMoonT1S(neodevice_t neodevice, const driver_factory_t& makeDriver) : Device(neodevice) { RADMoonT1S(neodevice_t neodevice, const driver_factory_t& makeDriver) : Device(neodevice) {
initialize<RADMoonT1SSettings>(makeDriver); initialize<RADMoonT1SSettings>(makeDriver);