Программа для подключение флешки

Когда человек много лет рыл бункер и запасал там продукты, он должен испытывать глубокое моральное удовлетворение, если бункер понадобился. Он будет довольный заявлять: «А я говори-и-и-ил!» То же касается и того, кто делал запасы продуктов в кладовой, когда все закупались в магазинах только на сегодня. А вот с нашим комплексом для удалённой работы Redd как-то и не хочется злорадствовать. Он проектировался для удалёнки в мирное время. И использовался задолго до первых новостей из Китая.

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

Но так как сейчас удалёнка у всех на устах, возникло желание поделиться одной наработкой, которая может кому-то помочь. Это не наша разработка, я проводил исследования в рамках работы над сервисом удаленной работы с отладочными платами All-Hardware. Вот их результаты сейчас и опишу. Проект USB/IP известен многим. Но он давно свёрнут авторами. Самые свежие драйверы были под WIN7.

Как подключить флешку к телефону Android: используем OTG

Сегодня я опишу, где скачать вариант для WIN10, и покажу, как я его проверял. Кроме того, разработчики современного аналога уверяют, что у них сделан не только Windows-клиент, но и Windows-сервер (правда, в этом режиме я тестирование не вёл: задача того не требовала). Но кому-то это тоже может оказаться полезным.

Предыдущие статьи цикла

  1. Разработка простейшей «прошивки» для ПЛИС, установленной в Redd, и отладка на примере теста памяти.
  2. Разработка простейшей «прошивки» для ПЛИС, установленной в Redd. Часть 2. Программный код.
  3. Разработка собственного ядра для встраивания в процессорную систему на базе ПЛИС.
  4. Разработка программ для центрального процессора Redd на примере доступа к ПЛИС.
  5. Первые опыты использования потокового протокола на примере связи ЦП и процессора в ПЛИС комплекса Redd.
  6. Веселая Квартусель, или как процессор докатился до такой жизни.
  7. Методы оптимизации кода для Redd. Часть 1: влияние кэша.
  8. Методы оптимизации кода для Redd. Часть 2: некэшируемая память и параллельная работа шин.
  9. Экстенсивная оптимизация кода: замена генератора тактовой частоты для повышения быстродействия системы.
  10. Доступ к шинам комплекса Redd, реализованным на контроллерах FTDI
  11. Работа с нестандартными шинами комплекса Redd
  12. Практика в работе с нестандартными шинами комплекса Redd

Введение

Сначала краткий рассказ, что такое USB/IP. Это комплекс программ, которые позволяют пробросить USB-устройство через сеть. Само устройство подключено к серверу. Клиент располагается на другой машине. При этом на клиентской машине имеется приложение, совершенно не рассчитанное на работу с сетью.

Как подключить флешку к телефону или планшету Android

Оно хочет настоящее USB-устройство. И оно получает информацию, что это устройство подключено. На это устройство встаёт штатный драйвер. В общем, клиент считает, что он работает с локальным USB-устройством.

Кто-то так пробрасывает ключи защиты. Мы же проверяли возможность удалённого доступа к JTAG-адаптеру.

Проект USB/IP активно развивался до 2013 года. Затем Windows-ветка остановилась. В целом, был выпущен даже двоичный подписанный драйвер. Но он был под Windows 7. Linux-ветка же продолжила развитие, и этот сервис оказался встроенным в саму операционную систему. По крайней мере, в сборку Debian он точно встроен. Причём для Linux имеется и клиент, и сервер, а для Windows исходно был сделан только клиент.

Сервер под Windows сделан не был.

Читайте также:
Код ОКПД 2 неисключительные права использования программы сбис

Существует очень хорошая статья на Хабре, которую можно использовать и как справочник по работе с данным сервисом, и как отзыв о работе с ним.

Вариант под актуальную версию Windows

Но как бы ни была хороша Windows 7, а она уже мертва. В рамках работ над All-Hardware мы рассматривали разные варианты решения одной из проблем, и надо было просто проверить ряд альтернатив по принципу «подойдёт — не подойдёт». Тратить много человеко-часов на проверку было невозможно. А переделка драйвера под Windows 10 могла затянуть в себя.

