Skip to the content
PCBKitNew board
2 layers180.3 × 100.1 mmBrushed bts7960, the printed circuit board in 3D

Brushed bts7960

GOODWORKRINKZ/biba

BiBa robot

Size
180.3 × 100.1 mm
Copper layers
2
Thickness
1.6 mm
Parts
494
Nets
58
Pads
690
Tracks, vias
584, 65
Pours
16
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
24 Mar 2026
Updated
19 Oct 2026

Overview

Brushed bts7960 is an open-source printed circuit board by GOODWORKRINKZ, from the GOODWORKRINKZ/biba repository on GitHub. It is a 2-layer board of 180.3 × 100.1 mm with 494 parts on 58 nets, routed with 584 tracks and 65 vias.

It is built around the NSD10-48S5, BTN7970S and BMI160, with the 1.5KE30CA among its other parts. Its parts include 28 resistors, 16 capacitors, 5 ICs, 4 connectors and 2 diodes.

Main components

4

README

kicad/variants/brushed-bts7960/README.md

Вариант 1: коллекторные моторы + BTS7960 (brushed-bts7960)

Статус: ревизия после разбора отказа U2. Импорт из EasyEDA закрыт, сверху внесена доработка по analysis/M1-driver-failure.md §5: керамика по питанию драйверов, DC-link, снабберы и супрессоры на выходах, альтернативный DC/DC. Плата выросла до 180.5 × 100.3 мм.

Что это

Первый (основной) вариант привода BiBa: два коллекторных редукторных мотора MY1016Z, управляемые двумя модулями BTS7960, под управлением платы RP2040 (YD-RP2040 / RPi Pico-класс).

Источник истины

  • Таргет: firmware/targets/RP2040_DC_BTS7960_PWM/ — target.md (распиновка), target.h (пины).
  • Варианты: docs/variants.md.
  • Шасси: firmware/tools/cad/sbiba_chassis.py — MY1016Z 24 В / 250 Вт, колесо насаживается прямо на выходной вал редуктора.

Gerber-анализ (архив 2026-05-27)

Исходник: Gerber_RP2040_PCB_RP2040_2026-05-27.zip — экспорт из EasyEDA (How-to-order-PCB.txt ссылается на docs.easyeda.com). Двухслойная плата, нетлиста (IPC-356) в архиве нет → схема из гербера напрямую не восстанавливается (в герберах только разводка и шелкография, без номиналов и соединений на уровне схемы).

Отрендеренные слои: gerber/render/ (рендер — scripts/gerber_render.py, через pygerber). Состав платы по меди + шелкографии:

  • Слева: посадочное место RP2040-модуля (два ряда площадок) + разъём MPU (J7).
  • Центр: аналоговая обвязка U1 + RC (R4–R24, C1–C12) — RC-фильтры и делители.
  • Справа: два силовых блока BTS7960 (M1, M2), толстые токовые дорожки.
  • Разъёмы: UART1 (RX/TX/+5V/SW), CRSF (+/−/TX/RX), BAT, площадка приёмника 2.4 GHz.
  • Низ: GND-полигон + сигнальная разводка, сквозные переходные.

Восстановленная схема (из EasyEDA-исходника)

Исходник EasyEDA лежит в easyeda/RP2040/ (RP2040.json — схема, PCB_RP2040.json — плата). Из него восстановлены 57 компонентов и 56 сетей:

  • easyeda/RP2040/netlist.txt — полный нетлист (сеть → пины).
  • easyeda/RP2040/components.tsv — список компонентов (обозначение, номинал, корпус, LCSC).
  • Парсер: scripts/easyeda_netlist.py.

Архитектура (точнее, чем в target.md):

  • Питание: VIN (24 В) → C9 1000 мкФ → PM1 SKMW30G-05 (24→5 В) → +5V; +5V → U7 SPX3819M5-L-3-3 (5→3.3 В) → 3.3V.
  • MCU: IC1 — RP2040 breakout (44 пина), распиновка совпадает с target.h.
  • Драйверы моторов: 4× BTN7970 (U2–U5), по два полумоста на мотор (левый: U2 high + U3 low; правый: U4 high + U5 low). Выходы M1+/M1− и M2+/M2−.
  • Буфер: U1 SN74AHC244DW — 8 линий PWM/EN от RP2040 → IN/INH драйверов.
  • IMU: U6 BMI160 на I2C0 (GP20/GP21) + INT на GP22, подтяжки R22/R23 10 кОм.
  • Токовый сенс: IS драйверов → R17–R20 (1 кОм) → R_IS/L_IS → RC (C2/C3 0.1 мкФ) → IC1.31/32; R11–R16 (10 кОм) — подтяжки IS к GND.
  • VBAT/IBAT: R26/R25 (1 кОм) → IC1.34/35; разъём H10 (GND/VBAT/IBAT).
  • Периферия: J3 CRSF (+5V/GND/TX/RX), J4 UART1 (+5V/GND/TX/RX); свободные GP10–GP19 выведены на H1–H8 (1×3: GPIO, +5V, GND).
  • Включение: J2 (SW/GND/+5V/GND) — управление DC/DC; J1 (+5V/PM1_4/GND).

Состав (блок-схема)

mermaid
flowchart LR
    BAT["Батарея 24 В<br/>(Daly BMS)"] --> VBAT["Делитель VBAT<br/>GP28 (ADC2)"]
    BAT --> IBAT["Датчик тока батареи<br/>GP29 (ADC3)"]
    BAT --> DCDC["DC/DC 24→5 В<br/>(панели, плата)"]
    BAT --> BTS_L["BTS7960 (левый)"]
    BAT --> BTS_R["BTS7960 (правый)"]
    RP["Плата RP2040"] -- "RPWM/LPWM + REN/LEN" --> BTS_L
    RP -- "RPWM/LPWM + REN/LEN" --> BTS_R
    BTS_L -- "IS (RC-фильтр)" --> RP
    BTS_R -- "IS (RC-фильтр)" --> RP
    BTS_L --> M_L["MY1016Z 24 В / 250 Вт (левый)"]
    BTS_R --> M_R["MY1016Z 24 В / 250 Вт (правый)"]
    CRSF["Приёмник CRSF/ELRS"] <-->|"UART0 (GP0/GP1)"| RP
    IMU["IMU BMI160 / LSM6DS3"] <-->|"I2C0 (GP20/GP21) + INT (GP22)"| RP
    SBC["Одноплатник"] <-->|"UART1 (GP12/GP13)"| RP
    RP --> RGB["RGB WS2812 (GP23, onboard)"]
    RP --> PANEL["LED-панели 2×4×4 (GP14)"]

Распиновка RP2040 (из target.h)

GPФункцияСигналНаправлениеПримечание
GP0UART0_TXCRSF TXВЫХк RX приёмника
GP1UART0_RXCRSF RXВХот TX приёмника
GP2PWM1AL_RPWMВЫХ ШИМслайс 1, канал A
GP3PWM1BL_LPWMВЫХ ШИМслайс 1, канал B
GP4GPIO OUTL_RENВЫХenable правого полумоста (левый драйвер)
GP5GPIO OUTL_LENВЫХenable левого полумоста (левый драйвер)
GP6PWM3AR_RPWMВЫХ ШИМслайс 3, канал A
GP7PWM3BR_LPWMВЫХ ШИМслайс 3, канал B
GP8GPIO OUTR_RENВЫХenable правого полумоста (правый драйвер)
GP9GPIO OUTR_LENВЫХenable левого полумоста (правый драйвер)
GP10–GP11—free—свободны
GP12UART1_TXSBC TXВЫХRP2040 → одноплатник
GP13UART1_RXSBC RXВХодноплатник → RP2040
GP14PIO OUTLED_PANELВЫХцепочка WS2812: GP14 → левая → правая
GP15—free—свободен
GP16–GP19—free—свободны (SPI0/I2C1/UART0 по выбору)
GP20I2C0_SDAIMU SDAI/O
GP21I2C0_SCLIMU SCLВЫХ
GP22GPIO INIMU INT1ВХпрерывание IMU
GP23WS2812RGB_LEDВЫХNeoPixel на YD-RP2040
GP25GPIO OUTSTATUS_LEDВЫХвстроенный LED Pico, активный HIGH
GP26ADC0IS_RIGHTВХRC-фильтр 1 кΩ‖1 кΩ + 0.1 µF от IS правого BTS7960
GP27ADC1IS_LEFTВХRC-фильтр 1 кΩ‖1 кΩ + 0.1 µF от IS левого BTS7960
GP28ADC2VBATВХделитель напряжения, коэфф. BIBA_VBAT_DIVIDER_RATIO
GP29ADC3IBATВХвыход датчика тока батареи

