Монтаж печатных плат в китае

Обзор заказа монтажа печатных плат в JLCPCB уже тут был mySKU.me/blog/china-stores/75773.html. Хочу поделиться своим опытом. До этого заказывал монтаж на заводах в Зеленограде, в Новосибирске. Решил посмотреть что нам предложат китайцы.

Опыт заказа плат и комплектующих в jlcpcb.com (lcsc.com) у меня большой, качеством всегда был доволен (сроки часто срывают, но не сильно). Небольшие партии (10-30шт) идут DHL / EMS, большие партии(200-500шт) через посредников в китае. Также кроме плат заказываю трафареты «в рамке» для использования на трафаретом принтере.

Страница сервиса: jlcpcb.com/smt-assembly
Предполагаем что вы уже умеете готовить герберы для обычного производства печатных плат. Это подробно расписано на сайте, и проблем нет. Я веду разработку в диптрейс, и там экспорт герберов производится нажатием двух кнопок. Если вы работаете в английской версии диптрейс и не используете русскоязычные названия слоёв «верх» и «низ», то файлы даже не надо переименовывать. Хватает таких файлов:
пример для 6 слойной платы:
BoardOutline.gbr
Bottom.gbr
BottomMask.gbr
BottomPaste.gbr (опционально, если нужен трафарет. Но я всегда добавляю в архив, «чтоб было», китайцы лишнее игнорируют)
BottomSilk.gbr
Inner1.gbr
Inner2.gbr
Inner3.gbr
Inner4.gbr
Through.drl
Top.gbr
TopMask.gbr
TopPaste.gbr (опционально, если нужен трафарет. Но я всегда добавляю в архив, «чтоб было», китайцы лишнее игнорируют)
TopSilk.gbr

другие сервисы требуют «правильные названия», но мы ленивые и оставляем так.

Монтаж у jlcpcb значительно отличается от того, что предлагают другие заводы. Есть куча ограничений, но это ограничения оправдываются низкой ценой.
Если вы хотите использовать монтаж, то при проектировании устройства следует придерживаться следующих правил:
1) Используйте только детали из каталога. Если их нет в каталоге, в будете их допаивать дома сами.
2) Монтаж только с одной стороны. Для любительских не сложных проектов допустимо вполне
3) Монтаж только СМД. Выводные компоненты припаяете сами. Для большинства любителей это не проблема
4) Старайтесь использовать компоненты из «базового» каталога. Базовый каталог содержит 700 самых ходовых элементов. Вы платите только цену деталей.
5) «расширеный» каталог содержит 60тыс компонент, но за использование каждого вида (партнамбера) вам придется доплатить комисиию 3 доллара. Например выгоднее поставить не резистор редкого номинала 12.4ком, а поставить два резистора параллельно 13ком и 270ком. Резистор стоит 0.2 цента, а вы экономите 3 доллара с этой позиции
6) печатные платы только 2/4 слоя и только зеленые. пережить можно

цена складывается
1) сами платы по цене как обычно
2) не совсем понимаю как считается монтаж. На первый взгляд 7+7 = 14 долларов.
3) цена деталей по каталогу. В принципе цены весьма адекватные
4) 3 доллара * число видов деталей из «расширенного каталога». Не зависит от того, сколько раз применен компонент на плате, платится за партнамбер разово. Например у меня на плате 5 супрессовов, 10 плат, итого 50 шт обходятся 50 * $0.0369 + $3 = 4.84
5) доставка. Как обычно. Большие партии разумеется надо через посредников тащить чтоб не попасть на таможню.

Я заказал десяток плат. У них в наличии не было трех чипов, допаяю руками. Плата специально была сделана под 0402. Руками паять не очень приятно, а тут посмотрим на качество.

Кроме герберов надо подготовить два файла
1) pick and place. Пример файла приведен на сайте.
В программе разработки плат file / export / Pick and Place. Координаты надо в милиметрах, но диптрейс подругому и не умеет. Перед генерацией файла, нужено совместить правый нижний угол платы и (0;0) координатной сетки

Файл генерируется в формате CSV. Лично я открыл файл в excel 2003 и пересохранил в формате xls. Хотя заявлена поддержка CSV, у меня вылазили какие-то ошибки
2) файл BOM — список материалов. Он генерируется из схемы objects / bill of materials / export to file

Я специально выгружаю лишние столбцы. С этим файлом нам предстоит поработать. Отрываем как и прошлый раз в excel, сохраняем в xls. Добавляем столбик lcsc и начинаем его заполнять. После заполнения лишние столбцы удаляем.
Артикулы ищем по каталогу и заносим в этот столбик. Выводные детали, и те, которые не надо паять — удаляем. Разумеется стараемся брать детали из «основного» каталога чтоб не переплачивать.
После заполнения, у нас получится как-то так:

Важны 2 и 4 столбик, 1 и 3 справочно для нас.
После этого на сайте загружаем оба файла (не буду расписывать, там всё интуитивно). Видим рендер платы с расположением деталей.

Тут можно еще немного поработать. Я заметил что танталы и электролит встали «задом наперед». Еще один из кварцев был повернут на 90 градусов. Руками внес исправления (поменял угол в последнем столбце) в pnp файл и загрузил заново. Вроде всё ок, заказ ушел в работу, оплатил.
Через день китаец провел аудит, увидел что микросхемы стоят неправильно и исправил ошибки. Так же вылезли алерты о том, что «широковаты футпринты под SMA супрессоры» (Pad to Pad Spacing is too large). Я проигнорировал.

5 дней делали текстолит, за день спаяли.
Оплата была 14го, закончили 20го, отправили 21го с утра
изготовление


Привезли 6го января среди праздников. ЕМС приятно удивляет. Большая коробка (раз в пять больше чем надо), много пупырки и картона.






Визуально всё хорошо. Светодиоды вместо 0603 запаян 0805(???) Оказывается при оформлении заказа я выбрал вместо 0603 размер 0805. Китайцы их успешно запаяли на площадки 0603.
Добавлены два отверстия, которых не было у меня.

Проверка плат видимо затянется, сделал ошибку, КЗ во внутреннем слое. Ошибок в монтаже, дефектов пайки визуально не обнаружил. На паре плат чуть криво стоит электролит. На одной из плат в отверстие куда паять ethernet разъем затек припой, пришлось почистить.

монтаж с учетом купонов «якобы бесплатный».
1) текстолит / платы 4 слоя 30 долларов
2) комплектующие 77 долларов
3) доплата за то что коплектующие из расширенного списка принесли со склада 8 позиций по 3 доллара итого 24
4) доставка ЕМС 30 долларов
5) монтаж и подготовка 14 долларов компенсированы купонами (7 скидка и 7 купон)

итого 160 долларов +- за 10 плат

В целом доволен сервисом

UPD платы исправил, проверил, всё работает
Добавить в избранное +145 +203
+
avatar
  • KVI
  • 06 января 2020, 19:31
+12
«КЗ во внутреннем слое» — Исходник платы есть. То есть точно известно расположение «ошибки». Определить на плате и высверлить.
+
avatar
0
Все десять?
+
avatar
  • woddy
  • 06 января 2020, 20:38
+5
Если я отправил кривые герберы — то разумеется все десять. Это мой косяк, а не завода.
+
avatar
  • woddy
  • 06 января 2020, 19:45
+2
высверливаю, да))) переместил виас в последний момент, но не обновил заливку внутреннего слоя
+
avatar
+4
Странно. Обычно среда проектирования такие ситуации отлавливает «автоматом». Обычно среда очень материться при этом.
+
avatar
  • woddy
  • 06 января 2020, 20:58
+5
у меня отключена галочка «реалтайм чек» и я привык запускать проверку вручную. а тут забыл проверить :)
+
avatar
+5
И похоже зря… Галку имеет смысл отключать если комп не тянет. Если с производительностью нормально — лучше не отключать.
+
avatar
0
На ноутах часто тормозит из за этого
+
avatar
  • 64eu64
  • 08 января 2020, 12:48
0
Обычно среда проектирования такие ситуации отлавливает «автоматом».
Это как правила настроишь, так и будет.
+
avatar
  • 64eu64
  • 08 января 2020, 12:47
0
А что, перед генерацией герберов DRC сделать религия не позволяет. Если не ошибаюсь любой CAD это умеет делать.
Такие процедуры руки должны на автомате делать, ошибки порой могут стоить ооочень дорого.
+
avatar
  • BigB
  • 06 января 2020, 22:20
+7
Я у 50-ти плат неправильно развел USB порт. Пришлось дремелем перерезать дорожки к порту и проводочками делать перемычки. Можно было USB порт поставить с обратной стороны, но коробочки под них уже были.
Так, что 10-ть плат это не 50.
+
avatar
  • kirich
  • 10 января 2020, 11:32
0
Так, что 10-ть плат это не 50.
Я как-то делал заказ, хоть и очень простой, но плат было около 15к, тоже волновался чтобы не накосячить.
+
avatar
  • ksiman
  • 06 января 2020, 19:36
