roboforum.ru

Технический форум по робототехнике.

Кастомный card reader

Кастомный card reader

roboforumer » 13 окт 2017, 07:16

Привет всем!
Хочу сделать такую штуку, чтобы можно было втыкать usb-флешку в устройство, и оно распознавало файловую систему, проходилось рекурсивно по папкам и считывало расширение и заголовки файлов в каждой папке. Затем, после сверки расширений и заголовков файлов по заранее предустановленному "белому листу", передавало эти файлы на ПК.
Если кто знаком с PHP, то получается, что принцип почти тот же самый как при передаче и проверке фалов на сервере, только в железе. Сам пишу на пыхе, так что выражаюсь как могу :D Но с С++ у меня очень мало опыта :(
Я так понимаю, что задача вполне реализуемая и к тому же интересная, но нужна ваша помощь :)
Думаю рассмотреть 2 варианта: arduino или что-нибудь на arm (pi - слишком дорого для такой задачи, мне кажется).

1) Arduino
Вероятнее всего, мне нужен модуль arduino usb host shield либо что-то самопальное на MAX3421 или аналог.
Если кто может подсказать какие-нибудь примеры кода для работы с файлами с этим модулем, то буду очень вам благодарен!
Что касается передачи файлов на ПК, то тут тоже вопрос. Вообще, планируется пропускать файлы не более 10мб, а то смысла от этой штуки будет не очень много, не смотря на то, что передача по serial может быть около 2Mbps, по крайней мере, как это пишут тут http://forum.arduino.cc/index.php?topic=21497.0
Я думаю, что можно написать специальную прогу, которая будет как раз ловить данные по последовательному порту, затем пихать их в специальную папку или обрабатывать на ходу.

2) ARM
Я так полагаю, что тут можно обойтись без специального шилда и использовать какой-нибудь developer board сразу как usb-host?
Скорее всего, тут и со скоростью передачи файлов будет намного лучше. Но единственное для меня это будет очень сложно, так как именно с arm дело не имел, только экспериментировал с ардуино (метеостанция и все такое). Может это говорит о том, что уже пора уже начать экспериментировать с arm)))
Надеюсь есть какие-нибудь готовые библиотеки для работы с файловой системой, а то будет печально(
Какой девелопер борд посоветуете в этом случае?
Еще интересует, можно ли сделать эмуляцию флешки/файловой системы, чтобы ПК распознавал подключенный МК через usb как флешку? Т.е. использовать как usb-host и usb-device одновременно. Таким образом можно было организовать "прием" файлов без всякого специального софта, если правильно все понимаю.

Прошу не пинать за мою терминологию и надеюсь услышать позитивные мысли и советы :)

Re: Кастомный card reader

Myp » 13 окт 2017, 10:26


Re: Кастомный card reader

Romikgy » 13 окт 2017, 10:35

фильтр файлов для пк?
ардуино - если и потянет такое, делать будет медленно
устройство на арм будет шустрее,
но если вы далеки от си .... то для вас эта задача будет очень сложна... ведь вам на арме надо будет реализовать хост юсб для флешкии или ост микросд ... а после поднять виртуальный носитель для пк!!! (оба этих варианта в сети скорее всего есть, но собрать это все вместе , да плюс что бы оно корректно заработало думаю задачка еще та... а ваших знаний по пыху будет явно очень недостаточно)
PS конечную цель озвучили бы , может есть (или придумается) более изящное решение

Re: Кастомный card reader

Angel71 » 13 окт 2017, 14:31

ардуины, армы, флешки,... чудно, только с текущим описанием это не более, чем бред. не может носитель инициировать передачу файлов и тем более не может управлять, что с ними делать. только софт на компьютере может запросить данные с носителя, он же и "решает", что с этими данными потом делать. пишется софтина, которая отслеживает подключение носителей и при обнаружении сканирует файловую систему, копирует, удаляет и т.д.

Re: Кастомный card reader

Madf » 13 окт 2017, 15:04

Независимый программно-аппаратные решения похоже плана делают ради копирования "лоб в лоб" информации, в полевых условиях.)

Re: Кастомный card reader

Angel71 » 13 окт 2017, 15:30

мудрёж ради мудрежа это тупо. что бы делать что-то кроме программы, нужно сначала обосновать, зачем это нужно.

Re: Кастомный card reader

Myp » 13 окт 2017, 15:37

Angel71 писал(а): тем более не может управлять, что с ними делать.
ещё как может =)
картридер читает список файлов на флешке, потом прикидывается в системе флешкой с этими файлами.
при желанию он может прикидыватся флешкой лишь с некоторыми файлами или же показать компьютеру несуществующие реально на флешке файлы.

можно даже замутить аппаратное шифрование, чтобы на лету шифровать/дешифровать файлы которые будут на произвольной флешке.

Re: Кастомный card reader

Angel71 » 13 окт 2017, 15:49