Силовые цепи

  • Шина 24 В — батарея (Daly BMS) → оба BTS7960, датчик тока батареи, вход DC/DC 24→5 В.
  • Шина 5 В — питание LED-панелей и Vin платы RP2040 (панели в худшем случае ~0.9 А на 32 светодиода, белый на ходу).
  • Шина 3V3 — логика (с платы RP2040), IMU, приёмник CRSF.
  • Общая земля силовой и логической частей (как в docs/wiring.md).

Измерения (АЦП)

КаналПинСигналКалибровка
ADC0GP26IS_RIGHTRC 1 кΩ‖1 кΩ + 0.1 µF от IS-пинов BTS7960
ADC1GP27IS_LEFTRC 1 кΩ‖1 кΩ + 0.1 µF от IS-пинов BTS7960
ADC2GP28VBATBIBA_VBAT_DIVIDER_RATIO = 10.12 (калибровано 2026-05-26)
ADC3GP29IBATBIBA_IBAT_AMPS_PER_VOLT = 1.0, BIBA_IBAT_ZERO_OFFSET_V = 0.0

Ключевые константы из firmware/include/biba_config.h:

  • BIBA_PWM_FREQUENCY_HZ = 20000 (несущая 20 кГц, выше слышимого).
  • BIBA_CONTROL_LOOP_HZ = 500, BIBA_TELEMETRY_PUBLISH_HZ = 200.
  • Левый/правый PWM-канал делят один слайс (фиксированный wrap) — независимые несущие на канал не поддерживаются (BIBA_TARGET_HAS_PER_CHANNEL_TIMER_PWM = 0).

BOM (черновик)

#КомпонентКол-воПримечание
1Плата RP2040 (YD-RP2040, USB-C, 2 МБ Flash)1совместима с RPi Pico
2Модуль BTS7960 43A dual H-bridge2по одному на мотор
3Мотор MY1016Z 24 В / 250 Вт, редукторный2левый/правый, колесо на валу
4Приёмник CRSF/ELRS1UART0 (GP0/GP1)
5IMU (BMI160 или LSM6DS3-class)1I2C0 (GP20/GP21), INT на GP22
6Батарея 24 В + Daly BMS1силовая шина
7Резисторный делитель VBAT1коэфф. 10.12 → GP28
8Датчик тока батареи (IBAT)1выход на GP29
9RC-фильтры IS: 1 кΩ‖1 кΩ + 0.1 µF2IS BTS7960 → GP26/GP27
10RGB WS28121onboard YD-RP2040 (GP23)
11LED-панели WS2812 4×42цепочка GP14 → левая → правая
12DC/DC 24→5 В1питание панелей и платы

Известные риски

  • Тепловой режим BTS7960 — известное слабое место под длительной нагрузкой (старт/стоп/реверс дают 3–10× номинал тока). См. .planning/phases/04-thermal-hardening/ — учитывать радиаторы/обдув и токовую защиту при проектировании платы.
  • Термо-защита снимается импульсом на REN/LEN (100 мкс LOW), PWM при этом должен оставаться нулём. См. .planning/phases/03-field-ready/.
  • Отказы драйвера U3 («M1 задний ход») на плате RP2040 — разбор обвязки BTN7970, трассировки и прошивки: analysis/M1-driver-failure.md.