+5
Что за устройство-то?
+
avatar
+1
Судя по чипам — микроконтроллер с ызернетом. ))
+
avatar
  • woddy
  • 06 января 2020, 19:45
+1
сухой контакт с езернетом. софт пишет заказчик
+
avatar
+1
Да достаточно самоочевидно, что, вроде бы: Arduino + Ethernet. Что-то измерять с четырех входов по переменке, и отсылать по сети.
+
avatar
  • smartly
  • 06 января 2020, 22:24
+4
Почему сейчас все микроконтроллеры называт Arduino?
+
avatar
  • woddy
  • 06 января 2020, 22:25
+3
не все) там именно атмега328 стоит
+
avatar
+10
atmega — это название семейств процессоров atmel, arduino — название платы определённого дизайна и с процом с определённым бутлоадером
+
avatar
+2
Какой такой «определенный» дизайн плат у ардуинок? Сейчас их куча и все в разном дизайне. Ардуино это среда разработки + бутлоадер, имхо.
Хотя с другой стороны есп8266 шитая через ардуино ИДЕ и считается ардуино ил нет?!
+
avatar
  • nochkin
  • 07 января 2020, 06:48
+5
Как правильно замечено, Arduino — это среда разработки (экосистема состоящая из МК, софта, компилятора и т.д.). Поэтому ESP8266 шитый через Arduino будет уже ардуиной.
+
avatar
+1
Есть референсный дизайн этих плат — его можно посмотреть на их сайте. Не сказать что он прям какой-то особенный, но он есть чётко установленный. Ну и самое главное — бутлоадер, конечно. Те ардуино все-таки плата + бутлоадер. IDE — это честь их экосистемы, но она к hardware никакого отношения не имеет.

И, конечно, esp не будет никаким боком ардуиной, даже если она будет шиться и программироваться через ArduinoIDE.
+
avatar
  • woddy
  • 07 января 2020, 09:23
+3
тогда все китайские ардуины не ардуины :)
там usb-uart заменен и вообще платы разведены подругому
+
avatar
+2
Бутлоадер — дело десятое, их даже у «родной» ардуино несколько разных сменилось, а вообще никто не мешает написать свой собственный.
И уж конечно IDE — вообще двадцатое дело, код можно и в «блокноте» писать (в том числе под «родную» ардуино).

Но если в проекте написано #include <Arduino.h> — пусть даже не в основном файле, а в какой-то из используемых библиотек — то у вас ардуино, как ни крути.
+
avatar
  • fps
  • 07 января 2020, 22:12
+3
Ардуино — это по факту уже имя нарицательное.
Типа джипов (фирмы Toyota) или ксероксов от Canon.
+
avatar
  • vaz
  • 07 января 2020, 22:19
0
del
+
avatar
+1
Не все. Но если там на плате стоит w5500, то очевидно что будет использоваться ардуиновская библиотека — найдите другую вменяемую. А библиотека порождает свои требования к среде. Так что — с вероятностью 90+% среда будет Ардуино.
+
avatar
  • Z2K
  • 07 января 2020, 01:08
0
«найдите другую вменяемую.» — Других библиотек (например на Си) для работы с w5500 нет?
+
avatar
  • smartly
  • 07 января 2020, 01:09
+7
Ну мне не очевидно, так как я обычно пишу себе библиотеки сам по даташитам. Если не получается — подглядываю в скачанные.
+
avatar
+1
Подо все настолько сложные чипы пишете собственные библиотеки? Более качественные, чем «ардуиновские»?

Можно ссылку на ваш гитхаб?
+
avatar
  • smartly
  • 07 января 2020, 16:25
+2
Я не пишу библиотеки под все чипы. Только под те, которые использую. Ардуиновские считаю наименее качественными. Но ведь и их кто-то написал, не с марса прислали ж.

У меня нет гитхаба, я не пишу opensource.

ps: Качнул я даташит на W5500 — там всего 66 страниц. Причем весь TCP/IP уже внутри, вместе с ARP. Чё там сложного остаётся?
+
avatar
+2
Присоединяюсь.

Одни из самых некачественных, медленных, раздутых и глючных.
Иногда даже на C++ :) Не все, но очень многие. Это следствие популярности.
Естественно, это не мешает в них заглядывать и брать только хорошее.

Поэтому тоже всегда делаю по спекам — это избавляет от проблем при дебаге.
Кроме того пиши на чистом C со вставками на асме. Код получается гораздо чище, меньше по размеру и куда понятней. И что куда важней — он получается ПРОГНОЗИРУЕМЕЙ.
+
avatar
  • smartly
  • 07 января 2020, 17:00
+1
Не, я щас пишу на С++ с классами. Этап ассемблерных вставок я прошёл, когда ещё слова Arduino не было. :) (Ну конечно, кроме всяких asm («cli»); )
+
avatar
0
Ну по спеками частенько нужно выдерживать точные временные интервалы, на C, и тем более, на C++ это несколько проблематично :)
+
avatar
  • smartly
  • 07 января 2020, 17:49
0
Ну ладно. Вставляем ещё asm («nop») в нужном количестве. Но вообще это дохлый номер. В Cortex M уже есть SysTick для этого. А если важна не только минимальная задержка, но и максимальная, то уже надо делать на таймерах.
+
avatar
0
> делать на таймерах.

иногда так не хватает DMA+timer на AVR :-)
+
avatar
  • AndyBig
  • 07 января 2020, 18:01
+4
и тем более, на C++ это несколько проблематично
C++ в этом отношении ничем не отличается от C :) А вообще, если вдруг встала необходимость выдерживать интервалы с точностью до пары тактов контроллера… значит надо взять более быстрый контроллер или контроллер с аппаратным интерфейсом для этой периферии :)
+
avatar
0
надо взять более быстрый контроллер или контроллер с аппаратным интерфейсом для этой периферии
Не всегда в этом есть смысл — например, управление WS2812B — задача, в общем-то, несложная, но требует четких таймингов, достигнуть которые на AVR можно только на ассемблере. Но это же не значит, что для простой задачки управления елочной гирляндой не стоит теперь использовать AVR :)
+
avatar
  • AndyBig
  • 07 января 2020, 18:39
+1
Но проще взять какой-нить STM32F051 и заюзать аппаратный SPI :) Чем брать заведомо слабый микроконтроллер и героически преодолевать его ограничения :)
+
avatar
0
Нет, конечно не проще.

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

А во-вторых, что проще — запаять 8 ног в дипе, или дцать в стме? На макетку? Вот-вот.

Ну и архитектура у стма весьма не дружелюбна и сложна для быстрого вхождения. Это другого уровня проц и для других задач.
+
avatar
  • AndyBig
  • 07 января 2020, 18:49
+2
нормальному инженеру должно быть плохо от одной мысли, что его решение будут находиться в идле 99.999% времени.
Нормальному инженеру должно быть плохо не от идла, а от костылей :)
стрельба из пушки по воробьям
Если для елочной гирлянды взять STM32F4xx, то да :) К счастью, разнообразие микроконтроллеров позволяет не идти на такие крайности :)
что проще — запаять 8 ног в дипе, или дцать в стме? На макетку?
Вообще по барабану :) Если, конечно, умеешь паять :) Установка и пайка 10 корпусов TQFP-64 занимает меньше 10 минут, если что :) Из которых 7 минут приходится на нанесение флюса и прицеливание :)
+
avatar
0
Вообще по барабану
На обычную макетку сможете смд прямо припаять? Ну тогда ваш скилл куда круче моего.

костылей
И с какого перепугу обычный bitbang стал вдруг костылем?
Каждому процу своё место и юзать проц такой мощности там, где справляется тинька — вот это реально костыль.
+
avatar
  • AndyBig
  • 07 января 2020, 18:56
+3
На обычную макетку сможете смд прямо припаять?
Запросто. С платкой-переходником, коих море за копейки :)
И с какого перепугу обычный bitbang стал вдруг костылем?
Костыль — это отсчитывать нопами временные периоды :)
+
avatar
0
это отсчитывать нопами временные периоды
Ну в таком случае любой нестандартный протокол — это костыль. А их — тысячи. И если spi подходит под ws — это практически случайность. Его не разрабатывали с оглядкой на это.

С платкой-переходником
Тогда уж и на jlpcb можно заказать. Давайте спорить не будем — 8 диповских ног быстрее запаять чем любой переходник и проц на него.
+
avatar
  • AndyBig
  • 07 января 2020, 19:09
+1
Ну в таком случае любой нестандартный протокол — это костыль.
А их много бывает в широком распространении?
8 диповских ног быстрее запаять чем любой переходник и проц на него.
Да, быстрее. На целую минуту. Эта минута так критично важна, что из-за нее стоит преодолевать костылями нехватку частоты, памяти, аппаратных интерфейсов и т.п.?
+
avatar
0
А их много бывает в широком распространении?
Полно, ибо i2c и spi далеко не везде.

Эта минута так критично важна, что из-за нее стоит преодолевать костылями нехватку частоты, памяти, аппаратных интерфейсов и т.п.?
Это означает, что неверно выбран проц для задачи вот и все. Т. е. тут не проц виноват, а разраб. Тоже можно сказать и про того, кто чтобы помигать 2 светодиодами юзает кортекс.
+
avatar
  • AndyBig
  • 07 января 2020, 19:59
+1
Полно
Ну например? Управляемые RGB-светодиоды рассмотрели… Что еще?
Это означает, что неверно выбран проц для задачи
Я об этом изначально и писал :)
+
avatar
  • woddy
  • 07 января 2020, 19:10
+2
Я завязал с макетками. Голая плата с jlcpcb приезжает за неделю (DHL на юрлицо), пару часов спаять, и не думаешь где провод отвалился
+
avatar
  • Dru4
  • 09 января 2020, 10:23
0
А растаможка сколько времени и денег съедает?
+
avatar
  • woddy
  • 09 января 2020, 13:24
0
товар до 200 евро на ЮЛ не требует растаможки
+
avatar
0
> Ну в таком случае любой нестандартный протокол — это костыль. А их — тысячи. И если spi подходит под ws — это практически случайность. Его не разрабатывали с оглядкой на это.

Пример: habr.com/ru/post/257131/

А когда нужна совсем экзотика, то можно смотреть на специализированные чипы, типа тогоже FX2 или FX3 — у них есть интерфейс GPIF, на котором можно реализовать практически любой протокол.

Кстати, мы SPI заиспользовали что бы мегабыстро грузить FPGA код из Userspace (Linux) через хитро разведённый JTAG. Да, и сэкономили на SPI флешке (которую ещё и коммутировать пришлось бы, если нужно код FPGA обновлять). Получился микс из GPIO bit-bang и SPI посылок.
+
avatar
0
> На обычную макетку сможете смд прямо припаять?

вполне решают переходники-адаптеры + супер клей и двусторонний скотч. Ну это на крайний случай. А так, к примеру, Blue Pill стоит не сильно больше arduino pro mini, что бы вкорачить в проект на макетке.
+
avatar
  • CuMr
  • 08 января 2020, 04:39
0
О, еще один пурист.
Вот недавно мне понадобился периодически сервотестер для ESC. Причем в самой примитивной реализации — просто шим в зависимости от положения резистора. Надо было 555 таймер взять и играться с номиналами? Их есть у меня. Кажется. Кажется были. где-то… Взял n76e003, развел быстренько, на чпу пошкрябал по лаку, вытравил, набросал прошивку. Все-таки небольшой сервис понадобился — при старте несколько секунд держать минимальную длительность чтобы esc не вздумал калиброваться. И поместилось это все под переменником…
А теперь вопрос. Зачем мне париться что контроллер 99,99% времени тупо простаивает? Особенно учитывая что понадобись мне вот эта начальная задержка — на 555 надо править схему, а на контроллере — просто подправить прошивку…
+
avatar
0
Это сильно зависит от того, с какой точки зрения смотреть — STM должен быть в наличии, надо знать его архитектуру (а она сложнее AVR) и должна быть среда разработки. Если делать чисто «для себя», может вам и проще. Если небольшой коммерческий продукт — надо задуматься и посчитать, ответ может оказаться другим. Ну а если делать как open source для повтора другими — AVR определенно выиграет из-за более широкой распространенности в массах.
+
avatar
  • AndyBig
  • 07 января 2020, 20:03
+2
STM должен быть в наличии, надо знать его архитектуру (а она сложнее AVR) и должна быть среда разработки.
Ни сами контроллеры, ни среда под них — совершенно не проблема. Да, архитектура сложнее, но не намного. И возможностей она предоставляет больше :)
если делать как open source для повтора другими — AVR определенно выиграет из-за более широкой распространенности в массах
В тех массах, которые могут повторить только по инструкции «Спаять проводками как на картинке, запустить эту программу и нажать в ней эту кнопку» — да, ардуина вне конкуренции :)
+
avatar
+2
Да, архитектура сложнее, но не намного. И возможностей она предоставляет больше :)
То, что возможностей больше — это факт. Но вот касательно сложности — не согласен. Чтобы в stm32 управлять диодами через SPI надо знать, как программировать, собственно, SPI и еще как программировать DMA. Затем желательно знать (и уметь настраивать) приоритеты прерываний. Ну и, конечно, запрограммировать таймер, чтобы получать прерывания с «умеренной» частотой, которые будут управлять эффектами и инициировать передачу по SPI нужное количество раз в секунду. А одно описание таймера в даташите от F103 занимает около 60-ти листов :)

Для AVR, при знании ассемблера (а он там простой), достаточно знать растактовку команд (тоже несложно, т.к. команды в основном занимают 1 — 2 такта). Ну, можно запрограммировать еще таймер (тоже значительно проще STM). Плюс, если вывод сделан блоком кода, а не прерываниями, его очень легко копировать и вставлять в другие проекты. Качество проектов, конечно, при таком подходе будет не очень, но это и есть расплата за простоту, которая многих устраивает.

Ну и плюс сама по себе распространенность ардуин на AVR значительно выше, поэтому если кто-то вдруг решил сделать елочную гирлянду к вечеру (а очень часто так и бывает), ардуина в каком-то виде у него будет в наличии с большей вероятностью, чем плата на stm.
+
avatar
  • AndyBig
  • 08 января 2020, 00:45
0
Чтобы в stm32 управлять диодами через SPI надо знать, как программировать, собственно, SPI и еще как программировать DMA.
SPI-да, DMA — вовсе необязательно, можно по прерыванию работать. Но с DMA мир становится светлее, не спорю :) И освоить его совсем несложно.
Затем желательно знать (и уметь настраивать) приоритеты прерываний.
Это уже если лезть глубоко :) На уровне мигания RGB-светодиодами это необязательно :)
А одно описание таймера в даташите от F103 занимает около 60-ти листов :)
Ну да, только там на этих листах описывается десяток разных режимов работы :) Необязательно сразу вникать во все :)
+
avatar
  • CuMr
  • 08 января 2020, 04:44
0
Вы почему-то уверенно противопоставляете программирование на ардуине для авр и SPL для стм. Тогда уж и для стм хал нужно рассматривать. А на хале с кубом — не настолько оно уж и драматично сложнее. Тем более что для совсем ардуйнуых и 103 в ардуину втащили…
+
avatar
0
Совсем нет, диалог начался с вопросов выбора МК при необходимости соблюдения точных временных интервалов. STM32 — очень хорошие МК, я сам их использую, возможности у них на порядок выше AVR, но и AVR в утиль не списываю, иногда и их возможностей оказывается достаточно. Например, делал индикатор выходного напряжения/тока для БП, АЦП — внешний, от МК надо только SPI и I2C (ну, опционально UART, если вдруг захочется обмениваться данными с компом) — мне оказалось вполне достаточно atmega328. Ну, пришлось сигналы энкодера ручками обрабатывать, но это на 10 минут написания кода (и то, на ассемблере).

А на счет сложности — чтобы «кошерно» подключить тот же энкодер к STM32, надо будет полноценно разобраться с таймером. Это займет поболее, чем 10 минут (даже учитывая, что я когда-то с ним разбирался уже).
+
avatar
0
Погодите, насколько я понимаю, при использовании SPI в 4MHz режиме получается по 4 бита на бит данных. Т.е. нужно в DMA сувать буффер в 4 раза больший, чем реально необходим для кодирования цвета диодов. Более того, SPI будет работать только в DMA режиме, в противном случае схватить Reset проще простого.

Имхо, Timer+PWM+DMA — именно эту связку нужно использовать на STM32: habr.com/ru/post/257131/
+
avatar
  • smartly
  • 07 января 2020, 19:37
+2
Лет 20 назад в RU.EMBEDDED были холивары — ассемблер против Си. Потом были холивары — Си против Си++. В разные периоды своей жизни я был на разной стороне.
+
avatar
  • AndyBig
  • 07 января 2020, 20:05
0
«Ассемблер против Си» еще лет 7 назад было популярным на электрониксе :)
+
avatar
0
Чем же? Даже больше интересует эта часть: «и тем более, на C++».
+
avatar
0
+
avatar
+2
В самом С++ ничего плохого нет — наоборот, он предоставляет больше возможностей, а использовать их или нет — дело ваше. Я, например, когда делал БПФ (для СТМ32), написал свой класс комплексных чисел с фиксированной запятой. Код за счет этого читается в разы лучше, а по быстродействию IAR не подвел — скомпилировал все так, что я бы на асме вряд ли лучше сделал (к слову, у ARM асм достаточно сложный). После уже нашел готовую реализацию БПФ от ST на чистом асме (да еще и Radix-4), так она оказалась всего в полтора раза быстрее моей (обычной, Radix-2).

Но библиотеки ардуино действительно в своей основной массе страшные, поэтому если брать «классику» (то есть, Arduino Uno на atmega328), я вообще стараюсь использовать ардуино только для тестов, а потом делать отдельный проект на «чистой» atmega.
+
avatar
  • AndyBig
  • 07 января 2020, 18:28
0
В скомпилированном коде C++ вообще практически не отличается от C :)
И, кстати, поддержу за IAR — оптимизация у их компилятора превосходная.
+
avatar
-1
В самом C++ — ничего плохого — это инструмент.
Писать тяжелые задачи на нем куда приятней, под тот-же STM.

А вот для ATTINY это уже оверинжиниринг, т.к. задачи гораздо проще, C куда лучше компилится и выдает при этом куда меньший код. Но это уже холивар :)

P.S. Arduino не использую вообще, ибо waste of CPU.
+
avatar
  • AndyBig
  • 07 января 2020, 18:37
0
C куда лучше компилится и выдает при этом куда меньший код.
С чего это? :) Чем в скомпилированном коде будет отличаться статический класс от набора функций и переменных? :)
+
avatar
0
А попробуйте. Будет. Во всяком случае под AtmelStudio. Проблема как раз в том, как компилируется и что. Сложные сущности — даже статические классы и компилятся сложно — абстракции разные.

А вот если на C++ написать код на C — тогда да, разницы не будет.
+
avatar
  • AndyBig
  • 07 января 2020, 18:52
0
Сложные сущности — даже статические классы и компилятся сложно — абстракции разные.
Они сложные лишь на этапе парсинга, в скомпилированном коде это все те же функции и переменные. И если AtmelStudio не умеет нормально компилировать эти абстракции — ну, это вопросы не к языку :)
+
avatar
-1
Там gcc, студия не причём.
+
avatar
0
Все сильно зависит от того, как писать. Если писать по современным код-стандартам С++, где каждый класс описан и реализован в отдельных h и cpp файлах, и сравнивать это с набором функций, описанных в том же файле, разница действительно будет — компилятор уровня gcc (atmelstudio) вряд ли сможет заменить вызов такой функции на подстановку кода (даже если используется она во всем проекте единожды). Но это надо учитывать при разработке и описывать короткие методы непосредственно в заголовке, добавляя ключевое слово inline.
+
avatar
  • AndyBig
  • 07 января 2020, 19:04
0
компилятор уровня gcc (atmelstudio) вряд ли сможет заменить вызов такой функции на подстановку кода (даже если используется она во всем проекте единожды)
Так отсутствие инлайнов наоборот — может сделать код только компактнее :) Чуток медленнее, но компактнее :)
+
avatar
0
Если только вызовом конструктора :)
+
avatar
  • AndyBig
  • 07 января 2020, 18:53
0
Конструктор — это совершенно такая же функция, как и любая другая :) Оставьте его пустым — и не будет вызова :)
+
avatar
-2
Конструктор, к сожалению, не такая-же функция. В ней есть оверхэд, отвечающий за создание и разрушение класса и внутренних таблиц указателей. В статический классе, про который мы говорили выше, конструктора физически нет. Но тем не менее оверхэд изза того, что это класс — будет.

Юзая прагму и определённый стиль их действительно может свести у минимуму, но простые задачи реально не нуждаются в C++.
+
avatar
+1
и внутренних таблиц указателей
Они есть только у классов с виртуальными функциями, либо если включена RTTI. Ни то, ни другое в простых проектах не нужно :) Если взять обычный класс (даже с наследованием, но без виртуальности), то это лишь набор данных (члены) и набор функций (методы), каждая из которых принимает на вход один дополнительный неявный параметр this. Да, если метод простой и не использует данные класса, ему все равно будет передан этот «лишний» указатель. Ну так такие методы надо описывать как static — тогда это вообще ничем не отличается от обычной функции, кроме области определения (внутри класса).

простые задачи реально не нуждаются в C++.
А вот это действительно в большинстве случаев так.
+
avatar
  • AndyBig
  • 07 января 2020, 19:57
0
В ней есть оверхэд, отвечающий за создание и разрушение класса и внутренних таблиц указателей
Динамические классы я и не предлагал использовать.
тем не менее оверхэд изза того, что это класс — будет
Совершенно мизерный.
+
avatar
  • CuMr
  • 08 января 2020, 04:47
0
+
avatar
  • Eddy_Em
  • 10 января 2020, 09:25
0
Меня VlasislavS со своим C++ уже вполне убедил, что кресты можно использовать на микроконтроллерах (понятное дело, компилироваться будет дольше, зато если всю подноготную правильно сделать, то потом код будет значительно компактней, чем в случае С).
Однако, лично я против усложнения. Мне С за глаза хватает.
+
avatar
+1
Ну, если начать пытаться на attiny использовать иерархию классов с виртуальными функциями, действительно получите код большего размера. Но зачем это надо в практических небольших задачах, которые способен решить attiny?

И так и во всем остальном — ваш код С++ компилятором будет компилироваться ровно так, как вы его напишете. Если писать внутри cpp файла на С, результат ничем отличаться не будет, но, при необходимости, вам будут доступны все дополнительные возможности С++.
+
avatar
+1
Так ведь то, что в даташите лишь 60 страниц вместо более подошедших бы 600, как раз и создает сложность: об каждые «забытые» в даташите грабли придется стукнуться собственной головой — в то время как в ардуиновской библиотеке это уже была чья-то чужая голова.

В ардуиновских библиотеках никакой магии нет. За ними стоит лишь одно: сила огромного комьюнити, равного которому не существует. Когда библиотеку юзают миллионы, любые, самые неожиданные косяки с ней выявляются моментально. Когда в код коммитят тысячи, выявленные косяки исправляются моментально — не в оригинале, так в форке. А со своей самописной библиотекой вы будете сражаться медленно и печально, в унылом одиночестве.
+
avatar
  • AndyBig
  • 08 января 2020, 00:47
+1
В ардуиновских библиотеках никакой магии нет.
Да, там одни только тормоза :))))
+
avatar
  • smartly
  • 08 января 2020, 09:58
0
Просто поверьте, что за пределами ардуиновских библиотек есть ещё мир, там не одиноко.
+
avatar
  • Eddy_Em
  • 10 января 2020, 09:23
0
++
Я тоже чужое если и использую, то лишь после тщательной переработки (вот).
+
avatar
  • AndyBig
  • 07 января 2020, 14:00
+2
очевидно что будет использоваться ардуиновская библиотека
Это очевидно только для тех, кто дальше поиска готовых ардуиновских библиотек в разработке не продвинулся :)
+
avatar
+1
Как говаривал Линус Торвальдс в молодости, «слова ничего не стоят, покажите мне код!»

Спор ведь ни о чем, если его легко разрешить ссылкой на качественную библиотеку для w5500, которая бы не имела корней в «ардуинстве»…
+
avatar
  • AndyBig
  • 07 января 2020, 16:14
0
Вот первое попавшееся в гугле — github.com/Wiznet/ioLibrary_Driver
+
avatar
  • smartly
  • 07 января 2020, 16:38
0
Так это ж вообще от разработчиков чипа библиотека.
+
avatar
  • AndyBig
  • 07 января 2020, 17:01
0
И что? :)
+
avatar
  • smartly
  • 07 января 2020, 17:25
0
Это вообще можно брать за образец и больше ничего не искать. (Ну — обычно так бывает)
+
avatar
  • AndyBig
  • 07 января 2020, 17:57
0
Ну так о том и речь, что библиотеки бывают не только под ардуину :)
Я обычно нахожу пару библиотек и беру из них то, что мне нужно. Очень редко использую готовые библиотеки, потому что в них обычно в угоду универсальности и широты применения напихано слишком много лишнего :) Ну или не нахожу ничего подходящего и пишу с нуля. В последний раз так было с библиотекой под GSM-модем. Найденное было либо слишком примитивным, либо настолько навороченным и плохо документированным, что мне быстрее было написать свое, чем разобраться в найденном :)
+
avatar
  • smartly
  • 07 января 2020, 19:31
0
Ну так я так же само. Я выше упомянул про это.

Библиотеку под GSM писал. Начал ещё лет 15 назад. До сих пор использую.
+
avatar
-1
Так я ведь говорил про «качественную»… смотрим по вашей ссылке дату w5500.c и видим 5 years ago…

Иным словами, это не библиотека, а труп. Разработчики «выкинули» ее в народ «чтоб было» — и на том успокоились.
+
avatar
  • AndyBig
  • 08 января 2020, 00:49
0
Так я ведь говорил про «качественную»
Что именно там некачественного?
Иным словами, это не библиотека, а труп.
Она нерабочая? С ошибками? Работает в 10 раз медленнее ардуиновской? На основании чего именно Вы называете ее трупом? :)
+
avatar
  • scaldov
  • 07 января 2020, 09:44
-2
Потому что это зашквар, прилипший к ATMeg'е.
Чипы atmel сами по себе музей косяков, на ответственное оборудование ставить не рекомендую.
+
avatar
+2
О, интересно.
Раскажете?

А то на производстве пол цеха тиньками автоматизированно, никаких косяков не наблюдали.
Зависоны и всякое другое, что было на этапе автоматизации в 90% случаев было из-за неправильной разводки питания, а остальные 10% — прошивка.
+
avatar
  • scaldov
  • 07 января 2020, 11:41
+2
1) Слёт сигнатуры чипа
2) Слёт прошивки
3) прошивка есть, работает, шьётся, читается, но на некоторых портах ничего нет.

Если первый косяк ещё можно отнести к производству, то остальные неожиданно возникают при эксплуатации.

Это только то, что касается именно надёжности. Про архитектуру ядра я вообще молчу.

Возможно, это относится к каким-то партиям, но, увы, до свидания.

Из-за этих косяков, кстати первые J-Link'и (они были на Atmel) приходилось покупать парами и периодически перезаливать прошивку одну от другой.
+
avatar
  • KiV
  • 07 января 2020, 13:05
0
кстати первые J-Link'и (они были на Atmel)
На Atmel ARM были вторые, первые были на Renesas (и у первых прошивка иногда слетала). И ни одних не было на AVR.
+
avatar
  • AndyBig
  • 07 января 2020, 14:02
0
У вторых тоже прошивка время от времени слетает :)
+
avatar
  • scaldov
  • 07 января 2020, 22:45
0
Это прикол Atmel вообще. Неважно, ARM, AVR, или 8051.
Нерабочий генератор кварца и BOR на 8253 например это воще отпад.
+
avatar
0
Включайте фуз биты супервайзера питания и избавитесь от этих проблем. Видимо у вас используются косячные БП.
+
avatar
  • scaldov
  • 07 января 2020, 22:47
0
BODEN был.
+
avatar
+2
Вот прямо было такое с 1 по 3. Знаете в чем было дело? Это была отбраковка атмела, которая сливалась китайцами. Понятное дело что сам атмел тут не при чем. Как только стали брать у Мозера — ни разу такого не было.

А чем архитектура не понравилась?

Первые JLinkи, кстати, были не на атмел.
+
avatar
  • woddy
  • 07 января 2020, 13:36
+1
Мне с али тоже паленые атмега328 (или даже атмега8?) приходили. Я тогда был молодым и глупым, думал мой г*код не работает, светодиод не зажигает. Пока не перепаял чип. Но на перепаяном не работали уже другие ноги
+
avatar
  • rx3apf
  • 07 января 2020, 18:37
0
Мы не так давно имели удовольствие закупиться (у вполне приличного локального поставщика) ATmega169 с интересным поведением — несколько неожиданным оказалось отличная от заявленной дефолтная установка фьюзов BODEN, но, что гораздо хуже, часть чипов вообще не откликалась программатору, а у тех, что вроде бы заработали, наблюдалось (частично) неработающие ноги портов. Нормальные (на вид) катушки, все выглядело пристойно. И вот такая пакость…

Но вообще слет EEPROM данных (что у них известно с 90S и до сих пор вроде как народ сталкивается), а уж тем более слет сигнатуры — это вообще ни в какие ворота не лезет. А меня вот лично выбешивает кривая реализация Timer2 в асинхронном режиме. А архитектурно — ну вот почему SREG не вынести в начало i/o пространства? Можно было бы, например, иметь условные пропуски…
+
avatar
  • scaldov
  • 07 января 2020, 22:42
0
брали не в китае. это был платан.
+
avatar
  • Eddy_Em
  • 10 января 2020, 09:28
0
В наше время аврки используют только деды, которые не способны ничего нового освоить! Потому что по цене, качеству и возможностям аврки — прошлый век!!!
+
avatar
  • smartly
  • 07 января 2020, 12:45
+2
Хорошо, буду ставить на безответственное.
+
avatar
+7
У Вас случаем канала на youtube или сайта нет? Делитесь своими знаниями где-нибудь?
+
avatar
+2
За обзор — спасибо!

Вопрос такой: насколько получившееся решение вышло дороже «колхозного» из готовых модулей с алиэкспресса?
Вопрос не праздный, ибо колхоз немного «приелся», но нырять в «мир контрактной сборки» как-то страшновато пока…
+
avatar
  • woddy
  • 06 января 2020, 20:15
+2
цена зависит от того, сможете ли подобрать компоненты из «базового перечня» и какая партия нужна. Посчитать сложно, потому что например dc-dc PoE такой как у меня на али не продается. На первый взгляд на партии 10шт вышло +- цена али если собирать колхоз из готовых модулей.
одна плата обошлась 13 баксов но на нее надо допаять разъемы, кнопки и дип переключатель, iso1212 изоляторы…
+
avatar
+1
1.8 за про мини на 328, 3 за 5500 (но без poe, да — я обратил внимание, что у вас 9 и 10 ноги слишком уж «силовые»), 0.5 за 2596

Итого 5-6 «базовый комплект», а входы — мешок PC817 не стоит почти ничего, как и мешок резисторов… а 16+ входовые делаю на HC165, и тоже почти ничего не стоят, основной статьей расходов тут идут разъемы.

Иными словами, разница от «колхоза» — примерно два раза… но у вас еще затраты — спроектировать плату (разово), а у меня — все это паять (постоянно)…

Сложно понять, как лучше… да, у меня интеграция со SCADA и zabbix-sender «из коробки», но при вылете себестоимости за 1000 руб заказчики могут обратить свой взор на «готовый» китай…

В общем, спасибо за пищу для размышлений. Буду думать.

P.S. Я кстати планирую мигрировать на связку ESP32+LAN8720. Чуть дешевле при несравненно более широких возможностях.
+
avatar
  • woddy
  • 07 января 2020, 01:14
+2
Оптроны дешевые там тоже есть, EL357N по 6 центов (от 100шт 3.7 цента)
Но сами чипы увы обойдутся вам дороже:
атмега328 = 1.9 доллара
w5500 = 2.3 доллара
езернет разъем отдельно на али 0.6 (почему-то в jlcpcb они в разы дороже!)
замену 2596 советую подобрать, например TPS5430 или даже XL1509-5.0
и так далее

рекомендую на день зарыться в каталог и посчитать. Смотреть только Base каталог, чтоб не переплачивать
+
avatar
0
А какой кстати пое контроллер используется?
+
avatar
  • woddy
  • 07 января 2020, 09:11
0
tps2378 + lm5007
+
avatar
  • habl
  • 06 января 2020, 20:04
0
Скажите, а пайка безсвинцовая?
+
avatar
  • woddy
  • 06 января 2020, 20:16
+1
Обещают да. Судя по тому как паяется (я уже надругался над платами пока искал баг свой) похожа на бессвинец
+
avatar
  • sergdem
  • 06 января 2020, 20:05
+2
Вот бы кто поделился опытом заказа лазерной резки металла.
+
avatar
  • woddy
  • 06 января 2020, 20:17
+6
Во многих городах можно резать локально. Если есть материал
Из китая дорого везти из-за веса
+
avatar
  • sergdem
  • 06 января 2020, 21:17
0
Как и изготовление плат.
Отзывы о локальном сервисе не вдохновляют.
ссылка
По весу несколько килограмм, перевозчиками не так уж и дорого. А алюминий
вообще лазером у нас нереально порезать.
+
avatar
0
Не знаю на чем сейчас режут, я еще лет 20 назад подрабатывал на CO2 лазере TRUMPF. Алюминий резал в том числе. При чем сейчас режешь пару листов железа, а потом нужно заказ лист алюминия. Просто требовалась небольшая регулировка при переходе на алюминий. Если просто положить после железа будет феерверк (по моим воспоминаниям :).
+
avatar
  • AndyBig
  • 07 января 2020, 18:03
0
Для резки металла обычно используют волоконные лазеры, у которых длина волны гораздо более подходит для этого :)
+
avatar
0
Спасибо, посмеялся. Промышленные co2 лазеры для резки имеют мощность порядка 2-20кВт.
+
avatar
  • AndyBig
  • 07 января 2020, 18:22
0
Я в курсе :) И режут они так же, как волоконные с мощностью на порядок меньшей :)
+
avatar
+1
Фраза из статьи сравнения этих двух типов «на участке от 86 до 90 градусов ситуация кардинально меняется, что объясняет лучшую режущую способность больших толщин металла газовым лазером, где на глубине стенки реза близки к 90 градусам.». Отсюда можно сделать вывод «не все так однозначно» :)). Большая глубина за co2 лазером.
На каком я подрабатывал мощность не скажу, но у него активная среда была 4 трубки с под метр длиной. И это было 20 лет назад! Понятно технологии не стоят на месте :).
+
avatar
  • AndyBig
  • 07 января 2020, 18:50
0
Не могли бы Вы дать ссылку на эту статью? :)
+
avatar
  • olegmsn
  • 06 января 2020, 22:00
+1
В Харькове могу подсказать где. А вообще там не очень сложно. Можно в solidworks нарисовать детальку и сделать развертку, можно рисовать прямо развертку в какомнить простом CAD. Обычно просто экспортируется G-код и перебрасывается в станок.
+
avatar
+1
Совсем не вижу проблем, мой опыт свой 3Д принтер сам расчертил и порезал на фирме из
Николаева. Центр лазерной резки Громова задайте в поисковике. Корпус для принтера обошелся в 100 долларов, с работой и материалом рабочий размер 300*300*250 мм. Собралось все отлично, с помощью одной отвертки. И это при том, что опыта было ноль. Так что… дорогу осилит идущий…
+
avatar
  • tirarex
  • 06 января 2020, 20:05
+2
Если есть знания английского то советую посмотреть это видео.
Заказ плат с EasyEDA с работой библиотеки компонентов.
+
avatar
0
Так что в итоге по деньгам/качеству/времени по сравнению с Зеленоградом и Новосибирском? В РФ полностью разучились паять или еще как-то держатся?
+
avatar
+8
Как-то зачитывался, офигевал: vladimir-akinin.livejournal.com
+
avatar
  • woddy
  • 06 января 2020, 20:21
+11
Зеленоград паяет хорошо, там стоит современное оборудование. Серийный монтаж делаем там.
Проще с логистикой (компоненты закупаются тоже в России), умеют двусторонний монтаж, выводную пайку,… Не без заминок, но в целом доволен.
Но к местным заводам есть смысл идти если у вас хотя бы 50-100 плат. Иначе вас не устроит «подготовка к производству 50тр разово» (цены договорные, но порядок такой)
+
avatar
+1
Иначе вас не устроит «подготовка к производству 50тр разово»
А современное оборудование разве не должно уменьшать эту сумму? Я вообще не в данной теме, но вроде как в любой отрасли стараются не дать уйти клиенту. А то сегодня закажет у конкурента маленький заказ, завтра маленький, а послезавтра уже и скидку там получит и большой заказ сделает…
+
avatar
  • woddy
  • 06 января 2020, 20:41
+4
Оборудование то может и современное. Но нужен человек который
1) получит от вас детали пересчитает
2) потратит n часов чтоб заправить их в станок
3) детали только в катушках или в лентах с запасом
4) если лента не полная катушка — первые 20 деталей из ленты он выбросит в мусор, чтоб был пустой конец для заправки

итого отдать «девочке монтажнице» проще и дешевле и не идут в мусор детали
+
avatar
  • oboltus
  • 06 января 2020, 21:11
+9
Это может быть «заградцена» — чтобы не приходили «клиенты» с одной платой и кучей проблем. Такое много где используют. У меня у самого есть мин цена на разовый заказ, иначе просто достанут «дяденька, ну сделайте, ну пожалуйста»…
+
avatar
+14
Читая подобные обзоры осознаю наступление 21го века ))))) и вспоминаю радиокружок в Доме пионеров как и слезящиеся от канифоли глаза
+
avatar
+2
Осваивайте Altium, он лучше подходит для многослойныйх плат
+
avatar
  • woddy
  • 06 января 2020, 20:29
+5
Не холивар, но чем лучше?
с шестислойками я справлялся и в диптрейс (шин памяти или подобного сложного нет, только USB / PCI-E / езернет диф пары в наружних слоях)
+
avatar
-1
Ну хотя бы тем, что повторить в альтиуме ваш косяк с переходным невозможно в принципе.
+
avatar
  • g00gle
  • 06 января 2020, 21:35
+2
Неправда. Очень даже возможно.
+
avatar
0
Угу-угу, сдуру можно много чего сломать. ИМХО, если не использовать всех плюшек и удобностей инструмента, то нафига он тогда вообще? Знавал я уникума, который чертил двухсторонки, причём довольно сложные, в кореле и фигачил их ЛУТом
+
avatar
  • olegmsn
  • 06 января 2020, 22:15
+3
много всего. общая библиотека компонентов для всех конструкторов в компании, нормальные корпуса рисованные в solidworks (в diptrace тоже норм), в задачи можно запихнуть всю подготовку к производству, проверка ошибок (условий) получше
(дальше пойдет имхо...) проще рисовать, лучше рисуется заливка в полигонах, китайцы почти все работают в Altium, соответственно если чтото с подготовкой не получится — можно им скинуть исходник они сделают сами, да и вообще както привычнее)
но есть один жиирый минус… ЦЕНА( стоит оно как самолет… если брать мест на 5-10 так совсем…
у меня много кто из знакомых не работает в altium принципиально изза цены (на аутсорс продать чтото с хакнутого софта может не очень получится).
+
avatar
+2
Тоже пользовался всегда диптрейсом с бесплатной лицензией для радиолюбителей — там до 4-х слоев, чего дома более чем достаточно. Однако недавно столкнулся с проблемой — надо было разработать плату, где было установлено 96 светодиодных индикаторов по 10 диодов каждый (это 20 выводов на сборку). Стал рисовать схему и вдруг обнаружил, что кроме 4-х слоев в бесплатной лицензии есть ограничение на 1000 пинов (ранее никогда на него внимания не обращал, т.к. это достаточно много). В итоге понял, что в диптрейсе такую плату просто невозможно сделать, хоть она и предельно простая — все диоды соединены матрицей. Пробовал написать разработчикам с просьбой расширить лицензию (т.к. проект некоммерческий, делаю для себя) — они даже не ответили.

В итоге сделал все на бесплатном онлайн сервисе EasyEDA. Даже удивился, но WEB-based система не «загнулась» от такого количества компонентов, позволила верно развести плату и там же (JLCPCB) её заказать.Теперь вот и не знаю, есть ли вообще смысл в диптрейсе для дома.

В конечном счете остался очень доволен качеством полученных плат и ценой изготовления — в резоните калькулятор насчитал стоимость в 4 раза больше (плата размером примерно 280х130).
+
avatar
  • woddy
  • 07 января 2020, 18:18
0
del
+
avatar
  • woddy
  • 07 января 2020, 18:22
0
1) Диптрейс имеет триал 30 дней без ограничений. виртуалка с виндой и свежий диптрейс помогли бы тебе

2) В следующей версии будет пересмотрена политика лицензирования. Для любительской версии лимит на число пинов уберут, а вот всякие диф пары станут платными

вопросы разработчикам можно задавать в телеграме, они отвечают в своем чате
+
avatar
+1
Диптрейс имеет триал 30 дней без ограничений
Хм, вот об этом не подумал, спасибо. Видимо, мышление «лицензионного» пользователя взяло тут верх :)

Для любительской версии лимит на число пинов уберут, а вот всякие диф пары станут платными
Интересно, но вот при наличии EasyEDA теперь использование дома диптрейса становится под все больший вопрос — в чем его преимущество перед web-решением? Только в «теплой ламповости» локального приложения? Ну и в потенциально более высокой скорости работы (но это для любительских проектов может оказаться не столь важным). Зато преимущества ЕЕ налицо — публичные библиотеки компонентов, интеграция с JLC и LCSC (тот же самый партномер для заказа компонентов проставляется автоматически) и т.д.

вопросы разработчикам можно задавать в телеграме, они отвечают в своем чате
А ссылку на канал не подскажете?
+
avatar
  • woddy
  • 07 января 2020, 19:40
+1
t.me/diptrace_ru
он не официальный, но живые представители есть
+
avatar
  • Z2K
  • 07 января 2020, 19:45
+1
«они даже не ответили.» — в ихней понятийной вселенной это корректный ответ смайликом с одним пальцем.
«В итоге сделал все на бесплатном онлайн сервисе EasyEDA.» — так напишите им на чем Вы их вертели :)
+
avatar
+3
Отличный сервис, спасибо за его популяризацию. Сам пользовался несколько раз, стараясь конечно же вписаться в 2$(10смХ10см), больше стоила доставка. Платки приходили качественно исполненными, в вакуумной упаковке, плюс от фирмы ручка и листочки для заметок.
+
avatar
  • woddy
  • 06 января 2020, 21:38
+4
в этот раз так
+
avatar
  • exeland
  • 06 января 2020, 20:49
+2
красивая и аккуратная плата — глаза ненарадуются!
+
avatar
0
Так какая цена в общем за монтажку вышла не считая деталей?
+
avatar
  • woddy
  • 06 января 2020, 21:17
+5
монтаж с учетом купонов «якобы бесплатный».
текстолит / платы 4 слоя 30 баксов
комплектующие 77 баксов
доплата за то что коплектующие из расширенного списка принесли со склада 8 позиций по 3 доллара итого 24 бакса
доставка ЕМС 30 баксов
монтаж и подготовка 14 долларов компенсированы купонами (7 скидка и 7 купон)

итого 160 долларов +- за 10 плат
+
avatar
0
спасибо за ответ
+
avatar
+1
коплектующие из расширенного списка принесли со склада 8 позиций по 3 доллара итого 24 бакса
доставка ЕМС 30 баксов

итого 160 долларов +- за 10 плат
То есть вполне реально было сэкономить долларов 30…
+
avatar
  • woddy
  • 06 января 2020, 21:43
+1
Да.
Можно было заменить кварц на большой(49us) из базового списка например, но ради эстетики я не стал это делать. Это всё следует учитывать при разработке
+
avatar
-1
поставьте пробел.
*пример для 6слойной платы:*
+
avatar
+1
Как известно ввозить физику PCB борды нельзя, чтобы не попасть на растаможку можно ли попросить jlcpcb указать как gift?
+
avatar
  • woddy
  • 06 января 2020, 21:56
+4
Почему нельзя?
У меня постоянно идут небольшие партии (голых плат) на физлицо. 20-40шт не было проблем.
Эти тоже на физлицо покупал
Грабли сокрее с ценой, jlcpcb указывает настоящую цену, можно попасть на таможню если дороже 200 евро
+
avatar
  • olegmsn
  • 06 января 2020, 22:03
0
недавно завозил 100 плат на физлицо какраз запаянные с jlcpcb — завернули на таможне (Украина)
+
avatar
  • woddy
  • 06 января 2020, 22:12
+1
Ну 100шт уже палево. Тем более спаяные, на ренгене сразу видно
Я так не рискую
+
avatar
  • smartly
  • 06 января 2020, 22:26
0
Именно завернули, варианта растаможить не было?
+
avatar
  • olegmsn
  • 06 января 2020, 22:31
0
куча проблем. попросили китайцев переделать документы на фирму, DHL доставила новые документы, заплатили брокеру, налоги, таможенный сбор, содержание на таможенном складе и чтото еще и вот они тут) примерно месяца полтора… (правда мы не очень спешили)
+
avatar
  • kirich
  • 10 января 2020, 11:39
0
DHL доставила новые документы
В этих трех заглавных буквах и была Ваша ошибка. В последнее время они уж сильно ищут где бы чего отправить на растаможку.
+
avatar
0
А чем именно везли? Какая служба доставки?
+
avatar
  • olegmsn
  • 07 января 2020, 02:04
0
DHL
+
avatar
0
Та DHL кажись вообще часто заворачивают. Можно через Meest Express попробовать. Я с Таобао много всякого барахла, через них заказываю, думаю и платки на jlcpcb заказать на склад Meest в Китае, а потом уже в Украину. И доставка дешевле выйдет.
+
avatar
  • Shark
  • 07 января 2020, 02:56
0
Ну так у Вас скорее всего дело не в количестве, а в превышении беспошлинного порога в 100 евро.
+
avatar
  • olegmsn
  • 07 января 2020, 15:48
0
там можно былоб растаможить на физлицо, но таможня сказала что это коммерческая партия
+
avatar
+1
Формально код ТН ВЭД у печатных плат 8534 00 110 0, а это товары не относятся к товарам личного пользования.
Поэтому завернуть могут. На практике — редко. Но встрять будет неприятно.
electronix.ru/forum/index.php?app=forums&module=forums&controller=topic&id=151869
+
avatar
+4
Почти как моя плата :)
Заказана там же.

Только эти гаврики даже SMD не все паяют. UTP и USB разъемы, кнопку и переключатель отказались паять — положили в пакетике в посылку. Но радует, что все сходу заработало — ни одной проблемы не обнаружено, кроме тех, что сам создал :)
+
avatar
  • KiV
  • 06 января 2020, 23:27
+7
UTP и USB разъемы, кнопку и переключатель отказались паять
Не запаяли всё, что не проходило под термопрофиль их печки.
+
avatar
  • KiV
  • 06 января 2020, 23:38
0
пример для 6 слойной платы
А как у них дела обстоят с контролем импедансов? Делают «правильный» стек слоёв?
На сайте есть даже калькулятор импеденса дорожек. Но вот что-то мне кажется, что китайцы согласно этого калькулятора импедансы и «рисуют». Без реального контроля того, что получилось.
Может пробовал кто?
+
avatar
  • woddy
  • 06 января 2020, 23:41
+1
Реальный контроль судя по всему не делают. Пересчитывают ширину дорожек с учетом проектных «засветов» и «подтравов» Но usb3.0 и ethernet при этом работают.

Как я могу дома измерить реальный импеданс? я не придумал. Меня тоже это волнует немного
+
avatar
  • KiV
  • 07 января 2020, 00:38
+2
У USB3.0 и Ethernet довольно большие допуски, особенно на коротких трассах. Меня больше LVDS и DDR3/4 интересует.

А измерить импеданс дорожки можно рефлектометром, если такой дома имеется. Правда, кроме самого рефлектометра, надо ещё специальные кабели/разъёмы/контактирующие для конкретного случая («оснастку», как обычно называют), которые могут стоить как половина самого измерителя.
+
avatar
  • woddy
  • 07 января 2020, 00:46
0
Я тупой в этой теме. Если не сложно, напишите примеры начального оборудования которое это может.

arinst.ru/arinst-ssa-pro-r2.php вот подобным можно измерить например?
+
avatar
  • KiV
  • 07 января 2020, 01:44
0
Оборудование — или рефлектометр (TDR в англоязычной литературе), или векторный анализатор цепей (VNA). Но векторным анализатором результат можно получить только косвенным путём. В интернете есть статьи на эту тему, в основном на английском — с теорией и формулами. В коротком комментарии нереально рассказать о процессе и теории измерения. Это надо углубляться в СВЧ.

Нет, это всего лишь анализатор спектра, таким не получится измерить. Как минимум, надо ещё генератор для тестового сигнала и постороить в каком либо СВЧ САПР отклик в идеальной линии с нужным сопротивлением. А потом промерить отклик в измеряемой линии и сравнить. Как-то так.

PS. На производстве платы измеряют с помощью TDR. По крайней мере там, где я знаю.
+
avatar
  • Davinci
  • 06 января 2020, 23:39
+7
Хороший пост и комментарии, столько всего нового узнал
+
avatar
0
А насколько оправдано по применение 4х слоёв? Сдаётся мне, и на 2х уместилось бы.
+
avatar
  • woddy
  • 06 января 2020, 23:52
+4
Время. Разводить в 4х слоях можно за пару часов. Разводить в 2х слоях потратить лишний день. День сотрудника стоит дороже чем 30 долларов за опытную партию.

Формально требуется 4 слоя потому что есть диф пары езернета. По факту они на столько короткие что можно не согласовывать импеданс
+
avatar
+2
И скорее всего питание будет хуже разведено, чем если делать на 4-хслойке, где внутренние слои тупо под питание уйдут.
+
avatar
  • ender11
  • 07 января 2020, 05:22
0
кстати, а bga корпуса они паяют?
+
avatar
  • woddy
  • 07 января 2020, 09:12
+1
нет
+
avatar
  • ender11
  • 07 января 2020, 22:39
0
спасибо за ответ, а qfn?
+
avatar
  • woddy
  • 07 января 2020, 23:06
+1
да. в каталоге много qfn микросхем
+
avatar
  • kirich
  • 10 января 2020, 11:45
0
День сотрудника стоит дороже чем 30 долларов за опытную партию.
Вы сейчас написали за 30 баксов, а я вспомнил вчерашний разговор с монтажником/настройщиком домофонов.
Надо подключить домофон, все разведено, но этажные блоки ставили не везде, а только тем кто на начальном этапе оплатил это. Потребовалось доустановить и подключить, вчера мне выставили счет:
1. Блок коммутации, при цене блока около 500-600грн (20-25 долларов) загадали почти в полтора раза больше.
2. Приезд, подключение на этаже, программирование (несколько перемычек ткнуть), еще около 900грн (почти 40 долларов).

Итого что-то около 1650грн (70 долларов) из которых монтажнику почти 50. А квалификация монтажника домофонов и разработчика печатных плат сильно отличается.
+
avatar
  • Aprel
  • 06 января 2020, 23:48
+2
Товарищи, подскажите пожалуйста, смотрю знающие люди собрались. Есть плата от оборудования, многослойная, схем нет, возможно где то изготовить аналог?
+
avatar
  • woddy
  • 06 января 2020, 23:54
+3
Она одна? можно сошлифовать по слоям, запихать в сканер и сделать герберы. Муторно но реально. Есть риски запороть если экземпляр один.

Обычно разработать с нуля аналог бывает проще/дешевле. Смотря на сколько сложное устройство, есть ли прошивки,…
+
avatar
  • ksiman
  • 07 января 2020, 01:03
+2
возможно где то изготовить аналог?
Без разрушения платы скорее всего не получится
+
avatar
  • Ath
  • 07 января 2020, 01:43
+1
Работаю в цеху автоматического монтажа печатных плат и удивлен что китайцы берутся за за столь мелкие индивидуальные заказы по такой скромной цене, профита мне кажется никакого )
И не понял из статьи как они флюс-пасту там наносят? неужели в эту стоимость еще входит стенсил для принтера? )
+
avatar
  • olegmsn
  • 07 января 2020, 02:08
0
сори… какаято фигня с дубликатами коментов
+
avatar
  • olegmsn
  • 07 января 2020, 02:09
+3
входит все. прикол в том, что у них в станках уже стоят компоненты. ну и еще это первый сервис с такой ценой) обычно доларов 300-500 за 10 плат с детальками (примерно таких же проц+периферия)

дето видео в инете есть как они платы колбасят — оно прикольное
+
avatar
  • Ath
  • 07 января 2020, 02:25
0
Интересно было бы посмотреть видео с их производства) Почему-то кажется что они работают на старых списанных расстановщиках 90х годов, уже непригодных к сложным задачам) Современное оборудование точно не рационально под такое использовать, слишком дорогое операционное время.
+
avatar
  • olegmsn
  • 07 января 2020, 02:49
+3
www.youtube.com/watch?v=ljOoGyCso8s
тут только сами платы без сборки

я в оборудовании не очень разбираюсь, но мне кажется что это:
Min. Trace 3.5mil
Min. Spacing 3.5mil
Min. Via hole size 0.2mm
Min. Via diameter 0.45mm
явно даже не 2000е годы. это конечно не топ (немцы могут сильно круче) но и не отстой)

причем 3.5mil я антенну в 6 слоев делал (чтоб было понятно — это нельзя оттестировать через needle test) так вот по индуктивности отбраковывали платы — брак меньше 2%.
так что похоже можно было б размеры и меньше сделать — производство позволяет…
+
avatar
  • Ath
  • 07 января 2020, 03:08
+1
Спасибо за видео, производство серьезное, не foxconn конечно, но и не кустарный китай )
Жаль показали только процесс производства печатных плат, без линии монтажа компонентов.
+
avatar
  • Hoopick
  • 07 января 2020, 08:17
+1
Или вот
www.youtube.com/watch?v=_GVk_hEMjzs
покороче, выглядит круто(но тоже без сборки)
а здесь про трафареты для пасты
www.youtube.com/watch?v=uXvXwzQf1gU
+
avatar
  • Z2K
  • 07 января 2020, 03:46
+6
«мелкие индивидуальные заказы по такой скромной цене, профита мне кажется никакого» — финансового профита никакого, но о них полмира знает, а о вас полтора человека. В этом и профит.
+
avatar
  • Ath
  • 07 января 2020, 04:06
0
И к чему этот выпад? Вы знаете где я работаю? И у нас собственное производство, мы не берем заказы со стороны.
«финансового профита никакого» — ишь какие меценаты в нашем капиталистическом мире, главное слава ))
+
avatar
  • Z2K
  • 07 января 2020, 07:51
+2
Какой выпад? О тех кто создает Фалькон-9 тоже мало кто знает. Им нужна не слава — им нужна известность и репутация в определенном не столь обширном сообществе. Они работают на построение и расширение клиентской базы. А цены они повысят, конкурентов то нет.
+
avatar
  • woddy
  • 07 января 2020, 09:14
+6
десять бабушек — уже рубль! ©
+
avatar
  • woddy
  • 07 января 2020, 09:13
+1
входит и паста и трафарет
+
avatar
  • Shark
  • 07 января 2020, 02:53
0
Скажите, а если проект платы в Sprint Layout, можно не перерисовывая в JLCPCB SMT совместимый формат как то герберным файлам платы добавить файл с картой радиоэлементов?
+
avatar
0
Берёте просмотровщик или редактор герберов, смотрите на координаты площадок, записываете в табличку. Проверяете по рендеру на сайте.
+
avatar
  • woddy
  • 07 января 2020, 09:17
0
Все программы умеют генерировать PnP файл. Гугл говорит так
www.pcbway.com/blog/PCB_Layout_Software/How_to_output_pick_place_file_from_Sprint_Layout_software.html
Но возможно вам придется немного причесать его в экселе
+
avatar
  • r0c
  • 07 января 2020, 05:33
0
а возможно заказать голые платы и одновременно на lcsc купить деталей, что бы в одной посылке пришло? научите, как?
+
avatar
  • woddy
  • 07 января 2020, 09:17
0
раньше можно было, щас почему-то убрали
+
avatar
  • valius
  • 07 января 2020, 13:22
0
Некоторое время назад можно было совместить заказы. Потом они мне написали, что из-за проблем с таможней не могут более два заказа скаладывать в одну коробку и выслали мне отдельными посылками. За доставку второй денег не взяли.
+
avatar
  • r0c
  • 07 января 2020, 14:12
0
а как покупку совместную сделать?
+
avatar
  • woddy
  • 07 января 2020, 14:18
0
уже никак. пол года назад убрали возможность
+
avatar
0
Можно написать им. На доставку компонентов 100% скидку делают. Мне поддержка ссылку давала на раздел сайта, где это описано, но сам сейчас искать не буду.
+
avatar
  • olegmsn
  • 07 января 2020, 15:30
0
убрали, можно скидку попросить при одновременном заказе и все…
написали что изза проблемм с китайской таможней.
кстати после моих проблем с таможней и 100 шт плат — они сократили количество плат до 50))))
+
avatar
  • smirta
  • 07 января 2020, 08:10
0
"… танталы и электролит..." — танталовые тоже электролитические!
+
avatar
+2
Ведь все всё прекрасно поняли, зачем придираться к словам?
+
avatar
  • smirta
  • 07 января 2020, 18:59
-1
Чтобы ещё и вы поняли.
+
avatar
-1
Вон оно че, мсье, вы просто самодур с раздутым ЧСВ, а я думал нормальный человек.
Но проблем, лес там >>>>
:)
+
avatar
  • Stress
  • 07 января 2020, 09:00
0
Название страны надо с большой буквы писать
:)
+
avatar
0
А что делать если нужны две небольшие и крайне простые 2 сторонние платы в количестве пары штук? С JLC заказывал до этого, но мне такое количество не нужно, может с али заказать, там же тоже есть такие продавцы. Кто-нибудь практиковал такое и как это вообще все выглядит?
+
avatar
  • woddy
  • 07 января 2020, 14:20
0
Вам нужен монтаж или текстолит?
монтаж в остальных местах, тем более штучный очень дорогой
+
avatar
0
Только изготовление платы, монтаж не надо
+
avatar
  • woddy
  • 07 января 2020, 14:33
+1
Тогда берите в jlcpcb, альтернативы по цене нет, особенно если размер вылазит за 10х10см.
Для удешевления доставки выбирать 5шт и толщину 1.2мм (0.8 наверное тоже можно, но совсем хлюпко будет)

Сравнить цены можно тут pcbshopper.com/ (не всегда правильно считает)
+
avatar
+2
В JLC минимум пять, заказывайте пять, три останутся как запасные. Но там эти пять получатся, скорее всего, дешевле, чем две в других местах.
+
avatar
  • Eddy_Em
  • 10 января 2020, 09:35
0
«Крайне простые» платы легко делаются фоторезистом или ЛУТом.
Вот такая элементарщина за полдня делается.
+
avatar
0
Да я и делаю, но на двухсторонних платах с десятком переходных отверстий это уже мучения. Просто думал мож можно подешевле того же jlc заказывать где-то на Али. Походу нет
+
avatar
  • Eddy_Em
  • 10 января 2020, 11:25
0
Маленькие платы можно самому разместить в квадрате 100х100мм и получится несколько разных дизайнов (правда, самому нужно будет разломать). В итоге где-то на 1000-1200 получится 20-30 разных мелких плат. Ну или заказывать 5 штук и тоненьких, в этом случае где-то в 600-700р можно уложиться. Дешевле — только самому делать.
+
avatar
  • Korfez
  • 07 января 2020, 18:07
0
А через каких посредников лучше везти из Китая в Россию?
+
avatar
  • ABU2014
  • 07 января 2020, 19:15
0
Посоветуйте пожалуйста, для Pick & place — где эта точка должна быть расположена у компонента?
(у меня библиотеки PCAD, созданные вручную)
Строго по центру?
+
avatar
  • woddy
  • 07 января 2020, 19:18
+1
Наверное да. У меня компоненты стандартные, экспортировалось само.
Вы можете загрузить свой файл им и посмотреть как встало на превью
+
avatar
  • ABU2014
  • 07 января 2020, 19:45
0
Спасибо!
+
avatar
  • molchec
  • 08 января 2020, 07:35
0
DHL на физ. лицо доставка? Нормально они возят без проволочек?
+
avatar
  • woddy
  • 08 января 2020, 11:21
0
dhl только на юриков доставляют
+
avatar
  • ybxtuj
  • 08 января 2020, 15:45
0
красиво делают