там написано про команды хосту, а ты пишешь немного о другом. шифрование, сокрытие файлов/разделов, многопользовательское/многозадачное отображение диска и фильтрацию (а сейчас прикинься диском вот этого пользователя. а сейчас будем печатать на 3д принтере, так что давай только нужные файлы для печати. а сейчас буду платку рисовать или код для вот этого проекта, таффай только файлы этих проектов. а ну отобрази только файлы отчётов за такой диапазон дат), дублирование информации на носителе (+всякие контрольные суммы, как в раре инфу для восстановления и т.д.), более адекватную запись данных на некоторые современные чипы (не задалбывать записью в одни блоки на чипы у которых всё хуже с циклами записи, а расспределять нагрузку, как на ссд) и хз что ещё... да можно, много чего можно, только часть всех этих гипотетических вещей всё-равно не нуждается в дополнительной железке, да и к данной теме с текущим описанием задачи это не относится.

Re: Кастомный card reader

Myp » 13 окт 2017, 16:57

про команды хосту в посте не заметил, но и это тоже можно без проблем =)
вот буквально 3 дня назад было https://geektimes.ru/post/294271/
просто втыкаешь девайс в комп, а девайс сам с себя берёт файлы и кладёт их в нужные места без участия пользователя.

у нас тут на работе системники HP, там в биосе запрещаются любые USB устройства кроме клавиатуры и мыши.
втыкаешь такой девайс, который прикидывается клавиатурой, девайс создаёт новый текстовый файл, потом печатает в файл нужное количество данных,
а в конце переименовывает файл в нужное расширение.
оставил на ночь и утром на рабочей машине можно смотреть кинчики.

Re: Кастомный card reader

Angel71 » 13 окт 2017, 17:47

ну и к чему этот детский сад "может взломать любой компьютер" с уточкой? ни в usb mass storage, ни в файловых системах fat/ntfs/ext/... нет ничего для "скопируй этот файл с меня вот в ту папочку".

Re: Кастомный card reader

Myp » 13 окт 2017, 18:53

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

Re: Кастомный card reader

Angel71 » 13 окт 2017, 20:08

мдя. на шаражкиной конторе ты похоже привык штаны просиживать, имитируя бурную деятельность вместо реальной работы, фильмы смотрите, часами чаи гоняете, на перекуры бегаете, решаете гипотетические задачи, которые не нужно решать, но... читай внимательно написанное, хотя бы иногда. "невозможно" к хиду не имеет вообще никакого отношения, ты подменяешь смысл написанного. в самом масс сторадж и основных файловых системах нет ничего для инициализации передачи файлов и тем более что бы "флешка" управляла какие файлы куда записывать. на уровне ос или прикладного по, уже можно очень много чего реализовать, а делать это с использованием масс сторадж, хид или ещё какого класса, с доп. железои или без, это уже зависит от условий задачи (в том числе какая ось, антивирус и прочий софт, как это всё настроено и прочее). а в условиях пока примерно так "сканировать диск, проверять файлы с определёнными расширениями и если их заголовки соответствуют расширению, "передавало" эти файлы кудат там на компьютер". для этого достаточно просто написать небольшую утилиту. необходимости в доп. железках пока нет и по этому про возню с железом и было написано "с текущим описанием это не более, чем бред". уточнения задачи были? нет! :pardon: не, если так нравиться фигнёй страдать, продолжай генерировать тонны вариантов решения для не сформулированных условий задачи.
Последний раз редактировалось Angel71 13 окт 2017, 20:33, всего редактировалось 1 раз.

Re: Кастомный card reader

Myp » 13 окт 2017, 20:32

Angel71 писал(а):как реализовать эту утилиту

какая ещё утилита?
второй раз перечитал верхний пост, речь именно об устройстве, именно железка для фильтрации файлов на флешке.
втыкать usb-флешку в устройство, и оно распознавало файловую систему

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

ты конечно можешь знать миллион и один способ сделать это при помощи софтины, но об этом никто не спрашивал.
тем более твоя субъективная характеристика "это тупо", здесь никому не интересна.

Re: Кастомный card reader

ALS » 13 окт 2017, 20:39

Myp
Если я правильно понял про уточку, то это эмулятор клавиатуры, который при подключении к ПК открывает консоль и чего-то там быстро-быстро печатает ("рассовывает по папочкам").
Т.е. задачу решить можно и так тоже, но USB mass storage здесь и рядом не валялся.

Re: Кастомный card reader

Angel71 » 13 окт 2017, 20:43

Myp, допустим в винде легко реализуется отслеживание подключения и отключения устройств. при подключении можно предотвратить назначение имени диску. ещё можно создать виртуальный диск. так вот, получается, что можно скрыть любой или только определённый физический диск, а на виртуальном диске(ах) уже можно как угодно отфильтровывать или что там ещё понадобится. с виртуализацией в винде и различными вариантами подключения мк по юсб возиться приходилось :pardon: возможностей на софтовом уровне мягко говоря прилично и без причины возиться с созданием железа... удачи.
ALS, да можно сделать и комбинируя масс сторадж и хид. только некоторые антивирусы и прочий защитный софт такую связку могут блокировать. в винде даже на уровне политик безопастности может быть отключена командная строка. +куча других нюансов, которые могут быть для коняшки в вакууме.
Последний раз редактировалось Angel71 13 окт 2017, 22:25, всего редактировалось 1 раз.


Rambler\'s Top100 Mail.ru counter