Открытые вопросы (решить при отрисовке схемы)

  1. Тип датчика IBAT (ACS712 / INA226 / шунт+усилитель) — уточнить по факту.
  2. Предохранители на линии 24 В моторов (номинал, плавкие/автомат).
  3. Разъёмы: батарея (XT60/XT30?), моторы, приёмник, IMU, SBC.
  4. Интерфейс BMS (Daly BLE/UART) — выводить ли на плату.
  5. Разводка GP29/IBAT: калибровочные коэффициенты по конкретному датчику.

KiCad-проект (сгенерирован автоматически)

Импорт из EasyEDA закрыт целиком: и схема, и плата.

ФайлЧто это
brushed-bts7960.kicad_proпроект (классы цепей перенесены из DRCRULE EasyEDA)
brushed-bts7960.kicad_schсхема: 69 компонентов, 58 цепей (импорт 1:1 = 57/56, плюс доработка ниже)
brushed-bts7960.kicad_pcbплата 180.51 × 100.33 мм, 2 слоя, 69 компонентов (импорт был 124.51 × 100.33)
sym-lib-table / fp-lib-tableтаблицы библиотек
kicad/common/symbols/biba.kicad_symсимволы
kicad/common/footprints/biba.pretty/14 футпринтов, выгруженных с платы

Генераторы (импорт разовый — оба откажутся затирать существующий файл без --force, потому что схема и плата дальше ведутся в KiCad):

text
python scripts/easyeda_sch2kicad.py kicad/variants/brushed-bts7960   # схема
python scripts/gen_pcb.py           kicad/variants/brushed-bts7960   # плата

gen_pcb.py требует Python из состава KiCad (модуль pcbnew) — находит его сам, при нестандартной установке задайте KICAD_HOME. Плату импортирует штатный конвертер kicad-cli pcb import (формат EasyEDA / JLCEDA Std), свой парсер платы не пишем.

Что проверено

  • Связность совпадает с исходником EasyEDA побитово: 56 сетей, 220 пин-назначений, расхождений нет.
  • Схема и плата сходились 1:1 на момент импорта: все 56 цепей совпали по составу пинов, одинаковый набор из 57 обозначений, футпринт в схеме равен футпринту на плате, все ссылки biba:* разрешаются в biba.pretty. Расходились только имена 12 неподписанных цепей (KiCad зовёт их Net-(U2-IS), EasyEDA звал U2_6) — на связность это не влияет. После доработки ниже схема опережает плату на 11 компонентов.
  • DRC: 0 неразведённых пар, гербера и сверловка экспортируются.
  • ERC: 2 ошибки power_pin_not_driven (+5V и GND не имеют power-output пина). Это было и до импорта платы — лечится расстановкой PWR_FLAG в схеме.

Оставшиеся замечания DRC (555, все — свойства исходника)

Кол-воПроверкаПочему так
199pth_inside_courtyardмассивы переходных падов под силовыми выходами заходят в courtyard U2–U5 — так и задумано
185 + 49 + 28 + 1silk_*, text_heightшелкография EasyEDA: подписи наезжают друг на друга и на медь
64padstackу пассивов 0805/0603 в EasyEDA выставлено расширение пасты −100 мм, т.е. «паяльной пасты нет». В оригинальном Gerber_TopPasteMaskLayer.GTP апертур под эти пады действительно нет — перенесено как есть
22lib_footprint_mismatchодноимённые футпринты в исходнике расходятся на доли микрона и сдвинутыми подписями; эталоном берётся самый массовый экземпляр
7starved_thermalтермо-развязка в один луч вместо двух (правила KiCad строже, чем у EasyEDA)

Два полигона (VIN F.Cu и GND B.Cu) пустые — у них вырожденный контур в самом исходнике EasyEDA (площадь 0 и 0.5 мм²). Оставлены как есть.

Чего импорт не переносит

  • Правила DRC — переносит уже gen_pcb.py (зазор 0.152 мм, дорожка 0.254 мм, via 0.61/0.305 мм; отдельный класс 5v — дорожка 0.5 мм). Без этого плата осталась бы с дефолтами KiCad (зазор 0.2 мм), под которые она не разводилась.
  • Заливку полигонов — импортёр переносит контуры без вырезов под чужие цепи, поэтому gen_pcb.py перезаливает их штатным ZONE_FILLER (иначе DRC показывает ~900 ложных пересечений).
  • 3D-модели — kicad/common/3dmodels/ пуст.

Свободные пады и отверстия

EasyEDA держит вне компонентов 425 объектов, KiCad заводит под них псевдо-футпринты Pad_ggeNNNN / Hole_ggeNNNN. Все помечены board-only (мимо BOM и pos-файлов). Состав:

  • 400 падов 0.61/0.3 мм на M1±/M2± — токовые переходные массивы;
  • 12 падов 1.0/0.6 мм на GND — сшивка земли;
  • 6 падов 5×4 мм со сверловкой 2 мм — силовые клеммы VIN, GND, M1±, M2±;
  • 5 отверстий 3.2 мм NPTH — крепёж;
  • 2 пада 2.0/0.91 мм — отводы +5V и GND.

Доработка после импорта (2026-09-21)

В схему добавлен блок защиты и развязки по analysis/M1-driver-failure.md §5 — подробности и обоснование номиналов в §5a того же документа:

  • C10–C13 470 нФ X7R 50 В — керамика VS–GND у каждого драйвера U2–U5 (§5.1);
  • C14 1000 мкФ 50 В low-ESR — DC-link у пары U2/U3, где его не хватало (§5.2);
  • R27+C15, R28+C16 22 Ом 5 Вт + 100 нФ 100 В плёнка — RC-снабберы между выходами каждого моста, M1+/M1− и M2+/M2− (§5.7);
  • D1, D2 1.5KE30CA — супрессоры на выводах моторов, параллельно снабберам.

Шина VIN при этом осталась без супрессора — §5.3 анализа и статья просят TVS именно там. Закрывается третьим корпусом (D3) на VIN–GND у клеммы.

Стало: 68 компонентов, 58 цепей (добавились M1_SNUB, M2_SNUB). ERC без новых замечаний. Для TVS заведён символ biba:TVS_BIDIR; футпринты выводных деталей взяты из стандартных библиотек KiCad (Diode_THT, Resistor_THT, Capacitor_THT) — они резолвятся через глобальную fp-lib-table, в проектную ничего добавлять не нужно.

Заодно метка цепи в схеме переименована Vin → VIN: имена сетей в KiCad регистрозависимы, а на плате и во всей документации цепь называется VIN.

Ревизия платы (2026-09-21)

Доработка перенесена на плату. Плата выросла: 124.51 × 100.33 → 180.51 × 100.33 мм (+56 мм вправо). Снабберные резисторы 5 Вт — выводные 25×9 мм с шагом 30.5 мм, на старую плату они не помещались нигде: ближайшее свободное место было в 48 мм от клемм мотора, что смысл снаббера убивает.

Новая полоса справа от клемм:

Компоненты стоят вертикальными колонками: супрессор у самых клемм (x≈216), за ним мощный резистор (x≈226), за ним плёнка (x≈236). Мощные резисторы развёрнуты вертикально — так полоса по горизонтали освобождается под PM2.

ГруппаСоставРасположение
M1D1, R27, C15y 50…84
M2D2, R28, C16y 86…120
ПитаниеPM2 (альтернативный DC/DC)x 240…267, y 60…112

Шины M+ и M− идут параллельно и нигде не пересекаются: от клеммы к супрессору поверху, дальше через резистор к плёнке и обратно понизу.

PM2 сдвинут влево и целиком помещается на плате. В первой раскладке он стоял у правого края, и его корпус (52.4 мм при рядах выводов 20.32 мм) вылезал за контур на 8 мм — пады были внутри, а тело нет.

PM2 — альтернативный DC/DC Mean Well NSD10-48S5 (22–72 В → 5 В / 2 А, DIP-6, футпринт Converter_DCDC_MeanWell_NSD10_THT из стандартной библиотеки KiCad). У него свои отверстия, не общие с PM1: назначение выводов 3/4/5 у модулей разное (у SKMW30G-05 на выводе 3 плюс выхода, у NSD10 — минус), поэтому общая разводка сожгла бы NSD10. Каждый модуль разведён по своему даташиту, ставится один из двух.

