Compare commits

..

No commits in common. "1b00c6a05be08a60db8e543a0a7da0ebc2ad5b7e" and "83ab65b062385967e17cc73d7efde82bba8cfb9e" have entirely different histories.

4 changed files with 18 additions and 57 deletions

View File

@ -554,7 +554,6 @@ bool Device::goOnline() {
return false;
}
if(supportsNetworkMutex()) {
assignedClientId = com->getClientIDSync();
if(assignedClientId) {
// firmware supports clientid/mutex
@ -576,7 +575,6 @@ bool Device::goOnline() {
}
);
}
}
// (re)start the keeponline
keeponline = std::make_unique<Periodic>([this] { return enableNetworkCommunication(true, onlineTimeoutMs); }, std::chrono::milliseconds(onlineTimeoutMs / 4));

View File

@ -28,8 +28,7 @@ struct BootloaderPhase {
Finalize,
Reconnect,
EnterBootloader,
Wait,
EnterApplication
Wait
};
virtual Type getType() const = 0;
@ -71,16 +70,6 @@ struct EnterBootloaderPhase : public BootloaderPhase {
}
};
struct EnterApplicationPhase : public BootloaderPhase {
Type getType() const override {
return Type::EnterApplication;
}
ChipID chip;
EnterApplicationPhase(ChipID chip) : chip(chip) {}
};
struct FlashPhase : public BootloaderPhase {
Type getType() const override {
return Type::Flash;

View File

@ -67,23 +67,10 @@ public:
}
}
if(useNewBootloader) {
auto mainChip = std::find_if(chipVersions.begin(), chipVersions.end(), [](const auto& chip) { return chip.name == "ZCHIP"; });
auto usbChip = std::find_if(chipVersions.begin(), chipVersions.end(), [](const auto& chip) { return chip.name == "USB ZCHIP"; });
ChipID mainChipID;
if(mainChip != chipVersions.end()) {
mainChipID = mainChip->id;
} else if(usbChip != chipVersions.end()) {
mainChipID = usbChip->id;
} else {
return {};
}
BootloaderPipeline pipeline;
for(const auto& version : chipVersions) {
pipeline.add<FlashPhase>(version.id, BootloaderCommunication::RADMultiChip);
}
pipeline.add<EnterApplicationPhase>(mainChipID);
pipeline.add<ReconnectPhase>();
pipeline.add<WaitPhase>(std::chrono::milliseconds(3000));
return pipeline;

View File

@ -146,23 +146,10 @@ public:
BootloaderPipeline getBootloader() override {
auto chipVersions = getChipVersions();
auto mainChip = std::find_if(chipVersions.begin(), chipVersions.end(), [](const auto& chip) { return chip.name == "ZCHIP"; });
auto usbChip = std::find_if(chipVersions.begin(), chipVersions.end(), [](const auto& chip) { return chip.name == "USB ZCHIP"; });
ChipID mainChipID;
if(mainChip != chipVersions.end()) {
mainChipID = mainChip->id;
} else if(usbChip != chipVersions.end()) {
mainChipID = usbChip->id;
} else {
return {};
}
BootloaderPipeline pipeline;
for(const auto& version : chipVersions) {
pipeline.add<FlashPhase>(version.id, BootloaderCommunication::RADMultiChip);
}
pipeline.add<EnterApplicationPhase>(mainChipID);
pipeline.add<ReconnectPhase>();
pipeline.add<WaitPhase>(std::chrono::milliseconds(3000));
return pipeline;