Комментарии 132
А если уж в формате визитки, можно заморочиться с конструкцией из двух поворачивающихся половин, чтобы в обычном состоянии разъем был в центре
Плату такой толщины заказывать дорого, да и для визитки не очень практично.А как же элементы на плате? За них же все цепляться будет.
Мне кажется, эстетичней было бы разместить все SMD-элементы на противоположной стороне, на которую наклеивать утолщающую накладку с вырезами под элементы.
А цена? В начале статьи шло акцентирование на минимальную стоимость. И на какую отметку вышли?
Ну и не трудоустроят.
Может он на собес вообще на за трудоустраиваться приходил.
Совать чужое usb в свою сеть — надо быть сильно упоротым.
Кто может что по виду определить?
Девушка-HR?
Если она сунет "это" в свой рабочий комп, то я, как безопасник, сразу с ней распрощаюсь.
А чувак не на собес приходил, я ж говорю. Ему ваши потуги до лампочки, он свой лям уже заработал.
Скорректирую вопрос: как заработать "лям" таким экстравагантным способом?
Вариант 2: Производим атаку на фирму, в которой 10 человек среди которых нет безопасников.
Я уже 3 раза сказал, что никто не ходил никуда трудоустраиваться.
Вы вообще не представляете себе мир, где люди работают сами на себя?
Суть-то просто в возможности такой атаки. Последствия и риски, поверьте мне, такие люди всегда продумывают наперед.
Девушка-HR?
Если она сунет "это" в свой рабочий комп, то я, как безопасник, сразу с ней распрощаюсь.
Хм. А может стоит распрощаться с актёром, играющим в театр безопасности, но оставляющим возможность атаки на сеть с помощью флешки, воткнутой в комп рядового эйчара?
Согласен, работать внутри в таких условиях не особо приятно.
Но это если смотреть с точки зрения наёмного работника, который думает только о себе.
А с точки зрения владельца и безопасников — всё ок, закрываются все дыры, который могут принести ущерб, даже потенциально.
И это не просто норм, а маст хэв, прямая обязанность.
И чем больше потенциальных потерь, тем больше ограничений. А иначе гнать в шею и безопасников.
И это — у вас что, русский не родной?
Я не говорил, что лично я безопасник. Я лишь именно так вижу их работу.
А песочница зачем? Вообще зачем антивиры, фаерволы, если своя сеть закрыта и ничто не подключается? Поясню — если набиваете себе цену, как безопасника, то готовьтесь, что Вы сами будете эти флешки совать в комп, потому как сам работал сисадмином, и если начальник говорит Надо, то это значит Надо любым способом, только не Нельзя
Всё уже придумано до нас
А полноценный usb-killer состоит не только из одного конденсатора, а из схемы, которая из VBUS делает -120 вольт и импульсом отправляет их на D+/D-. Как ещё можно объяснить наличие такой схемы в устройстве, у которого единственный доступный пользователю разъём — это USB? Это уже похоже на историю с хозяйкой дома, которая специально отравила водку и не промаркировала её должным образом, что и убило воров.
Не использовать SPL, HAL и другие библиотеки для программирования периферии. Этого правила я придерживаюсь и на основной работе
Хотелось бы услышать аргументацию. Понятно, что код получается компактнее, но переносимость, командная работа, передача проекта, тестирование. Эти составляющие сильно страдают. Если для пет-проекта регистры — полезно, то для бизнеса, мне кажется, такая категоричность не оправдана.
3. Не использовать Кучу.
4. Не использовать динамическое выделение памяти.
А в чем разница, применительно к МК?
Насчет кучи и памяти — просто разряжаешь револьвер и откладываешь его в сторону. В случае ошибки программа просто завершается и перезапустить её некому (разве только вотчдог какой).
Не использовать кучу и динамику это стандартное неписанное правило (а вообще то писанное в MISRA и подобных стандартах) при работе с МК с малым количеством ОЗУ и в режиме без ОС.
Со стороны бизнеса пока претензий не было.
Куча — не очень хочется тащить системные библиотеки в маленькие проекты.
Динамическое выделение памяти — не очень безопасно.
Вы уверены, что в вашем коде меньше ошибок, чем в стандартной библиотеке?
Кстати, что имеется в виду под «стандартной библиотекой»?
А зачем коммутировать питание spi-flash? Тем более рвать землю, а не Vcc? Почему SCK подтянут к Vcc, при этом CS не подтянут вообще. Зачем нужен диод последовательно с LDO?
Рвал землю, потому что так в протеусе были внятные результаты, в обратном случае — нет.
SCK нужно подтянуть, так как команды SPI flash начинают читаться по первому спадающему фронту, что и обеспечивается подтяжкой.(из документации)
НА счёт CS, забыл. В прототипе подтянут был.
Резистор на CLK лишний, т.к. после инициализации SPI линия переходит в состояние "0" либо "1" в зависимости от выбранного режима. Такие подтяжки используют для терминирования линии, чтоб восстановить форму сигнала. Но в данном случае он и без неё должен быть удовлетворительным. И скорее всего подтяжка к земле более эффективна. А вот подтяжка на CS запрещает работу памяти на момент пока МК не инициализировать данный пин и очень желательна. А рвать землю очень плохо.
Зачем нужен R7 если МК уже содержит внутри встроенный резистор: USB connect / disconnect capability (controllable embedded pull-up resistor on
USB_DP line)?
Как минимум, шрифт решает задачу усложнения чтения надписей по зрительной памяти — можно помахать такой визиткой без риска нежелательной обратной связи.
Отличная визитка.
Сразу показывает фактический уровень соискателя.
Сейчас вызову на себя гнев местной публики — но как это выглядит с другой стороны:
Мне, как начальнику группы аппаратной разработки HR приносят это и говорят — есть кандидат.
Даже не вставляя в комп — видно что это разработчик начального уровня.
Объясню ход моих мыслей:
1) Мы живем в России, говорим по русски — а тут нет ни одной буквы по русски. Значит человек мимикрирует под разработчика как минимум мирового уровня. Но даже директора крупных международных компаний в России делают визитки на русском.
2) USB — разведено без дифпары
3) На USB добавлена защита — что в данном применении излишне, потому что визитка это по сути одноразовая вещь. Значит она должна быть максимально дешевой.
4) Напаянный в толщину разъем — значит то, что человек экономил на печатной плате (не стал делать толщиной 2.4мм как в стандарте), что опять же вызывает когнитивный диссонанс с п3.
5) LDO — для удешевления конструкции заменяется на два диода или на стабилитрон с резистором.
6) Громоздкие корпуса элементов, увеличивающие общую толщину конструкции. В идеале — флешку и контроллер в qfn. А еще лучше без внешней флешки
7) Шрифт на визитке режет глаза — но такой шрифт почему то нравится студентам (сам раньше тащился от него, потом понял что ариал наше все)
8) Нет крутых фишек, стандартная схемотехника, легко программируется.
9) Нет пасхалок или ребусов (даже никакого qr кода или чего то подобного)
10) Соискателю 26 лет
11) Белый номер маленькими цифрами на плате — такие маркировки ставят jlcpcb (Китай) а это значит что можно было заказать монтаж там же и детали выбрать из перечня их компонентов. Вышло бы дешевле + экономия времени разработчика. Отличительная черта начинающего — не задумываться о экономии времени, делать все самому. Тут сразу видно, что это ручная пайка (светодиоды и их резисторы не врут).
12) Много "лишних" элементов в схемотехнике. Да, конденсаторы по питанию, токограничительные резисторы и светодиоды нужны в промышленном решении — но создают лишнюю цену в визитке, которая опять же повторюсь — одноразовая.
Что можно было сделать лучше?
Найти контроллер в минимально возможном корпусе, не требующий обвязки для подключения к USB. Например в каком нибудь qfn24 или msop8. Возможно это был бы даже не stm, а что то редкое и диковинное. Возможно стоило рассмотреть одноразово программируемые МК.
На самой визитке написать нормальным шрифтом и Русскими буквами свои данные.
Дать QR с адресом резюме (для тех — кто не хочет тыкать неизвестное изделие в свои ПК)
PS Извиняюсь за возможные ошибки и лексические не стыковки — голова уже не работает, пора спать.
Я абсолютно не шарю во всем этом, но даже я вижу, что можно было бы тупо взять digispark, развернуть его в один слой, и получилось бы что-то более компактное и красивое.
Тем не менее, я с посылом не согласен:
- "Значит человек мимикрирует под разработчика как минимум мирового уровня" — странная логика. Английский в среде разработке — незаменимый навык. Так что он обычно помогает, а не вредит (как в случае с вами, видимо, по религиозным принципам). Или даташиты стали переводить на русский? Опять же, я не знаю, что у вас там в железе, но в обычной разработке чуть ли не 90% новой информации (статьи, документация, книги) поступает на английском, так что странно хотеть от соискателя какой-то особой любви к русскому языку и связывать английские буковки с уровнем. Соискатель, скорее всего, тоже хочет знать, что вы английские буквы читать умеете, потому что иначе вы отрезаны от всего мира, документации, технического прогресса.
- "Соискателю 26 лет" — и что это значит? Некоторые к 26 имеют чуть ли не 10 лет опыта, некоторые только из университета выпустились. Это нормально.
- "Отличительная черта начинающего — не задумываться о экономии времени, делать все самому" — а быть начинающим — это плохо? Готовность разобраться во всем, и сделать проект самому от начала до конца — тоже плохо? Или на существование имеют право только сеньёры?
Тем более, судя по визитке, автор разрабатывает софт для железа, а не само железо. Т.е. вот это все — дополнительные навыки, которые у некоторых людей на аналогичной должности вообще может не быть, даже на таком уровне.
Так что весь комментарий превращается в очередную историю "как я отклоняю кандидатов, даже не дочитав резюме, просто потому что мне не понравилось X"
Вот много людей вообще готовы предоставить с собой портфолио такого уровня? Я вот занимался поиском кандидата и человек с такой визиткой был бы явно отмечен. Придираться на самом деле можно к любой плате, тот же юсб не делается в 2х слоях, если говорить о правилах. Возможно часть ошибок сделана специально, что бы был повод поговорить — подискутировать. Лично я бы пригласил такого человека, с удовольствием посмотрел настройки проекта. Как показывает мой опыт в разработки — понятие правильно у всех очень разное…
тот же юсб не делается в 2х слоях, если говорить о правилах
Вы не поверите, но вполне себе делается. И не только он. Если вы можете соблюсти целевой импеданс дифпары. Даже больше вам скажу, в двух слоях люди ddr память делают и она работает.
Правда, это картинка без учета маски. С маской импеданс немного меньше получается.
А конденсаторы по питанию вообще обсуждению не подлежат.
Тогда зачем представлять себя объектом, который не показывает твои профессиональные навыки как программиста? Это все равно что сантехник сделает визитку в виде деревянной разделочной доски кмк.
И почему не показывает? Программа под контроллер написана? Написана. Чановская библиотека использована — вроде бы нет. Даже атмеги пресловутой и той нету. А то, что программист не в курсе, что на переходы не надо ставить термобарьеры или с питальником не до конца разобрался — это в любом случае повод поговорить.
Но шрифт, да, вырвиглазный. Я когда себе визитку делал, остановился на ГОСТ 26.008-85. Наиболее читабельный.
Потому что сферический программист софта под железки с навыками разработками самого железа, внезапно, ценнее, чем программист без.
Ниже кстати разобрали его код
https://habr.com/ru/post/509138/#comment_21803122
Большее количество элементы в глазах неспециалиста увеличивают сложность изделия, в отличие от единственного qfn на голой плате.
За отсутствие защиты на usb некоторых именитых брендов нужно публично сечь.
0. За такую схему надо бить ссаными тряпками.
1. Свастику на XT2 можно было развернуть нормально. USBLC6 пофигу, где D-, а где D+. Если удобнее в разводке так — не вопрос, сделать D- и D+ нетлейблами.
2. Тут же, вместо нормального значка земли просто нетлейбл. И на XT3. А в остальных местах — нормальный значок земли. Зачем?
2. NC на U2 не помечен крестиком, как NC. Но это мелочь.
3. Кондёр на U3… серьёзно? Это же додуматься надо было нарисовать кондёр не возле VCC, а возле земли и тянуть через половину схемы линию.
4. Земля на светодиодах — я даже не знаю уже что сказать.
5. R10 и R11 включены… интересно. Ну и соотношение их номиналов явно намекает на наличие психических отклонений у автора. Да и смысл вообще коммутировать питание флешки.
6. Конденсаторы на U1 — см. п.3.
7. VD1 — вот просто, зачем? Защита от переполюсовки? Но на выходе?!
В общем, поздравляю, идеальная визитка, чтобы ваше резюме навсегда внесли в чёрный список))
1. bitbucket.org/i_soba/vidget_pcb/src/master/History Архивы? Под гитом? Вы серьёзно что ли?!
2. bitbucket.org/i_soba/vidget_code/src/master/Periph/SPI/HW_stmf070x_spi.cpp
Гениально. Запускаем DMA, чтобы ядро не тупило бесполезно и… висим в цикле, ожидая окончания передачи. Ещё и бесполезное continue зачем-то.
3. bitbucket.org/i_soba/vidget_code/src/master/Periph/USB/HW_stmf070x_usb.cpp
Просто приведу пример:
if(standart_usb_request.wLenght > MSC_USB_STRING_SERIAL_DESCRIPTOR[0]){standart_usb_request.wLenght = MSC_USB_STRING_SERIAL_DESCRIPTOR[0];}
Как думаете, вменяемый человек будет это хреначить в одну строчку?)
Думаю можно было бы сделать step-down использовав медь и текстолит платы. И тот же контроллер плюс один ключ. Это было бы более зрелищно!
Ну а от моргания синих и красных- лично меня уже укачивает. Мне недавно очень понравились янтарного цвета smd светодиодиоды. Такой прям ламповый у них цвет. Как в детстве, у лампочек в конструкторе.
Насчет HAL, я сам не профессиональный электронщик, но товарищи, наоборот считают, что в случае STM это оправданное в промышленном варианте решение.
Элегантный вариант.
Живучий вариант.
Для меломанов.
Как-то, лет 10 назад, сестре на одном из воркшопов (она работает в туристической отрасли) дали визитку, как на втором фото. Воткнула в рабочий комп под Ubuntu – тишина, нет флешки. Решили воткнуть в комп с Виндой. И тут начинается интересное. На компьютере стоял Касперский с его блокировками всяких внешних устройств. Вставляем визитку в USB – Касперский говорит, что подключена клавиатура, введите пин-код. Ок, интересно что дальше. Отключаем в Касперском контроль внешних устройств, вставляем визитку. Открывается окно консоли, очень быстро вводится команда на запуск IE и пытается открыться сайт арабской гостиницы. После такого финта больше никогда не подключали к компьютерам такие визитки.
Вот такой вариант и более красивый, и полезный. Может надолго задержаться сувениром у «начальника транспортного цеха» и контакты кандидата будут перед глазами. А хотите разные файлы и резюме разместить (да ещё и актуальные) — поместите QR-код и/или короткую ссылку текстом.
https://habr.com/ru/post/391395/
Попытаешься, сразу окно на полэкрана с отвратительным звуком, и коллеги услышат, и админы узнают.
Между гиками — да, идея есть и исполнение супер. Как сувенир — тоже хорошо. Еще можно шефу подарок — с его данными какими то…
Ну а по прямому назначению визитке с максимальными данными, резюме и тд. и тп., достаточно qr кода…
У меня не работает ))))
Невооруженным глазом видны косяки на плате, делая совершенно очевидным довольно низкий уровень разработчика и отсутствие опыта, хотя казалось бы: это — визитка, а значит должна быть вылизана до блеска.
Ну и шрифт весьма уг.
есть ли в этом большой смысл
Смысл — привлечь внимание. В те времена, когда визитки (бумажные) были редкостью — это привлекало тоже внимание. Были визитки-CD. Было когда-то круто, когда на визитке есть email и www-адрес. А визитка с припаянными микросхемами — это киберпанк, и немного кич. Как золотое тиснение на визитке.
Как золотое тиснение на визитке
Боюсь спросить тогда, чем считать золотое покрытие на визитке — печатной плате.
наносить золото куда попало. Хоть на картон, хоть на печатную плату.Куда попало, в т.ч. на плату — сусальное золото либо амальгама, либо раствор в царской водке. Поэтому сусальное золото.
Золото на плату с целью снижения сопротивления и противодействия коррозии, в т.ч. электро- — правильное производство (хотя и кустарно выходит неплохо, на то оно и золото).
Вариант 2 — ионистор, формата толстой визитки гарантированно хватит.
Моя USB визитка