Керамика C10–C13 стоит слева от выводов драйверов (под корпусом TO-263 места нет), пад GND заведён переходным отверстием на нижний GND-полигон. C14 1000 мкФ — вверху, симметрично C9.

Схема и плата сходятся: 69 компонентов с обеих сторон, все 58 цепей совпадают по составу пинов.

Силовая часть: стекап и земля драйверов

Стекап задан явно — медь 70 мкм (2 oz) на обоих слоях, FR-4 1.51 мм, ENIG. Плата и так делается на 2 oz, но в файле была только общая толщина 1.6 мм, и вес меди оставался догадкой: любой расчёт по геометрии висел в воздухе.

По расчёту (scripts/pcb_power_check.py, разбор — §7 анализа) дорожка M± шириной 4 мм на 2 oz даёт 20.9 А при перегреве +45 °C, то есть ровно номинал мотора без запаса на пуск. Поэтому:

  • силовым выводам U2–U5 (1 GND, 7 VS, таб) и клеммам VIN/GND/M1±/M2± задано сплошное подключение к полигону вместо тепловых спиц;
  • у вывода 1 каждого драйвера добавлены переходные по GND (было 3 на драйвер, стало 5–6), с дорожкой 0.6 мм к паду. Всего переходных GND 22.

Ошибок starved_thermal стало 7 → 2 (оставшиеся у IC1, не силовые).

У PM2 разведены VIN (вывод 1) и GND (выводы 2 и 3) — короткими трассами от силовых клемм.

Что осталось развести вручную (6 связей, видны как ratsnest в pcbnew):

  • +5V и SW у PM2. Эти две цепи идут через всю плату к PM1 (+5V на PM1.3, SW на PM1.6) — около 110 мм каждая. Автоматический поиск пути по нижнему слою их находит (158 и 191 мм с обходами), но получившиеся два длинных выреза разрезают GND-полигон надвое: в DRC сразу появляются два изолированных островка GND и лишние starved_thermal. Это ровно тот дефект, который разбирается в §3.4 анализа, поэтому такой вариант отброшен. Нужно либо вести их по верхнему слою с ручной укладкой, либо принять разрез осознанно и провести его по краю платы.
  • VIN у C10, C11, C12 — прямая трасса к выводу 7 драйвера режет веер сигнальных выводов 2–6. Нужен обход низом или ручная трасса. У C13 путь был свободен, он разведён.
  • Один островок GND у вывода 1 U4.

Повторный импорт

Библиотека футпринтов и схема генерируются детерминированно — повторный запуск даёт побайтово тот же результат. А вот сам .kicad_pcb конвертер KiCad каждый раз пересобирает заново (новые UUID, другой порядок объектов), поэтому перезапуск gen_pcb.py даёт огромный diff при нулевых изменениях по сути. Плату после импорта правим в KiCad; gen_pcb.py перезапускаем только если поменялся исходник easyeda/RP2040/PCB_RP2040.json.

Дальнейшие шаги

  1. Дорастить 6 оставшихся связей в pcbnew: VIN у C10–C12, +5V и SW у PM2, островок GND у U4 (см. раздел про ревизию платы выше).
  2. Решить по супрессору на шине VIN (§5.3): добавить D3 или оставить как есть.
  3. Расставить PWR_FLAG в схеме — закрыть 2 ошибки ERC.
  4. Остальные пункты §5 анализа, не вошедшие в эту правку: U1 → AHCT244 (5.4), R_SR (5.5), R_IS (5.6), pull-down на входах U1 (5.8), тормозной чоппер (5.9).
  5. Разобрать шелкографию (234 предупреждения) — перенос подписей.
  6. Решить по 0805/0603: оставить их без паяльной пасты или вернуть апертуры.
  7. Подтянуть 3D-модели в kicad/common/3dmodels/.
  8. Экспорт герберов/BOM для производства из KiCad вместо архива EasyEDA.

Parts

494
QtyValueFootprintReferences
9HDR-F-2.54_1x3biba:HDR-F-2.54_1X3H1, H2, H3, H4, H5, H6, H7, H8, H10
810kbiba:R0805R9, R10, R11, R12, R13, R14, R15, R16
830kbiba:R0805R1, R2, R3, R4, R5, R6, R7, R8
60.1ubiba:C0805C1, C2, C3, C4, C5, C6
61kbiba:R0805R17, R18, R19, R20, R25, R26
410kbiba:R0603R21, R22, R23, R24
4470nC0805C10, C11, C12, C13
4BTN7970biba:TO-263-7_L10.2-W10.4-P1.27-LS14.4-BU2, U3, U4, U5
3HDR-M-2.54_1x4biba:HDR-M-2.54_1X4J2, J3, J4
21.5KE30CAD_DO-201AE_P15.24mm_HorizontalD1, D2
2100n 100VC_Rect_L10.0mm_W5.0mm_P5.00mm_P7.50mmC15, C16
222R 5WR_Axial_Power_L25.0mm_W9.0mm_P30.48mmR27, R28
11000uCAP-TH_BD16.0-P7.50-D0.8-FD-H25.0C14
11000uFbiba:CAP-TH_BD16.0-P7.50-D0.8-FD-H25.0C9
11uFbiba:C0603C7
12.2uFbiba:C0603C8
1BMI160biba:LGA-14_L3.0-W2.5-P0.50-BLU6
1HDR-M-2.54_1x3biba:HDR-M-2.54_1X3J1
1Hole_gge31981Hole_gge31981Hole_gge31981
1Hole_gge31996Hole_gge31996Hole_gge31996
1Hole_gge32011Hole_gge32011Hole_gge32011
1Hole_gge53711Hole_gge53711Hole_gge53711
1Hole_gge53741Hole_gge53741Hole_gge53741
1NSD10-48S5Converter_DCDC_MeanWell_NSD10_THTPM2
1Pad_gge32188Pad_gge32188Pad_gge32188
1Pad_gge32224Pad_gge32224Pad_gge32224
1Pad_gge32248Pad_gge32248Pad_gge32248
1Pad_gge32347Pad_gge32347Pad_gge32347
1Pad_gge32350Pad_gge32350Pad_gge32350
1Pad_gge32353Pad_gge32353Pad_gge32353
1Pad_gge32416Pad_gge32416Pad_gge32416
1Pad_gge32419Pad_gge32419Pad_gge32419
1Pad_gge32422Pad_gge32422Pad_gge32422
1Pad_gge32482Pad_gge32482Pad_gge32482
1Pad_gge32485Pad_gge32485Pad_gge32485
1Pad_gge32488Pad_gge32488Pad_gge32488
1Pad_gge61193Pad_gge61193Pad_gge61193
1Pad_gge61325Pad_gge61325Pad_gge61325
1Pad_gge61349Pad_gge61349Pad_gge61349
1Pad_gge61511Pad_gge61511Pad_gge61511
1Pad_gge61535Pad_gge61535Pad_gge61535
1Pad_gge61559Pad_gge61559Pad_gge61559
1Pad_gge61583Pad_gge61583Pad_gge61583
1Pad_gge61607Pad_gge61607Pad_gge61607
1Pad_gge61754Pad_gge61754Pad_gge61754
1Pad_gge61757Pad_gge61757Pad_gge61757
1Pad_gge61760Pad_gge61760Pad_gge61760
1Pad_gge61763Pad_gge61763Pad_gge61763
1Pad_gge61766Pad_gge61766Pad_gge61766
1Pad_gge61769Pad_gge61769Pad_gge61769
1Pad_gge61772Pad_gge61772Pad_gge61772
1Pad_gge61775Pad_gge61775Pad_gge61775
1Pad_gge61898Pad_gge61898Pad_gge61898
1Pad_gge61901Pad_gge61901Pad_gge61901
1Pad_gge61904Pad_gge61904Pad_gge61904
1Pad_gge61907Pad_gge61907Pad_gge61907
1Pad_gge61910Pad_gge61910Pad_gge61910
1Pad_gge61913Pad_gge61913Pad_gge61913
1Pad_gge61916Pad_gge61916Pad_gge61916
1Pad_gge61919Pad_gge61919Pad_gge61919
1Pad_gge62042Pad_gge62042Pad_gge62042
1Pad_gge62045Pad_gge62045Pad_gge62045
1Pad_gge62048Pad_gge62048Pad_gge62048
1Pad_gge62051Pad_gge62051Pad_gge62051
1Pad_gge62054Pad_gge62054Pad_gge62054
1Pad_gge62057Pad_gge62057Pad_gge62057
1Pad_gge62060Pad_gge62060Pad_gge62060
1Pad_gge62063Pad_gge62063Pad_gge62063
1Pad_gge62186Pad_gge62186Pad_gge62186
1Pad_gge62189Pad_gge62189Pad_gge62189
1Pad_gge62192Pad_gge62192Pad_gge62192
1Pad_gge62195Pad_gge62195Pad_gge62195
1Pad_gge62198Pad_gge62198Pad_gge62198
1Pad_gge62201Pad_gge62201Pad_gge62201
1Pad_gge62204Pad_gge62204Pad_gge62204
1Pad_gge62207Pad_gge62207Pad_gge62207
1Pad_gge62330Pad_gge62330Pad_gge62330
1Pad_gge62333Pad_gge62333Pad_gge62333
1Pad_gge62336Pad_gge62336Pad_gge62336
1Pad_gge62339Pad_gge62339Pad_gge62339

