Не удалось инициализировать протокол ошибок Heimdall! на Ubuntu

Я хочу установить CyanogenMod на свой Samsung Galaxy S5. Я скачал версию и сделал точные шаги из вики. Но когда я пытаюсь прошить с помощью Heimdall, я получаю эту ошибку:

Ubuntu-Laptop:~/Downloads/cm-12.1-20151007-SNAPSHOT-YOG4PAO333-klte$ sudo heimdall flash --RECOVERY boot.img --no-reboot
Heimdall v1.4.1

Copyright (c) 2010-2014 Benjamin Dobell, Glass Echidna
http://www.glassechidna.com.au/

This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:
http://www.glassechidna.com.au/donate/

Initialising connection...
Detecting device...
Claiming interface...
Setting up interface...

Initialising protocol...
ERROR: Protocol initialisation failed!

Releasing device interface...

Я ничего не нашел с Google. Пожалуйста помоги.

Спасибо.

Ответы (5)

У меня тоже была похожая проблема. Я добавил правило udev, как это было предложено в GitHub (ссылка выше), но телефон по-прежнему не загружался. Затем я нашел еще одно простое решение на GitHub:

  1. Отсоедините кабель USB.
  2. Настройте флэш-память в Heimdall Frontend или в командной строке.
  3. Загрузите телефон в режим загрузки.
  4. ПОСЛЕ того, как он находится в режиме загрузки, подключите USB и сразу же прошейте.

Оно работало завораживающе.

Я нашел странное «решение», когда пробовал это: запустите телефон в «режиме загрузки» + нажмите «Продолжить» + оставьте USB отключенным + запустите команду heimdall. Это явно не удается. Подключите USB + перезапустите команду heimdall: это работает! Не спрашивайте почему ;-)
Это сработало!!! Но почему?!
Еще одна вещь, которая сработала, заключалась в использовании adb reboot downloadвместо использования кнопок, как описано здесь .

У меня возникла та же проблема, и я нашел решение, которое сработало для меня, в комментарии к выпуску Heimdall # 228 .

Проблема для меня заключалась в том, что udev зарезервировал телефон в качестве модема, когда я его подключил. Если вы запустите dmesg и увидите строку с надписью «Это устройство не может совершать звонки самостоятельно. Это не модем», то это может работать на вас.

От имени пользователя root создайте файл с именем /etc/udev/rules.d/79-samsung.rules со следующим содержимым:

ATTRS{idVendor}=="04e8", ENV{ID_MM_DEVICE_IGNORE}="1"

Затем перезапустите udev с помощью «sudo service udev restart» и отключите/повторно подключите устройство, и вы можете попытаться установить его снова.

Если это не сработает или это другая проблема, вы можете отредактировать свой вопрос, добавив вывод этих команд:

heimdall detect --verbose --usb-log-level debug
sudo heimdall print-pit --verbose --no-reboot
Если бы я только мог обнять тебя. Теперь я должен иметь дело с ERROR: libusb error -4 whilst sending bulk transfer. Retrying...:S

У меня были похожие проблемы, оказалось, что он работает только с heimdall v1.4.2 в моей системе Linux Mint 19.

СИТУАЦИЯ С ХЕЙМДАЛЕМ 1.4.0:

ОС: LinuxMint 19 (тара) Ядро 4.20.0-042000-универсальный

heimdall flash --REOVERY /home/user/Downloads/twrp-3.3.1-0-gts210vewifi.img --pit /home/user/s2a.pit --no-reboot --verbose 
Heimdall v1.4.0

Copyright (c) 2010-2013, Benjamin Dobell, Glass Echidna
http://www.glassechidna.com.au/

This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:
http://www.glassechidna.com.au/donate/

Initialising connection...
Detecting device...
      Manufacturer: "Sasmsung"
           Product: "MSM8952"

            length: 18
      device class: 2
               S/N: 0
           VID:PID: 04E8:685D
         bcdDevice: 0100
   iMan:iProd:iSer: 1:2:0
          nb confs: 1

interface[0].altsetting[0]: num endpoints = 1
   Class.SubClass.Protocol: 02.02.01
       endpoint[0].address: 82
           max packet size: 0010
          polling interval: 09

interface[1].altsetting[0]: num endpoints = 2
   Class.SubClass.Protocol: 0A.00.00
       endpoint[0].address: 81
           max packet size: 0200
          polling interval: 00
       endpoint[1].address: 01
           max packet size: 0200
          polling interval: 00
Claiming interface...
Setting up interface...

Initialising protocol...
WARNING: Control transfer #1 failed. Result: -9
WARNING: Control transfer #2 failed. Result: -9
WARNING: Control transfer #3 failed. Result: -9
WARNING: Control transfer #4 failed. Result: -9
WARNING: Control transfer #5 failed. Result: -9
WARNING: Control transfer #6 failed. Result: -9
Protocol initialisation successful.

Beginning session...

Some devices may take up to 2 minutes to respond.
Please be patient!

Session begun.

Downloading device's PIT file...
ERROR: libusb error -7 whilst sending packet. Retrying...
ERROR: libusb error -7 whilst sending packet. Retrying...
ERROR: libusb error -7 whilst sending packet. Retrying...
ERROR: libusb error -7 whilst sending packet. Retrying...
ERROR: libusb error -7 whilst sending packet. Retrying...
ERROR: libusb error -7 whilst sending packet.
ERROR: Failed to send request to end PIT file transfer!
ERROR: Failed to download PIT file!
Ending session...
ERROR: libusb error -7 whilst sending packet. Retrying...
ERROR: libusb error -7 whilst sending packet. Retrying...
ERROR: libusb error -7 whilst sending packet. Retrying...
ERROR: libusb error -7 whilst sending packet. Retrying...
ERROR: libusb error -7 whilst sending packet. Retrying...
ERROR: libusb error -7 whilst sending packet.
ERROR: Failed to send end session packet!
Releasing device interface...



    heimdall download-pit --output s2.pit --verbose
    Heimdall v1.4.0

    Copyright (c) 2010-2013, Benjamin Dobell, Glass Echidna
    http://www.glassechidna.com.au/

    This software is provided free of charge. Copying and redistribution is
    encouraged.

    If you appreciate this software and you would like to support future
    development please consider donating:
    http://www.glassechidna.com.au/donate/

    Initialising connection...
    Detecting device...
          Manufacturer: "Sasmsung"
               Product: "MSM8952"

                length: 18
          device class: 2
                   S/N: 0
               VID:PID: 04E8:685D
             bcdDevice: 0100
       iMan:iProd:iSer: 1:2:0
              nb confs: 1

    interface[0].altsetting[0]: num endpoints = 1
       Class.SubClass.Protocol: 02.02.01
           endpoint[0].address: 82
               max packet size: 0010
              polling interval: 09

    interface[1].altsetting[0]: num endpoints = 2
       Class.SubClass.Protocol: 0A.00.00
           endpoint[0].address: 81
               max packet size: 0200
              polling interval: 00
           endpoint[1].address: 01
               max packet size: 0200
              polling interval: 00
    Claiming interface...
    Setting up interface...

    Initialising protocol...
    WARNING: Control transfer #1 failed. Result: -9
    WARNING: Control transfer #2 failed. Result: -9
    WARNING: Control transfer #3 failed. Result: -9
    WARNING: Control transfer #4 failed. Result: -9
    WARNING: Control transfer #5 failed. Result: -9
    WARNING: Control transfer #6 failed. Result: -9
    ERROR: Failed to receive handshake response. Retrying...
    ERROR: Failed to receive handshake response. Retrying...
    ERROR: Failed to receive handshake response. Retrying...
    ERROR: Failed to receive handshake response. Retrying...
    ERROR: Failed to receive handshake response.
    ERROR: Protocol initialisation failed!

    Releasing device interface...

ИСПРАВЛЕНИЕ:

... нашел эту полезную статью и установил Heimdall v1.4.2

КАК УСТАНОВИТЬ HEIMDALL ВЕРСИИ 1.4.2 НА UBUNTU 16 И ВЕРШЕ

установить вер. 1.4.2 сделать следующее:

sudo apt purge heimdall-flash
sudo apt install build-essential cmake zlib1g-dev qt5-default libusb-1.0-0-dev libgl1-mesa-glx libgl1-mesa-dev
cd ~
wget https://gitlab.com/BenjaminDobell/Heimdall/-/archive/master/Heimdall-master.tar.gz
tar -xvf Heimdall-master.tar.gz
cd Heimdall-master/
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make
sudo mv ./bin/heimdall* /usr/local/bin

проверить успех с

heimdall version
v1.4.2

После этой операции поведение изменилось следующим образом:

heimdall flash --RECOVERY /home/user/Downloads/twrp-3.3.1-0-gts210vewifi.img --pit /home/chris/s2.pit --no-reboot --verbose 
Heimdall v1.4.2

Copyright (c) 2010-2017 Benjamin Dobell, Glass Echidna
http://www.glassechidna.com.au/

This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:
http://www.glassechidna.com.au/donate/

Initialising connection...
Detecting device...
      Manufacturer: "Sasmsung"
           Product: "MSM8952"

            length: 18
      device class: 2
               S/N: 0
           VID:PID: 04E8:685D
         bcdDevice: 0100
   iMan:iProd:iSer: 1:2:0
          nb confs: 1

interface[0].altsetting[0]: num endpoints = 1
   Class.SubClass.Protocol: 02.02.01
       endpoint[0].address: 82
           max packet size: 0010
          polling interval: 09

interface[1].altsetting[0]: num endpoints = 2
   Class.SubClass.Protocol: 0A.00.00
       endpoint[0].address: 81
           max packet size: 0200
          polling interval: 00
       endpoint[1].address: 01
           max packet size: 0200
          polling interval: 00
Claiming interface...
Setting up interface...

Initialising protocol...
Protocol initialisation successful.

Beginning session...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...

Some devices may take up to 2 minutes to respond.
Please be patient!

WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
Session begun.

WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
Downloading device's PIT file...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
PIT file download successful.

Uploading RECOVERY
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
0%WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...

7%

14%

21%

28%

35%

42%

49%

56%

63%

70%

77%

85%

92%

99%

100%
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
RECOVERY upload successful

Ending session...
WARNING: Empty bulk transfer after sending packet failed. Continuing anyway...
ERROR: libusb error -7 whilst receiving bulk transfer. Retrying...

Releasing device interface...

перед операцией я отключил и снова подключил планшет

чтобы я мог прошить TWRP

СЧАСТЛИВЫЙ

Это произошло для меня на v1.4.1. Есть несколько способов исправить это:

  1. Убедитесь, что у вас установлена ​​последняя и лучшая версия Heimdall.
  2. Установите все это:
sudo apt-get install build-essential cmake zlib1g-dev qt5-default libusb-1.0-0-dev libgl1-mesa-glx libgl1-mesa-dev
  1. Перезагрузите компьютер
  2. Попробуйте подключиться к другому USB-порту - 3 из моих USB-портов не работали, а один работал!
Я не думаю, что вы сами все это поняли, учитывая этот поисковый запрос . Пожалуйста, добавьте источник(и) информации.
Я нашел источник ответа @user1414405. Для протокола: github.com/Benjamin-Dobell/Heimdall/issues/…

Если ни один из приведенных выше ответов не сработал, ответ может быть таким же глупым, каким он оказался для меня.

Две вещи, которые вам, возможно, нужно попробовать, прежде чем удариться головой о экран:

Потенциальное исправление 1: перезагрузитесь в режиме загрузки, не подключая USB, и подключайте его только после нажатия кнопки, которая позволяет вам продолжить это опасное путешествие (я полагаю, кнопка увеличения громкости). После этого, если вы еще этого не сделали, замените драйверы на Zadig, и Heimdall может сработать. Я предполагаю, что это было исправлением для меня, но это могло быть и так...

Возможное исправление 2: перезагрузите мобильное устройство после замены драйверов на Zadig. Да, очень глупо, но это могло быть исправлением (поскольку первое исправление требовало перезагрузки).

Надеюсь, никто не проломит череп.