Readiness report
Libre Solar MPPT Charge Controller · 2026-09-04 00:06 · complete · 57 searches, 8 pages fetched
Cybersecurity — software & network: Review before networking · 3 findings
Details in the Cybersecurity section of the report below.
Readiness: Libre Solar MPPT 1210 HUS
Verdict: At risk · 2026-09-03 · est. parts cost $61–$70 per board, plus the 47 µH main inductor (quote-only) and PCB fabrication Cybersecurity — software & network: Review before networking
This is the cold check for this lab — there is no previous report, so every price, stock level and lifecycle status below is the baseline the next check will measure drift against. 41 of the 43 bill-of-materials lines are Active and in stock at an authorized distributor today, and the four lifecycle problems that did turn up (L3 obsolete, D6 obsolete, C15 at zero stock, C3 not-for-new-designs) each have a substitute checked spec by spec against distributor parametrics. The verdict is held down by one part: the 47 µH / 15 A main power inductor L1. DigiKey has no product for it and no ECIA-authorized distributor lists it at all, and the nearest catalog part falls short of the lab's own saturation-current and resistance requirements. Someone ordering this BOM today gets stopped at L1 and has to raise a quote with the Polish manufacturer or have the inductor custom wound. Everything else on the board is buyable this week.
Action required
| Part | Problem | Recommended action |
|---|---|---|
| L1 Feryster DTMSS-27/0,047/15-HX (47 µH, 15 A) | No DigiKey product and no ECIA-authorized distributor lists it. The manufacturer is trading but sells by quote. | Request a quote direct from Feryster (sales@feryster.pl / rfq@feryster.pl, +48 68-360-00-77) and budget for the lead time, or have a 47 µH / ≥ 15 A toroid custom wound. Do not substitute the Bourns 2300HT-470-H-RC — see Substitutes. |
| L3 Taiyo Yuden NR8040T100M (10 µH) | Obsolete. Zero stock at all five authorized distributors; DigiKey quotes an 8-week and Future a 24-week factory lead. | Order the Bourns SRN8040TA-100M instead — it is the alternative the lab's own BOM names and the board's KiCad pad is already "Bourns_SRN8040TA". |
| D6 onsemi SS14FL (bootstrap Schottky) | Obsolete. Zero stock at DigiKey and Mouser, 13-week factory lead, ECIA lifecycle risk High. Also the part the CSV BOM omitted entirely — it must still be populated. | Order the Diodes 1N5819HW-7-F (SOD-123, 40 V, 1 A). Do not order the near-identically named MCC SS14FL-TP — it is an SMA flat-lead part, a different land pattern. |
| C15 Samsung CL31A106KAHNNNE (10 µF, 25 V) | Zero stock at all five authorized distributors, 49-week DigiKey factory lead, ECIA supply-chain risk High. | Order the Murata GRM319R61E106KA12D — identical on every published parameter, 289,090 in stock at $0.47. |
| C3 Murata GRJ32DC72A475KE11L (4.7 µF, 100 V) | Lifecycle Not For New Designs, though 35,058 still in stock at DigiKey and six distributors carry it. | Buy what you need now. When it goes, the TDK C3225X7S2A475K200AB matches it on every published parameter. |
| C20/C21/C36/C40 Samsung CL31B226MPHNNNE (22 µF) | DigiKey has only 32 pieces — eight boards' worth — against 4 per board. | Buy from Mouser (1,629 @ $0.36) or Arrow (40,123) rather than DigiKey. No substitute needed. |
Cybersecurity — software & network
Review before networking — No known vulnerability was found, but nothing in this firmware was actually checkable - the Zephyr base floats on a branch head, three modules are commit-pinned source with no advisory database, and all five documentation dependencies are unpinned - so the unpinned posture, not a clean bill of health, is what the evidence supports.
| Component | Version | How known | Support status |
|---|---|---|---|
| Zephyr RTOS | not determined | unpinned (west.yml (fetched/01-west.yml) sets 'revision: v4.4-branch' for the zephyr project - a moving branch head, not a release tag or commit hash) | — |
| ThingSet Zephyr SDK | 8b32f7db1898dc51daa1834b3f8058de6a67166f | read from project (west.yml (fetched/01-west.yml), revision under the thingset remote, path thingset-zephyr-sdk) | — |
| Libre Solar OLED display library | 523b26c103de56714fcda655702d600870a671bc | read from project (west.yml (fetched/01-west.yml), revision under the libresolar remote, path modules/oled-display) | — |
| Unity unit-test framework (ThrowTheSwitch) | 74cde089e65c3435ce9aa87d5c69f4f16b7f6ade | read from project (west.yml (fetched/01-west.yml), revision under the throwtheswitch remote, path modules/unity) | — |
| Zephyr imported modules (cmsis_6, edtt, hal_stm32, zcbor, thingset-node-c) | not determined | unpinned (west.yml (fetched/01-west.yml) pulls these in through import name-allowlist entries that carry no revision of their own) | — |
| Sphinx (documentation build) | not determined | not determined (docs/requirements.txt (fetched/02-requirements.txt) constrains sphinx to '~=5.3' - a range, not an exact pin, so the installed version is whatever resolves) | — |
| Sphinx extensions (breathe, sphinx-notfound-page, sphinx-rtd-theme, sphinx-tabs) | not determined | unpinned (docs/requirements.txt (fetched/02-requirements.txt) lists all four with no version constraint at all) | — |
| Host build toolchain (west, CMake >= 3.20, Ninja, Python 3, Doxygen) | not determined | not determined (the snapshot records these from the firmware README with no versions stated, and nothing in the repository pins them; they are installed from unpinned system packages) | — |
| Component | Finding | Severity | Fix available? |
|---|---|---|---|
| Sphinx documentation toolchain | dependencies unpinned: 5 of 5 in docs/requirements.txt (breathe, sphinx ~=5.3, sphinx-notfound-page, sphinx-rtd-theme, sphinx-tabs), so the documentation build installs whatever versions are current and none of them could be checked for advisories. | posture | Mitigation only - pin versions / use the lockfile |
| Zephyr imported modules (cmsis_6, edtt, hal_stm32, zcbor, thingset-node-c) | Five sub-modules, including the STM32 hardware abstraction layer and the CBOR encoder that parses data arriving over the serial/USB link, are imported through west.yml with no revision of their own, so they inherit whatever the floating parent manifests happen to resolve to at build time. | posture | Mitigation only - give the imported modules explicit revisions, or freeze the whole tree with a west manifest lock, before using the build in a graded lab |
| Zephyr RTOS | The firmware's west.yml tracks the moving head of Zephyr's v4.4-branch instead of a release tag or commit, so two builds of this lab weeks apart can contain different operating-system code and there is no fixed version anyone can check for security advisories. | posture | Mitigation only - pin west.yml to a specific Zephyr release tag or commit hash so the firmware is reproducible and checkable |
What this means for your lab
As built, this board is not a network device: there is no Wi-Fi, Bluetooth or Ethernet on it, and the snapshot records no listening ports, no web interface and no default passwords. Someone would need physical access to the USB socket or the RJ25/UEXT connectors to talk to it. The real caution is what that physical link allows: the ThingSet protocol carried over those connectors is used to read telemetry and to write configuration and battery setpoints, and nothing in the sources says a client has to authenticate first - so treat anyone who can plug into the board as able to change how it charges a battery. Keep student boards on a bench, not connected to a shared lab PC that others can reach, and do not add a Wi-Fi or Ethernet module to the UEXT connector without talking to campus IT, because that is the moment the board becomes reachable from the network and none of that added exposure has been assessed here. Separately, the firmware does not pin its dependencies: it follows a moving Zephyr branch and pulls five sub-modules with no fixed versions, so the code students build this term is not guaranteed to be the code they built last term, and there is no version anyone can check against a vulnerability database. That is worth fixing before the build is used for graded work, but it is a reproducibility and auditability problem rather than an active attack path. Nothing in this check found a known vulnerability - but that is because almost nothing here could be checked, not because it came back clean.
Not checked
- Zephyr RTOS: endoflife.date has no product for Zephyr (the slugs 'zephyr' and 'zephyr-rtos' both returned product_not_found this run), and a branch head is not a version any advisory database can match - support status and advisory exposure are both unknown, not clean.
- Unity unit-test framework (ThrowTheSwitch): Pinned to a GitHub commit hash. GitHub is not an OSV package registry, so the vulnerability lookup this run returned 'unknown_ecosystem' and nothing was queried - not checked, not clean.
- ThingSet Zephyr SDK: Commit-pinned source repository with no ecosystem advisory registry to query (the snapshot's own check plan marks it not checkable).
- Libre Solar OLED display library: Commit-pinned source repository with no public advisory registry to query (the snapshot's own check plan marks it not checkable).
- Zephyr imported modules (cmsis_6, edtt, hal_stm32, zcbor, thingset-node-c): No independent revision in west.yml, so there is no concrete version to look up.
- Sphinx documentation toolchain (breathe, sphinx, sphinx-notfound-page, sphinx-rtd-theme, sphinx-tabs): All five rows in docs/requirements.txt are unpinned or range-constrained, so the automatic OSV check covered 0 of 5.
- Host build toolchain (west, CMake, Ninja, Python 3, Doxygen): Versions are not stated anywhere in the sources and nothing pins them; installed from unpinned system packages.
- ThingSet serial/USB configuration interface: The sources do not state whether the ThingSet protocol requires any authentication before a client may change battery setpoints or configuration, and no firmware source was read this run to determine it.
- zephyr 4.4: support status: endoflife.date has no such product
- zephyr-rtos 4.4: support status: endoflife.date has no such product
Parts
Microcontroller and integrated circuits
| Part | Spec/Package | Status | Stock | Price | Source |
|---|---|---|---|---|---|
| STM32L072CZT6 (U2) | Cortex-M0+, 192 KB flash, 48-LQFP 7×7; supply 1.65–3.6 V | Active | 1,374 | $5.91 | DigiKey; also Newark 1,355 @ $6.01 |
| LM5109BMAX/NOPB (U1) | Half-bridge gate driver, 8-SOIC; supply 8–14 V covers the +12 V rail | Active | 18,860 | $0.87 | DigiKey |
| INA2181A2IDGS (U6) | Dual current sense, gain 50 V/V, 10-VSSOP, supply 2.7–5.5 V. Order as INA2181A2IDGSR | Active | 1,561 | $0.80 | DigiKey. Sibling INA2181A2IDGST is Obsolete — avoid |
| LMR33630ADDA (U9) | 3 A synchronous buck, 400 kHz "A" variant, SO-PowerPAD-8 | Active | 507 | $3.39 | DigiKey |
| AP2210K-3.3TRG1 (U5) | 3.3 V LDO, 300 mA, SOT-23-5 | Active | 113,775 | $0.25 | DigiKey |
| D1213A-04SO (U3, U4) | 4-channel TVS array, SOT-23-6, 6 V breakdown. Order as D1213A-04SO-7 | Active | 6,592 | $0.72 | DigiKey |
Power MOSFETs and discrete transistors
| Part | Spec/Package | Status | Stock | Price | Source |
|---|---|---|---|---|---|
| PSMN5R2-60YLX (Q1, Q2, Q4) | N-channel 60 V, 100 A, LFPAK56 / Power-SO8 | Active | 2,224 | $1.98 | DigiKey; Mouser 34,664 @ $2.00 |
| BSC084P03NS3GATMA1 (Q3) | P-channel 30 V, 14.9 A (Ta), PG-TDSON-8-5 (5×6 mm) | Active | 17,192 | $1.76 | DigiKey; 4 distributors in stock |
| BSS83P H6327 (Q5–Q7) | P-channel 60 V, 330 mA, SOT-23. Order as BSS83PH6327XTSA1 | Active | 130,060 | $0.42 | DigiKey. ECIA lifecycle risk Med — see Watch list |
| MMBT3904-7-F (T1, T2) | NPN 40 V, 200 mA, SOT-23 | Active | 696,084 | $0.16 | DigiKey |
Diodes and protection devices
| Part | Spec/Package | Status | Stock | Price | Source |
|---|---|---|---|---|---|
| 1N4148W-7-F (D1, D4, D7) | 100 V, 300 mA fast switching, SOD-123 | Active | 1,271,331 | $0.18 | DigiKey |
| SS14FL (D6) | Schottky 40 V, 1 A, SOD-123F | Obsolete | 0 (13-week factory lead) | last $0.35 at MCC's SMA part — not equivalent | onsemi part has zero stock at DigiKey and Mouser. See Substitutes |
| SMBJ24A (D5) | Unidirectional 600 W TVS, 24 V standoff, DO-214AA/SMB | Active | 31,232 | $0.50 | DigiKey (Littelfuse — allowed by the snapshot) |
| Keystone 3557-2 (F1 clip) | 2-in-1 PCB fuse clip for ATO/ATC blade fuses | Active | 194,660 | $1.09 | DigiKey |
| Littelfuse 0287015.PXCN (F1 fuse) | 15 A ATO automotive blade fuse | Active | 55,099 | $0.44 | DigiKey. BOM says 25 A, manual says 15 A — unresolved in the sources |
| 0ZCJ0005FF2E (F2) | PTC resettable, 50 mA hold, 1206 | Active | 554,466 | $0.21 | DigiKey |
Inductors and magnetics
| Part | Spec/Package | Status | Stock | Price | Source |
|---|---|---|---|---|---|
| Feryster DTMSS-27/0,047/15-HX (L1) | 47 µH ±20%, Isat ≥ 15 A, DCR ≤ 15 mΩ, through-hole toroid ~32 mm | Hard to obtain | — | — | No DigiKey product; no ECIA-authorized distributor lists it. Manufacturer trading at feryster.pl — quote only |
| Taiyo Yuden NR8040T100M (L3) | 10 µH, Isat 3.4 A, DCR 44.2 mΩ, 8×8×4 mm SMD | Obsolete | 0 at all five distributors | last $0.41 | DigiKey 8-week, Future 24-week factory lead. See Substitutes |
| Taiyo Yuden BRL3225T2R2M (L2) | 2.2 µH, 1.15 A, 1210 wirewound | Active | 66,243 | $0.17 | DigiKey |
Resistors and thermistors
| Part | Spec/Package | Status | Stock | Price | Source |
|---|---|---|---|---|---|
| Bourns CRE2512-FZ-R003E-3 (R6, R17) | 3 mΩ, 3 W, 1%, 2512 metal foil | Active | 41,271 | $0.73 | DigiKey |
| YAGEO RC1206FR-072R2L (R4) | 2.2 Ω, 0.25 W, 1%, 1206 | Active | 60,222 | $0.15 | DigiKey |
| YAGEO RC0805FR-074R7L (R1, R3, R10) | 4.7 Ω, 0.125 W, 1%, 0805 | Active | 6,573 | $0.11 | DigiKey |
| Murata NCU18XH103E6SRB (RT1) | NTC 10 kΩ, B = 3380 K, 0603 | Active | 34,633 | $0.16 | DigiKey |
| YAGEO RC0603FR-07 series, 31 pcs across 8 values | 0603, 1%, 0.1 W. Representative lookup: RC0603FR-0710KL | Active | 3,141,258 | $0.10 | DigiKey. The other 7 values were not individually checked — one representative lookup per the sourcing plan |
Capacitors
| Part | Spec/Package | Status | Stock | Price | Source |
|---|---|---|---|---|---|
| Chemi-Con EKYB630ELL122MLN3S (C1) | 1200 µF, 63 V, 16 mm dia, 7.50 mm lead spacing, ripple 3 A @ 100 kHz | Active | 534 | $3.63 | DigiKey; 5 distributors in stock, from $1.43 in quantity |
| Panasonic EEU-FR1E821 (C5) | 820 µF, 25 V, 10 mm dia, 5.0 mm lead spacing | Active | 755 | $1.20 | DigiKey |
| Panasonic EEEFK1E151P (C2) | 150 µF, 25 V, 8.0 mm SMD can. Order as EEE-FK1E151P | Active | 10,234 | $1.13 | DigiKey; Newark 33,930 @ $0.858 |
| Murata GRJ32DC72A475KE11L (C3) | 4.7 µF, 100 V, X7S, 1210 (3.20 × 2.50 mm) | Not For New Designs | 35,058 | $1.79 | DigiKey; 6 distributors in stock. See Substitutes |
| Samsung CL31A106KAHNNNE (C15) | 10 µF, 25 V, X5R, 1206 (3.20 × 1.60 mm) | Active but 0 stock | 0 (49-week factory lead) | $0.22 quoted, none available | Zero at all five ECIA distributors. See Substitutes |
| Samsung CL31B226MPHNNNE (C20, C21, C36, C40) | 22 µF, 10 V, X7R, 1206 | Active | 32 at DigiKey; 578,000 at Future | $0.44 | Buy from Mouser (1,629 @ $0.36) or Arrow (40,123) for a class set |
| YAGEO CC0805KKX7R9BB105 (C14) | 1.0 µF, 50 V, X7R, 0805 | Active | 101,979 | $0.32 | DigiKey |
| 0603 MLCC group, 33 pcs across 6 values | 0603. Representative lookup: CC0603KRX7R9BB104 (100 nF, 50 V, X7R) | Active | 918,965 | $0.10 | DigiKey. The other 5 values (100 pF C0G, 1 nF, 10 nF 100 V, 220 nF, 2.2 µF) were not individually checked |
Status LEDs
| Part | Spec/Package | Status | Stock | Price | Source |
|---|---|---|---|---|---|
| Lite-On LTST-C191KSKT (LED1–LED3) | Yellow 591 nm, 0603 SMD | Active | 1,001,978 | $0.16 | DigiKey |
| Lite-On LTST-C190KGKT (LED4, LED5) | Green 571 nm, 0603 SMD | Active | 1,672,008 | $0.15 | DigiKey |
Connectors and headers
| Part | Spec/Package | Status | Stock | Price | Source |
|---|---|---|---|---|---|
| Phoenix Contact 1714971 (J1, J2, J3) | MKDS 5/2-9,52 screw terminal, 9.52 mm pitch, 32 A | Active | 12,183 | $1.91 | DigiKey. Three per board — the biggest line after the MCU |
| Same Sky UJ2-ADH-1-TH (J5) | Dual stacked USB-A, horizontal through-hole | Active | 2,359 | $1.20 | DigiKey. CUI Devices is now Same Sky — order under the new name |
| Würth 615006138421 (J7) | RJ25 6P6C, right-angle, tab-up | Active | 19,924 | $0.60 | DigiKey |
| On Shore 302-S101 (J4) | 2×5 boxed header, 2.54 mm pitch | Active | 195,734 | $0.27 | DigiKey |
| JST B2B-XH-A(LF)(SN) (J6) | XH 2-pin vertical header, 2.50 mm pitch. Order as B2B-XH-A | Active | 328,188 | $0.10 | DigiKey; 3 distributors in stock |
| Harwin M20-9990546 (J8) | 1×5 vertical pin header, 2.54 mm pitch | Active | 40,796 | $0.20 | DigiKey |
Support hardware and non-BOM components
| Part | Spec/Package | Status | Stock | Price | Source |
|---|---|---|---|---|---|
| Bootloader pushbutton — representative C&K PTS645SM43SMTR92 LFS | SPST momentary tactile. No footprint is specified on the schematic | Active | 173,454 | $0.36 | DigiKey. Representative part — confirm the pad geometry first |
| M3 mounting hardware — representative Würth 970060365 | M3 standoff, 4 per board | Active | 1,903 | $0.86 | DigiKey. Any M3 nylon or brass standoff works |
| Keystone 5015 test points (TP1–TP9, 8 pcs) | SMD test point loop | Active | 1,405,158 at DigiKey; 3,043,395 at Mouser | $0.49 | Price and stock from the ECIA/TrustedParts record — the DigiKey catalog search returned no Keystone product, so there is no product link |
Substitutes
| For part | Substitute | Differences | Verified | Judgment |
|---|---|---|---|---|
| L3 NR8040T100M (obsolete) | Bourns SRN8040TA-100M — $0.61, 1,945 in stock | 10 µH ±20% (match). Isat 5 A vs the required ≥ 3.5 A — exceeds, acceptable. DCR 33 mΩ vs the required ≤ 40 mΩ — exceeds, acceptable. Body 8.00 × 8.00 mm (match); seated height 4.50 mm vs the 4.0 mm the 8040 name implies — 0.5 mm taller, no clearance issue on an open board. Better than the obsolete original on both saturation current (5 A vs 3.4 A) and resistance (33 vs 44.2 mΩ). | Verified: inductance, tolerance, saturation current, DCR and body size + seated height (DigiKey parametrics, both parts); footprint family confirmed by the board's own KiCad pad being named "Bourns_SRN8040TA". Nothing material unverified. | Recommended. This is the alternative the lab's own BOM already names. |
| L3 NR8040T100M (obsolete) | Taiyo Yuden LSXNH8080YKL100MJG — $0.35, 1,960 in stock | Taiyo Yuden's own flagged replacement. 10 µH ±20% (match). Isat 3.8 A vs the required ≥ 3.5 A — exceeds, acceptable. DCR 44.2 mΩ is over the snapshot's ≤ 40 mΩ latitude, but identical to the obsolete original's own 44.2 mΩ, so no worse than the part it replaces. Body 8.00 × 8.00 mm (match). | Verified: inductance, saturation current, DCR and body size (DigiKey parametrics, both parts). Not verified: seated height (not published) and land-pattern equivalence between the Taiyo Yuden 3131/8080 pad and the board's Bourns_SRN8040TA pad. | Acceptable, and cheaper — but slightly worse than the Bourns part on both figures. |
| L3 NR8040T100M (obsolete) | Bourns SRN8040-100M — $0.55, 7,579 in stock | DigiKey suggests it, but Isat 3.4 A and DCR 50 mΩ max fall short of the required ≤ 40 mΩ. | Verified: inductance, saturation current and DCR (DigiKey parametrics). | Not recommended — falls short on resistance. Use the TA variant. |
| D6 SS14FL (obsolete) | Diodes 1N5819HW-7-F — $0.31, 844,516 in stock | SOD-123 package — the snapshot explicitly allows "SOD-123FL or SOD-123". VRRM 40 V (meets ≥ 40 V), IF 1 A (meets ≥ 1 A), Vf 450 mV @ 1 A vs the required ≤ 500 mV — exceeds, acceptable. | Verified: package/case, reverse voltage, forward current and forward drop (DigiKey parametrics) against the snapshot's stated allowances. Not verified: which of the two KiCad pads the fabricated board carries — the board files were not in the upload, so a SOD-123 body may sit on a longer flat-lead land. | Recommended, with one eyeball check of the D6 land before ordering. |
| D6 SS14FL (obsolete) | MCC SS14FL-TP — $0.35, 18,174 in stock | Same 40 V / 1 A rating and a nearly identical part number, but the package is DO-221AC / SMA flat leads, not SOD-123F. | Verified: package/case for both parts (DigiKey parametrics) — and they do not match. | Hard stop. Different land pattern. Listed only because the part number is a trap. |
| D6 SS14FL (obsolete) | Nexperia PMEG4010CEJ — $0.44 | 40 V / 1 A, but the package is SOD-323F, smaller than SOD-123F. | Verified: package/case (DigiKey parametrics). | Hard stop. Footprint mismatch. |
| C15 CL31A106KAHNNNE (no stock) | Murata GRM319R61E106KA12D — $0.47, 289,090 in stock | 10 µF, 25 V, X5R, 1206 (3216 metric), 3.20 × 1.60 mm — identical on every published parameter to the Samsung part. | Verified: capacitance, voltage rating, dielectric class and package + body dimensions (DigiKey parametrics, both parts). Nothing material unverified. | Recommended. Plentiful and cheaper than the original's quoted price. |
| C3 GRJ32DC72A475KE11L (not for new designs) | TDK C3225X7S2A475K200AB — $1.37; 0 at DigiKey but 41,000 at Future, 9,000 at TTI, 8,000 at Avnet | 4.7 µF, 100 V, X7S, 1210 (3225 metric), 3.20 × 2.50 mm — identical on every published parameter to the Murata part. | Verified: capacitance, voltage rating, dielectric class and package + body dimensions (DigiKey parametrics, both parts). Not verified: soft-termination (flex-crack) equivalence — no parametric in evidence covers termination style, and the snapshot's own latitude does not require it. | Acceptable as the successor when the Murata part runs out. Order from Future, TTI or Avnet, not DigiKey. |
| L1 DTMSS-27/0,047/15-HX (no distribution) | Bourns 2300HT-470-H-RC — $7.15, 60 at DigiKey, 180 at Master Electronics @ $4.87 | 47 µH ±15% (match), 32.51 mm diameter (close to the ~32 mm original). But the current rating is 10 A against the required Isat ≥ 15 A — and saturation current is not published at all — and DCR is 28 mΩ against the required ≤ 15 mΩ, nearly double, which at 10 A continuous means roughly 2.8 W of inductor loss. | Verified: inductance, current rating, DCR, mounting type and body diameter (DigiKey parametrics) against the snapshot's requirements — two of them fail. Not verified: lead pitch / land pattern against the L-FERYSTER footprint, and saturation current (not published). | Not acceptable as a drop-in. It would run the buck stage at its own rating with no margin and hotter than designed. Shown only so you know what the nearest catalog part looks like. |
Verify any substitute against its own datasheet and against your board's actual land pattern before ordering — the checks above are made from distributor parametric data, not from the physical board.
Other dependencies
- Enclosure (IP20, "3D files available") — available, with a version caveat. The LibreSolar/charge-controller-housings repository is live (CC-BY-SA-4.0, open to contributions) and holds a housing for MPPT-1210-HUS-v0.4, while this lab builds hardware rev 0.7.1. The housing on offer targets an older board revision and may not fit — check the cutouts for the screw terminals, USB, RJ25 and LEDs before printing. File formats were not enumerated in the fetched page.
- **Hardware documentation, https://libre.solar/mppt-1210-hus/** — live. Fetched this run; it returns the full user manual (introduction, disclaimer, safety instructions, installation guidance).
- Manual PDF (
manual.pdf), interactive HTML BOM (mppt-1210-hus_ibom.html), md-manual-template, coding-style, thingset.io — not checked. These were not fetched this run. The parent site and the GitHub organisation both resolve, so they are probably fine, but that is an inference rather than a check. - PCB fabrication — not checked, and not checkable from what was uploaded. No Gerber (
.gbr) or.kicad_pcbfiles were included, so the 2-layer / 2 oz copper stackup in the snapshot is an inference from the 10 A trace requirement, not a specification read off a fabrication file. No board house was quoted. Generate Gerbers from the KiCad 5.1.9 sources, or pull them from the upstream hardware repository, before ordering boards. - Fuse rating conflict — the CSV BOM and schematic label F1 as 25 A while the user manual specifies a 15 A ATO blade fuse. The 15 A part is the one priced above. Resolve this before students energise a board.
- C15 footprint conflict — the snapshot files C15 under the 1210 group with a
C_1210_3225pad, but the part it names (Samsung CL31A106KAHNNNE) is per DigiKey a 1206 (3216 metric), X5R part. The component and the footprint do not agree. Confirm against the board file; a 1206 body will solder to a 1210 land but is not the intended fit.
Watch list
- L1, the 47 µH main inductor. The single thing standing between an instructor and a built board. No distribution channel exists, so every re-order is a fresh quote to a Polish manufacturer. If the design is going to be run repeatedly, it is worth redesigning L1 around a catalog part with a published saturation current.
- C3 Murata GRJ32DC72A475KE11L. Already Not For New Designs with healthy stock — that is exactly the profile of the part that disappears between one check and the next. The TDK successor is pre-verified above.
- Q5–Q7 BSS83P H6327. The only otherwise-healthy part carrying an ECIA lifecycle risk of Med, and only one distributor (Mouser) lists the exact spaced part number. Worth watching.
- C20/C21/C36/C40 CL31B226MPHNNNE. DigiKey is down to 32 pieces. Plenty exists elsewhere today, but a 1206 22 µF part with one warehouse nearly empty is a candidate to become the next C15.
- U2 STM32L072CZT6. A single-source ST microcontroller standing on two distributors with stock; Mouser is already at zero with nearly 12,000 on order. Firmware pin assignments are hardcoded, so the substitution latitude is narrow — only an STM32L072 or L073 in LQFP-48.
- The 7 resistor values and 5 capacitor values checked only by representative. Commodity parts, but they have no individual baseline, so a shortage in one value would not show up until someone tried to order it.