Поэтому был проведён поиск в сети, который вывел на проект usbip-win. На момент его обнаружения свежий вариант был датирован 23 февраля 2020 года, то есть проект живой. Он может быть собран и под WIN7, и под WIN10. К тому же, в отличие от оригинального проекта, может быть собран не только Windows-клиент, но и Windows-сервер.

Я проверил, проект прекрасно собирается и устанавливается, поэтому дальнейшая работа велась с ним. В файле readme есть ссылка на готовый двоичный код для тех, кто не хочет самостоятельно производить сборку.

Грустная часть проверки: серверная часть

Сначала я расскажу, как проводилась проверка в рамках нашего проекта. Там всё кончилось не очень хорошо. Проверяли адаптер ST-LINK, установленный в корпус комплекса Redd, благо я уже отмечал, что в комплексе используется ОС Linux сборки Debian, а эта сборка содержит встроенный сервис USB/IP.

Согласно статье, устанавливаем сервис:

sudo apt-get update sudo apt-get upgrade sudo apt-get install usbip

Дальше в статье подробно рассказано, как автоматизировать процесс загрузки сервиса. Как я разбираюсь в Линуксе, я уже многократно писал. Плохо разбираюсь. У меня нет привычки с умным лицом цитировать чужие тексты, слабо понимая суть. Поэтому я ещё раз напомню ссылку на замечательную статью, где всё рассказано, а сам покажу, что делал я при каждом старте ОС (благо всё было нужно только для проверки):

sudo modprobe usbip-core sudo modprobe usbip-host sudo usbipd -D

Назначение первых двух из вышеприведённых заклинаний мне неизвестно, но без них не создаются какие-то каталоги, а без этих каталогов потом не будет экспорта USB-порта. Каталоги создаются только до перезапуска системы. Так что создавать их надо каждый раз. Третья строка — с нею всё понятней, она запускает сервис.

Теперь смотрим, как зовут устройство:

Получается, что нам нужно устройство и busid, равным 1-5.4.1.3.

sudo usbip bind —busid=1-5.4.1.3

Всё, сервер готов к работе.

Грустная часть проверки: клиентская часть

В Windows устанавливаем драйвер (делаем это только один раз, дальше он будет всегда установлен). Для этого запускаем от имени администратора файл usbip.exe с аргументом install:

usbip.exe install

Теперь смотрим, доступно ли нам устройство:

usbip.exe list —remote=192.168.10.123

Убеждаемся, что оно присутствует в списке. Ну, и подключаем его:

usbip.exe attach —remote=192.168.10.123 —busid=1-5.4.1.3

В менеджере устройств появляется новое USB-устройство, Keil его прекрасно видит…

Но на этом всё приятное кончается. Небольшая программа заливается во флэшку около минуты. Попытки шагать по строкам идут от 5 до 20 секунд на каждую строку. Это неприемлемо. Во время паузы в обе стороны идёт трафик примерно 50 килобит в секунду.

Долго и вдумчиво идёт.

Честно говоря, ограничение по времени привело к тому, что я только предполагаю, почему всё было так плохо. Подозреваю, что там по сети бегает JTAG-трафик. А он бегает небольшими пакетами в обе стороны, отсюда и проблемы. Так было завершено исследование с результатом: «Для проекта не подходит».

Более весёлая часть: подготовка

Ещё тогда мне запало в голову, что я краем глаза видел, что в JTAG-адаптере CMSIS DAP по USB ходит не чистый JTAG-трафик, а команды. Сам JTAG-трафик формируется уже внутри адаптера. Давно хотел проверить это, да всё руки не доходили. Массовый перевод на удалёнку заставил это сделать (возникла задачка). Что такое CMSIS DAP? Это JTAG-адаптер, рекомендованный самой компанией ARM для контроллеров Cortex-M.

Читайте также:
Основные возможности программ браузеров по работе с гипертекстовыми документами

Исходные коды для разных контроллеров выложены на GitHub, можно спаять адаптер на базе любого из них. Я сейчас дам ссылку на клон проекта, адаптированный под макетную плату «Голубая пилюля»: https://github.com/x893/CMSIS-DAP, но поисковые системы могут вывести и на официальный аккаунт ARM.

