Skip to content

Interrupting during an operation can get the device into a bad state #79

@incognitojam

Description

@incognitojam

Encountered while working on #78 - CTRL-C during a flash command

We get an error when trying to send the configure command, or even if we skip the configure and try other commands like power to reset.

Not sure if there's a way to recover (other than replugging, which works)

$ qdl.js erase system_a   # NOTE: this was not using fast erase, so it was flashing the partition with zeroes
[qdl] QDL device detected
connected sahara
[qdl] Connected to Sahara
[sahara] Uploading loader...
[sahara] Firehose mode detected, uploading...
[sahara] Loader successfully uploaded in 60.146ms
[qdl] Firehose configured
Erasing system_a...
^C

$ qdl.js getstorageinfo
[qdl] QDL device detected
<?xml version="1.0" encoding="UTF-8" ?>
<data>
<log value="ERROR: Read non multiple sector size value from USB 966698 sectsize4096" /></data>
connected firehose
102 |             // not reached handler yet
103 |             data = await this.waitForData();
104 |             response = this.xml.getResponse(data);
105 |         }
106 |         if (!("value" in response)) {
107 |             throw new Error("No return value");
                        ^
error: No return value
      at <anonymous> (/home/cameron/comma/qdl.js/dist/firehose.js:107:19)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions