Привет всем!
Относительно недавно, я решился таки научить свой робот пылесос разговаривать (Менять голосовые пакеты), хотя и боялся сделать его "кирпичом". Полазив по форуму 4PDA, таки набрел на то, что мне было нужно, осталось только разобраться немного с мелочами и приступить к работе.
В целом я скажу, что задача абсолютно легкая, просто когда видишь столько информации, глаза разбегаются.)
Сейчас я выжму для Вас самую важную информацию, чтоб не потерялись (Кстати, если возникли какие-то проблемы, смело можете обращаться).
Большое Спасибо людям (VoYou76, Hazz74) с форума, что расписал всё от и до.
(Разборка пылесоса для подключения USB, настойчиво рекомендую после разборки, читать именно пост!)
1. Настройка линукс:
-Скачиваем сам образ системы Линукс берём тут. Если берёте с других сайтов, то Качаем Линукс 20-й версии. Но есть случаи у кого то работает и с другой версии (более новой).
-Скачиваем программу для записи Линукса на флэшку, я использую проверенную Rufus берём тут
-Записываем образ на флэшку.
2. Для загрузки с USB вам нужно зайти в BOOT-меню (На всех компьютерах разные способы, вам нужно загуглить). И далее в BOOT-меню выбрать свою флешку
3. Подключиться к WI-FI
Далее в линуксе:
4. Открыть командную строку (консоль). Открывается через комбинацию клавиш Ctrl+Alt+T либо правой кнопкой мыши по раб. столу.
5. Пишем в командной строке sudo su далее команду sudo apt update
6. пробуем запустить adb пишем sudo apt install adb , если done идем к следующему пункту
7. пишем в консоли sudo apt install android-sdk-platform-tools
8. У пылесоса снять щетку и открутить 4 саморезика. Открыть крышку и отключить аккумулятор. Найти Usb порт.
9. В папке Downloads создать файл без расширения "adb_shell" (без ковычек) с содержимым:
#!/bin/sh
export ENV='/etc/adb_profile'
exec /bin/sh "$@"
10. В папке Downloads нажать правой кнопкой мыши и выбрать "Open Terminal Here" и ввести:
sudo su - для получения прав супер пользователя
далее пишем:
chmod 755 adb_shell
далее:
while true; do adb push -a adb_shell /bin/adb_shell | grep -v "no devices"; done
11. теперь можно подключать пылесос к USB порту: Если в терминале ничего не произойдет, отключаем кабель, ждем 2 секунды и подключаем снова.
должно появиться:
adb_shell: 1 file pushed, 0 skipped. 0.0 MB/s (100 bytes in 0.033s). "bytes" может отличаться с вашими. Если не получается проверьте (поменяйте провод USB и порт USB 2.0 должен быть) может потребоваться до 10 или более попыток!!
В терминале побегут одинаковые строчки (у кого то этого не происходит).
Идём к следующему пункту.
12. нажимаем CTRL+C и вводим
while true; do (adb shell rm /etc/rc.d/S90robotManager && echo "Done") 2>&1 | grep -v "no devices"; done
и аналогично предыдущему пункту ждем...
Если появилось DONE, то все отлично и просто выдергиваем кабель на пару секунд и подключаем снова. (не обязательно, но на всякий случай)
В терминале побегут одинаковые строчки (у кого то этого не происходит).
нажимаем CTRL+C
13. Далее обязательно прописать команду: ssh-keygen, без неё путь для обмена ключами ssh не пропишется.
После жмём пару раз enter для пропуска появляющихся запросов.
14. Устанавливаем mc (Midnight Commander) командой, пишем в терминале: sudo apt install mc
15. скачиваем автоматический скрипт:
Рабочий скрипт по ссылке: скрипт
Если с первым скриптом не помогло(не спрашивал пароль, вылетал при отказе на установку валетудо), то можно скачать другой от сюда по ссылке: Скрипт (подходит и для новых V8)
Перед запуском скрипта убедитесь что:
1. Ваш робот подключался к вашему Wi-Fi при включении(то есть в МИхоум был ранее настроен), и ваш компьютер подключен к той же сети.
2. Пылесос в выключенном состоянии.(провод аккумулятора отсоединён)
3. Кабель micro-USB подключен к пылесосу и компьютеру.
ВАЖНО!!!
Во время работы скрипта на запрос установки valetudo отказываемся и пишем n. Иначе в МИхоум пылесос не будет обнаруживаться.
16. Запустить Midnight Commander командой пишем в терминале mc, в папке Downloads найти скрипт и запустить его.
В процессе работы скрипт попросит Пароль, его и остальное оставляем пустым и подтверждаем enter-ром.
Он все сделает, установит root, откроет доступ ssh.
17. Если всё успешно прошло и root права вам открыты, можно проверить соединение по wifi (SSH) через консоль запустить mc если не запущен, установить подключение ssh для этого жмём на Right (находится сверху) выбрать Shell link, в открывшимся окне прописать root@ваш ip робота, (ip робота можно увидеть в процессе отработки скрипта, он там его несколько раз выдаёт)
При успешной связи мы попадём в файловую систему пылесоса.
18. Теперь находим файл закрытого ключа от вашего пылесоса. Для этого в левой рамке командера нажимаете на две точки.. до тех пор пока они не пропадут. Ищите папку root далее ssh и находим там 4 файла под названием:
config
id_rsa
id_rsa.pub
known_hosts
В правой рамке командера закрыть файловую систему пылесоса и открыть там, например папку documents, сюда копируете эти файлы, далее командер с терминалом можно закрыть.
19. В Линуксе открываем папку documents копируете полученные файлы на отдельную флешку, телефон или в виндовс. Обычно файлы заблокированы от копирования, чтобы снять защиту, открываем терминал где находится эти файлы и прописываем:
sudo su
Далее:
chmod ugo+rwx config
chmod ugo+rwx id_rsa
chmod ugo+rwx id_rsa.pub
chmod ugo+rwx known_hosts
Снимается защита файла и можно спокойно копировать.
20. Можно вытащить провод из пылесоса, установить акум, поставить крышку и включить его.
Следующий пост будет тоже о пылике, расскажу ещё полезных тематик.)
Если есть вопросы, пишите!
Всё расскажу объясню, буду признателен Вашей подписке, спасибо!