Чтобы не тратить на сервер целую PC, для проверки, я сделал этакий комплекс Yelloww (чисто по цвету пластика, из которого сделан корпус):

Роль сервера выполняет Raspberry Pi с установленной ОС Raspbian (это тот же Debian, а значит, там имеется требуемый сервер). Одна из «голубых пилюль» выступает в роли адаптера CMSIS DAP, вторая — в роли отлаживаемого устройства.

Точно так же ставим и настраиваем сервис. Разве что здесь список устройств, допустимых к экспорту, намного скромнее:

Понятно, что здесь экспортируем и импортируем устройство busid=1-1.4.

И вот тут конкретно с CMSIS DAP у меня периодически возникает небольшая проблемка. В менеджере устройств я вижу такую неприятность:

Напомню, что статья пишется по принципу «Лучше неплохая, но сегодня, чем идеальная, но завтра». Проблемы удалённой работы возникают прямо сейчас. Надеюсь, в обозримом будущем они уже будут не актуальны. А пока актуальны — показываю, как я обхожу данную проблему вручную. Сначала я отключаю устройство:

Затем сразу же включаю:

И оно начинает работать без проблем. В Keil меняем отладчик на CMSIS DAP:

При работе по локальной сети всё просто летает. Но понятно, что локальная сеть никому не интересна. Я попробовал пробросить порт устройства у себя дома, а затем удалённо зайти на машину на работе и потрассировать «прошивку» оттуда. Связь у моего домашнего провайдера весьма и весьма тормозная, особенно — от меня наружу.

Прошивается контроллер примерно втрое медленнее, чем при прямом подключении к USB. Трассировка… Ну около секунды на строку, точно не больше. В общем, терпимо. С хорошими провайдерами, надеюсь, будет лучше.

Заключение

Проект usbip-win является современной заменой для проекта USB/IP. Он живёт и развивается. При этом он предоставляет для ОС Windows не только функцию клиента, но и функцию сервера. Совместимость с Linux-версией сохранена.

Устойчивость работы удалённого USB-устройства неожиданно поразила. Я был уверен, что возникнут таймауты. Возможно, где-то они и возникнут, но для JTAG-адаптеров не было замечено ни одного сбоя. К сожалению, не все USB-устройства могут быть проброшены через сеть по причине низкого быстродействия получившейся системы. Но в случае с JTAG-адаптерами можно рассмотреть альтернативные вещи.

В частности, CMSIS-DAP вместо ST-LINK.

Оба рассмотренных проекта (usbip-win и CMSIS-DAP) могут быть скачаны с GitHub в виде исходных кодов.

Если это поможет кому-то организовать удалённый доступ к оборудованию, я буду рад. Использование Raspberry Pi позволит бросить оборудование в произвольных местах.

  • системное программирование
  • Redd
  • USB-порты
  • USB-устройства
  • USB
  • удалёнка
  • удаленная работа.
  • Системное программирование
  • Программирование микроконтроллеров
  • Компьютерное железо

Источник: habr.com

Доступ к любому
USB-устройству
в один клик

logo flexihub

Используйте USB-устройства удаленно, когда их нет под рукой. Просто нажмите кнопку “Подключиться”, — об остальном позаботится FlexiHub.

Получите преимущество
FlexiHub поможет вашему бизнесу

Выведите обслуживание клиентов на новый уровень, предоставляя оперативную удаленную техническую поддержку. Проводите дистанционную диагностику и обслуживание потребительского и специализированного оборудования, оснащенного USB и COM-портами, используя сервис FlexiHub for Business.

Получите преимущество

Получите преимущество

Эффективное взаимодействие
Объедините команду при помощи FlexiHub

Делитесь устройствами только со своими сотрудниками и/или приглашайте коллег из других организаций получить безопасный доступ к вашим корпоративным девайсам. Создайте единый аккаунт для вашей команды и легко управляйте подключениями к общему оборудованию.

Эффективное взаимодействие

Эффективное взаимодействие

Отзывы наших клиентов
8 лет, 300к+ зарегистрированных пользователей
на основе 386 отзывов
Sean McCormack Продуктовый дизайнер Отзыв на Trustpilot

Читайте также:
Программа настройка мыши в играх на Андроид