The 126 most common of 494 parts.

Questions

How big is the Brushed bts7960 PCB?

It measures 180.3 × 100.1 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Brushed bts7960 use?

494 parts, built around the NSD10-48S5, BTN7970S, BMI160 and 1.5KE30CA. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Brushed bts7960 KiCad files?

From the GOODWORKRINKZ/biba repository on GitHub, at the commit this page was made from: the board is kicad/variants/brushed-bts7960/brushed-bts7960.kicad_pcb and its schematic kicad/variants/brushed-bts7960/brushed-bts7960.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Brushed bts7960 design in my own project?

Its repository states no licence, so its author keeps all rights: ask GOODWORKRINKZ before reusing the design.

Similar boards

  • 2 layers105 × 86 mmCCG UPDATED, the printed circuit board in 3D

    CCG UPDATED

    Alwinn07/Power-Distribution-Board-using-CCG30-48-05S-IC

    An isolated 30 W DC-DC power converter PCB based on the CCG30 module, featuring surge protection, EMI filtering, current limiting, reverse polarity protection, and robust power input circuitry.

    58 partsMIT
  • 2 layers114 × 137.6 mmPower board, the printed circuit board in 3D

    Power board

    OxeBots/ssl_electronics

    Oxebots electronics design for the RoboCup Soccer Small-Size League

    37 partsGPL-3.0
  • 2 layers59.1 × 99.9 mmCheap FOCer 2 60mm, the printed circuit board in 3D

    Cheap FOCer 2 60mm

    shamansystems/Cheap-FOCer-2

    Low-Cost Motor Controller based on the VESC 6

    193 parts407
  • 2 layers41 × 22 mmUECG rev4, the printed circuit board in 3D

    UECG rev4

    ultimaterobotics/uECG_v4_3_all

    uECG - very small wearable ECG device that sends raw and processed data over BLE

    69 parts77MIT
  • 4 layers38.1 × 25.4 mmOpenHAK 03, the printed circuit board in 3D

    OpenHAK 03

    OpenHAK/OpenHAK_Hardware

    Opensource Health Activity Kit Hardware files

    51 parts56
  • 4 layers73.4 × 72.7 mmAwatch2, the printed circuit board in 3D

    Awatch2

    jwise/aWatch2-hw

    hardware for aWatch2

    177 parts18
  • 2 layers64.8 × 62 mmSensor, the printed circuit board in 3D

    Sensor

    chukhanhhoang/SoftRoboticSetupFesto

    Code for Raspberry Pi and Matlab/Simulink

    89 parts14
  • 2 layers81.7 × 372 mmUEggMG v3b, the printed circuit board in 3D

    UEggMG v3b

    ultimaterobotics/uEMG

    uEMG project

    80 parts14MIT