Я оставляю донгл подключенным к мини-ПК в моем домашнем кабинете и могу получить к нему доступ из любой точки мира, используя Интернет и FlexiHub. Это безопасно и отлично работает. Одна из моих лучших покупок.

Nick F. Менеджер Отзыв на SourceForge

Это самый простой способ подключить iPhone к Mac mini удаленно. Кроме того, это приложение добавляет великолепную опцию верификации в ОС.

Richard Hatfield Продуктовый дизайнер Отзыв на Trustpilot

Простая и беспроблемная установка, за что отдельное спасибо. Работает хорошо, проблем с надежностью подключений не было. Одинаково хорошо работает с брандмауэрами и через Интернет!

Jake T. Администратор в Broadcast Media Отзыв на G2

Нам нужен FlexiHub для совместного использования нескольких веб-камер в наших прямых трансляциях. С FlexiHub это возможно с практически нулевой задержкой. Ранее мы пробовали несколько альтернатив, но FlexiHub просто лучший в этом деле.

Dillon Erb Гендиректор/соучредитель Paperspace Отзыв на ProductHunt

Как подключить флешку к смартфону: расширяем память без лишних затрат

Как подключить флешку к смартфону: расширяем память без лишних затрат

У вашего смартфона на Android есть разъем microUSB, который вы, наверняка, используете для подзарядки и подключения к компьютеру. Но что, если документ, который срочно нужно отправить шефу, сохранен на USB-карте памяти. Как подключить флешку к смартфону и прикрепить файл к сообщению?А может быть, вы просто хотите посмотреть фильм, который сохранен на ней или скопировать на внешнюю память важную информацию? К счастью, даже если смартфон по умолчанию не предусматривает подключение флешек, сделать это можно с помощью недорогого адаптера-кабеля и бесплатной программы.

Итак, чтобы подключить USB-флешку к смартфону Android нам понадобятся:

  • Кабель USB OTG (расшифровывается, как на ходу) с разъемом-папой microUSB и мамой на стороне полноразмерного разъема USB. В магазинах, торгующих аксессуарами для мобильных телефонов такой кабель-переходник можно купить за 100 рублей.
  • Смартфон Android с root-правами. Рутировать смартфон не сложно, надо лишь найти инструкцию, подходящую для вашей модели. Поищите их в интернете, введя соответствующий запрос в поисковую строку.

Инструкция по подключению флешки к смартфону

  1. Установите StickMount из Google Play Market.
  2. Подключите OTG кабель к разъему на телефоне.
  3. Подключите флешку USB (или кард-ридер для карт памяти SD) к другому концу кабеля OTG.
  4. Когда на экране появится сообщение “Open StickMount when this USB device is connected” (Открывать StickMount при подключении USB устройств), выберите пункт «Use by default» (Использовать по умолчанию) и нажмите кнопку ОК.
  5. Дайте программе StickMount права суперпользователя по соответствующему запросу. Также разрешите ей всегда получать права суперпользователя. После того как программа смонтирует устройство для хранения данных появиться сообщение в виде «Active mounts: /sda/usbStorage/sda1?. Это сообщение свидетельствует о том, что USB флешка успешно подключилась к смартфону и готова к использованию (чтению и записи).
  6. Откройте файловый менеджер, установленный на вашем телефоне. Если на смартфоне еще не установлена удобная программа для работы с файлами, рекомендую воспользоваться бесплатным Astro File Manager.
  7. В программе перейдите в накопитель USB. Если вы в Astro File Manager, то тапните по «usbdisk» в главном меню программы. В результате откроется флешка. В некоторых других файловых менеджерах, для того чтобы открыть присоединенную флешку, надо тапнуть по «USB Storage» или чему-то похожему.
  8. Теперь можно делать любые операции с файлами: копировать, перемещать, открывать и т.д. На смартфоне Android с USB-флешкой мы можем совершать практически все те же операции, что и на обычном компьютере. С нее можно даже воспроизводить видео, хотя часто оно демонстрируется рывками из-за недостаточно широкой пропускной способности порта. Я рекомендую вам скопировать видеофайл в память телефона или на карту памяти microSD, а уже затем открывать его.

Источник: kakdelateto.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru