Readiness report

FOSSASIA PSLab Pocket Science Lab · 2026-09-03 15:58 · complete · 41 searches, 12 pages fetched

Download PDF

Cybersecurity — software & network: Review before networking · 8 findings

Details in the Cybersecurity section of the report below.

Readiness: FOSSASIA PSLab Pocket Science Lab

Verdict: Ready with caveats · 2026-09-03 · est. parts cost $40–$60 per board (distributor single-unit pricing, excluding the bare PCB and the one-time programmer) Cybersecurity — software & network: Review before networking

This is the cold check — the first readiness report for this lab, so it establishes the baseline every future check will measure drift against. Every part on the board is buyable today and nothing is priced unreasonably: fifteen of the bill-of-materials lines came back Active and in stock, several with six-figure inventories. Three things keep this from a plain "Ready". The PICkit 3 programmer the lab requires is obsolete with zero stock at every authorized distributor checked, and the replacement the lab's own notes suggest (PICkit 4) is equally obsolete — you need a PICkit 5 at $79.68. The TC1240A charge pump is on Last Time Buy, so it is comfortable today and gone tomorrow. And the lab's written parts list disagrees with the v6 board file this run fetched — on the USB bridge's package, the fuse rating, and whether the board even has the manual amplitude knob and DC power jack the documentation describes. Settle which board revision you are building before you place an order.

Action required

Part Problem Recommended action
PICkit 3 (PG164130) Obsolete. Zero stock at DigiKey (14-week factory lead), RS and Mouser both out of stock — no authorized distributor has any. Buy the PICkit 5 (PG164150), $79.68, 1,691 in stock. One per class, not per board. Do not order the PICkit 4 — it is obsolete too.
TC1240A (TC1240AECHTR) Last Time Buy. 12,156 pieces remain and there will be no restock. Buy now for the full class if you build soon; otherwise design in LM2665M6/NOPB ($1.36, 48,207 in stock), which matches on package, switching frequency and supply range.
74HC126 (SN74HC126PW) The exact tube part is Obsolete ($0.94, 3,530 left). Order SN74HC126PWR instead — $0.40, 12,073 in stock, same TI device and same 14-TSSOP package, differing only in reel-versus-tube packaging.
LDL212PU50R Active, but DigiKey stock is zero. Not a shortage — order from Mouser (8,437 in stock at $0.51) or Rochester (422 at $0.3063). ECIA rates its lifecycle risk Low.
Protection fuse The lab's part number 0ZCJ0050FF2E does not exist at DigiKey or any ECIA distributor. The board file names 0ZCJ0025FF2E — $0.21, 105,105 in stock. Note it holds 250 mA and trips at 500 mA, not the 0.5 A hold the lab text specifies.
USB Type-C receptacle The board's part U262-161N-4BVC11 returns no results at DigiKey and no ECIA distributor lists it. Alternatives exist from $0.85, but none was verified against the board's land pattern. Match a candidate to the board footprint before ordering.
SI1 amplitude potentiometer No part number in any source, and no potentiometer appears anywhere in the v6 board file. Confirm which board revision the lab targets. On the v6 file this control does not exist and the amplitude is set digitally.
CP2102N package conflict The lab specifies CP2102N-A02-GQFN24 (QFN-24, 4×4); the v6 board file specifies a QFN-20 3×3 variant. Check the footprint on the board in hand before ordering — these are not interchangeable.

Cybersecurity — software & network

Review before networking — The USB-only setup is low risk, but the optional Wi-Fi bridge has no documented authentication, the host dependencies are entirely unpinned with known high-severity flaws at their declared floors, and the desktop application is archived.

Component Version How known Support status
Microchip MPLAB X IDE 3.35 inferred (Recorded in the snapshot from the lab's pslab_hardware_README.md; that file was not re-fetched this run, so the version is not confirmed against a project file.) —
Microchip MPLAB XC16 C Compiler not determined not determined (Referenced by name only in pslab_hardware_README.md; the lab states no version.) —
pslab-bootloader (PIC24 bootloader source) not determined unpinned (Built from the repository's current default branch 'main'; the lab pins no revision. Repository active, last code push 2026-08-16 (GitHub API, fetched/04-pslab-bootloader).) —
pslab-firmware (PIC24 firmware source) not determined unpinned (Built from the repository's current default branch 'main'; the lab pins no revision. Repository active, last code push 2026-08-28 (GitHub API, fetched/03-pslab-firmware).) —
pslab-app (mobile/cross-platform application) not determined unpinned (Installed from the project's current sources; the lab pins no version. Repository active, last code push 2026-09-03 (GitHub API, fetched/02-pslab-app).) —
pslab-desktop (desktop application) not determined unpinned (Archived, read-only repository; last code push 2024-02-06 (GitHub API, fetched/01-pslab-desktop). No version is pinned by the lab.) —
Python (host environment) 3.8 inferred (pyproject.toml declares requires-python = '>=3.8' (fetched/05-pyproject.toml); 3.8 is the lowest version the project allows, not a pin.) unsupported since 2024-10-07
flit_core (build backend) 3.4.0 inferred (pyproject.toml [build-system] requires 'flit_core >=3.4,<4' (fetched/05-pyproject.toml); 3.4.0 is the floor of that range, not a pin.) —
mcbootflash 8.0.0 inferred (Floor constraints only, and they disagree: pyproject.toml requires '>=8.0.0' (fetched/05-pyproject.toml) while requirements.txt requires '>=4.1.0' (fetched/06-requirements.txt). Both floors were checked.) —
numpy 1.16.3 inferred (requirements.txt declares 'numpy >=1.16.3' (fetched/06-requirements.txt) and pyproject.toml lists numpy with no constraint; 1.16.3 is the floor, not a pin.) —
scipy 1.3.0 inferred (requirements.txt declares 'scipy >=1.3.0' (fetched/06-requirements.txt) and pyproject.toml lists scipy with no constraint; 1.3.0 is the floor, not a pin.) —
pyserial 3.4 inferred (requirements.txt declares 'pyserial >=3.4' (fetched/06-requirements.txt) and pyproject.toml lists pyserial with no constraint; 3.4 is the floor, not a pin.) —
setuptools 35.0.2 inferred (requirements.txt declares 'setuptools >=35.0.2' (fetched/06-requirements.txt); 35.0.2 is the floor, not a pin.) —
Silicon Labs CP210x VCP drivers not determined not determined (The lab links the vendor download page but states no version.) —
Component Finding Severity Fix available?
numpy requirements.txt allows numpy as old as 1.16.3, a version with a null-pointer dereference and buffer-handling flaws that can crash or corrupt the analysis step when a lab feeds it malformed measurement data. — GHSA-5545-2q6w-2gh6, GHSA-f7c7-j99h-c22f, GHSA-6p56-wp2h-9hxr, GHSA-fpfv-jqm9-f5jm high Yes — update to 1.22
setuptools requirements.txt allows setuptools as old as 35.0.2, and that version carries an arbitrary file write and a command-injection flaw reachable when the packaging tools fetch a package URL, so a student environment built to the stated floor is exploitable during installation. — GHSA-5rjg-fvgr-3xxf, GHSA-cx63-2mw6-8hw5, GHSA-r9hx-vwmv-q579, GHSA-h35f-9h28-mq5c high Yes — update to 83.0.0
scipy requirements.txt allows scipy as old as 1.3.0, which has a memory-leak issue and a disputed use-after-free report; the practical effect on this lab is instability over long capture sessions rather than a break-in. — PYSEC-2023-114, PYSEC-2023-102 low Yes — update to 1.10.0
ESP-01 Wi-Fi bridge (optional) Fitting the optional ESP-01 module turns the board's serial control channel into a network service, and the lab's documentation states no listening ports, services, or credentials for it, so whether it asks for any authentication is unknown. posture Mitigation only — leave the ESP-01 socket unpopulated, or place the board on an isolated lab network segment and confirm the module's configuration before use
pslab-desktop (desktop application) The desktop application's repository is archived and read-only with no code changes since 2024-02-06, so it will receive no further fixes of any kind. posture Mitigation only — use the maintained pslab-python client library or the pslab-app application instead
pslab-python (pyproject.toml) Dependencies unpinned: 4 of 4 in pyproject.toml, three of them with no constraint at all, and its mcbootflash floor (>=8.0.0) contradicts requirements.txt (>=4.1.0), so the two install paths do not agree on what gets installed. posture Mitigation only — pin versions / use the lockfile
pslab-python (requirements.txt) Dependencies unpinned: 5 of 5 in requirements.txt are floor constraints only, so two students installing on different days can get different versions and the environment has no fixed security state to check. posture Mitigation only — pin versions / use the lockfile
Python (host environment) The project still permits Python 3.8, which stopped receiving security updates on 2024-10-07, so an environment built to the stated floor runs an unsupported interpreter. posture Mitigation only — install on a currently supported Python release and raise requires-python

What this means for your lab

As shipped, this instrument is a USB device: the board talks to the host over a serial connection and nothing is exposed to the network, so a plain USB setup is low risk. That changes if you fit the optional ESP-01 Wi-Fi module, which puts the board's control channel on the network; the project's documentation does not say what port it opens or whether it asks for a password, so we cannot tell you it is protected. Treat it as unprotected until you have checked: leave the ESP-01 socket empty unless you need wireless, and if you do need it, ask campus IT for an isolated segment rather than the general campus Wi-Fi. On the host side, the Python client library does not pin the versions of the packages it installs, so what students end up with varies by install date. The oldest versions the project still allows are genuinely unsafe - setuptools 35.0.2 can be tricked into writing files and running commands during installation - and Python 3.8, which the project still permits, stopped receiving security updates in October 2024. Install on a current Python and let pip fetch current numpy, scipy and setuptools rather than the stated minimums, and prefer the maintained client library or mobile app over the desktop application, whose code has been archived and unchanged since February 2024.

Not checked

  • Microchip MPLAB XC16 C Compiler: the lab states no version, and no advisory database covers Microchip compiler releases
  • pslab-firmware and pslab-bootloader (C sources): no vulnerability database covers vendor C firmware sources, and the lab pins no released revision
  • pslab-app (Dart/Flutter application): the lab pins no version and no dependency manifest for it was fetched this run
  • pslab-desktop (JavaScript application): archived; the lab pins no version and no dependency manifest for it was fetched this run
  • Silicon Labs CP210x VCP drivers: version not stated, and vendor driver packages are not covered by an advisory database
  • ESP-01 module firmware: the lab's materials do not state which firmware the module runs
  • Installed versions of the pslab-python dependencies: every declared dependency is a floor constraint, so no exact installed version exists; the declared floors were checked against OSV instead
  • mplab 3.35: support status: endoflife.date has no such product

Parts

Package suffixes matter: they encode the physical footprint, and a part in the wrong package will not fit the board. Where the lab's documentation left a package unstated, this run resolved it from the v6 board file (docs/components/BillOfMaterials.csv, pslab-v6 branch), fetched this session.

Microcontroller and Digital Logic

Part Spec/Package Status Stock Price Source
PIC24EP256GP204-I/PT 16-bit MCU, 256 KB Flash, 44-TQFP (10×10), Vdd 3–3.6 V Active — readily available 458 $4.54 DigiKey (Microchip)
SN74HC126PW Quad 3-state buffer, 14-TSSOP, 2–6 V Obsolete — order the reel variant 3,530 $0.94 DigiKey (TI)

Analog Front-End, Data Conversion, and Signal Conditioning

Part Spec/Package Status Stock Price Source
MCP6S21-I/SN SPI programmable gain amp, 8-SOIC, 2.5–5.5 V. Qty 2 per board (U14, U18) per the board file Active — readily available 423 $1.49 DigiKey (Microchip)
MCP4728T-E/UN 4-ch 12-bit I2C DAC, 10-MSOP, 2.7–5.5 V Active — readily available 20,125 $2.50 DigiKey (Microchip)
TL082IDR Dual JFET-input op-amp, 8-SOIC, 10–30 V span Active — readily available 1,622 $0.47 DigiKey (TI)
LM324APT Quad op-amp, TSSOP-14 (board footprint), 3–30 V Active — readily available 14,273 $0.43 DigiKey (ST)
TC7660EOA713 Charge-pump inverter, 8-SOIC, Vin 1.5–10 V Active — readily available 13,383 $1.06 DigiKey (Microchip)
TC1240AECHTR Charge-pump doubler, SOT-23-6, Vin 2.5–5.5 V, 40 mA, 80 kHz Last Time Buy — end of life 12,156 $1.11 DigiKey (Microchip)

The lab runs the TC7660 at the 5 V rail, well inside the standard part's 10 V ceiling. If the full 1.5–12 V range the lab text quotes is genuinely needed, TC7660SEOA713 covers it in the same 8-SOIC package — Active, $1.22, 2,304 in stock.

Power Regulation, Protection, and Support ICs

Part Spec/Package Status Stock Price Source
LDFM33PUR 3.3 V LDO, DFN6 3×3 Active — readily available 1,625 $0.89 DigiKey (ST)
LDL212PU50R 5.0 V LDO 1.2 A, 6-DFN 3×3, Vin ≤ 18 V Active — zero at DigiKey, in stock elsewhere 0 at DigiKey; 8,437 Mouser, 422 Rochester, 32 Arrow $0.49 DigiKey; $0.51 Mouser ECIA authorized-distributor check
CP2102N-A02-GQFN24 USB-to-UART bridge, 24-QFN 4×4, 3–3.6 V Active — readily available (see package conflict) 5,868 DigiKey; 3,727 Mouser; 1,811 Arrow $5.15 DigiKey (Silicon Labs)
DS1307Z+ I2C RTC, 8-SOIC, 4.5–5.5 V, battery 2–3.5 V Active — readily available 3,818 DigiKey; 4,627 Mouser; 779 Newark $6.03 DigiKey; $5.41 Mouser DigiKey / ECIA (ADI-Maxim)
SP0503BAHTG 3-ch TVS ESD array, SOT-143, 5.5 V standoff Active — readily available 82,357 $1.50 DigiKey (Littelfuse)
0ZCJ0050FF2E (as written in the lab docs) 0.5 A PTC resettable fuse Not found — no DigiKey result, no ECIA listing — — —
0ZCJ0025FF2E (the board file's actual part) PTC resettable fuse, 1206, hold 250 mA / trip 500 mA Active — readily available 105,105 $0.21 DigiKey (Bel Fuse)

The board file's own price column lists the DS1307Z+ at $3.69. That figure is stale; $6.03 at DigiKey or $5.41 at Mouser is current.

Electromechanical, Controls, Passives, and Expansion

Part Spec/Package Status Stock Price Source
SI1 amplitude potentiometer PCB-mount potentiometer with a student-operated knob not checked — no part number in any source, and no potentiometer row exists in the v6 board file — — —
Status LED, blue — HSMR-C170-R0000 0805 SMD LED Active — readily available 9,893 $1.00 DigiKey (Broadcom)
Status LED, green — HSMQ-C170-T0000 0805 SMD LED Active — readily available 2,646 $1.25 DigiKey (Broadcom)
LTST-C190GKT (the lab's representative LED) 0603 SMD green LED Active — readily available 1,332,607 $0.14 DigiKey (Lite-On)
Crystal, 32.768 kHz — representative ABS07-166-32.768KHZ-T 32.768 kHz tuning fork, 12.5 pF load, for the DS1307Z+ Active — representative part only; the board's exact crystal is not confirmed 19,342 $0.83 DigiKey (Abracon)
Assorted passives (resistors, capacitors, diodes, inductors, transistors) All 0603 unless noted. Caps: 12 pF ×3, 1 nF ×2, 10 nF ×4, 100 nF ×18, 1 µF ×3, 2.2 µF ×1, 10 µF ×7, 22 µF ×8 (10–16 V). Resistors: 18 Ω ×4, 200 Ω ×9, 1 kΩ ×5, 5.1 kΩ ×13, 10 kΩ ×31, 12 kΩ ×1, 30 kΩ ×1, 51 kΩ ×1, 100 kΩ ×1, 180 kΩ ×1, 200 kΩ ×7, 1 MΩ ×3. Diodes: 1N4148W ×2, BZV55B6V8 6.8 V zener ×2, K1N5817HW Schottky ×1. Inductors: 3.3 µH ×3, 4.7 µH ×1. Transistors: MMBT3904 ×1, MMBT3906 ×2 (SOT-23) not checked individually — commodity parts; values and counts read from the v6 board file this run — roughly $10–$20 per board at single-unit pricing v6 board file (counts); no individual lookups run
USB Type-C receptacle — U262-161N-4BVC11 16-position Type-C SMT receptacle Not found — no DigiKey result, no ECIA listing. Alternatives unverified against the board footprint — alternatives from $0.85 Google Shopping
External DC power input jack PCB-mount DC connector not checked — no part number in any source, and no DC jack row exists in the v6 board file (it carries a battery-cell connector and a CR1225 holder instead) — — —
MicroSD card socket Push-push SMD microSD socket, TF-015 footprint, no part number in the board file Commodity — plentiful; land pattern not verified — $1.12 Molex 475710001 Google Shopping (DigiKey seller)
ESP-01 socket — SSW-104-01-T-D Samtec 2×4 female header, 2.54 mm Active — available, thinnest stock of any part checked 248 $1.22 DigiKey (Samtec)
ESP8266 ESP-01 module (optional) ESP-01/ESP-01S Wi-Fi module, 3.3 V Widely stocked at retail — $1.86–$5.49 Google Shopping
Bluetooth module header socket 2.54 mm female pin header, pin count not specified Commodity — no distinct Bluetooth header in the v6 board file; family priced via SSW-114-01-T-D 1,200 $2.95 DigiKey (Samtec)

Programming and Toolchain Hardware

Part Spec/Package Status Stock Price Source
PICkit 3 (PG164130) ICSP programmer/debugger, 6-pin 0.1" header Obsolete — zero stock at every authorized distributor checked 0 (DigiKey 14-week lead; RS and Mouser out of stock) $47.95 listed, unavailable DigiKey / ECIA (Microchip)
PICkit 4 (PG164140) — the lab's suggested replacement ICSP programmer/debugger Obsolete — zero stock at every authorized distributor checked 0 (DigiKey 40-week lead) $94.075 listed, unavailable DigiKey / ECIA (Microchip)
PICkit 5 (PG164150) — recommended ICSP programmer/debugger Active — readily available 1,691 $79.68 DigiKey (Microchip)

Substitutes

For part Substitute Differences Verified Judgment
SN74HC126PW (Obsolete) SN74HC126PWR — $0.40, 12,073 in stock Same TI device, same 14-TSSOP (0.173", 4.40 mm) package, same 2–6 V supply. The only difference is tape-and-reel versus tube packaging. Cheaper than the obsolete part. Verified: package + width (DigiKey parametrics, both 14-TSSOP 0.173"/4.40 mm); supply range (both 2–6 V, covers the 3.3 V and 5.0 V rails). Nothing outstanding. Acceptable — a direct swap.
SN74HC126PW (Obsolete) MC74HC126ADR2G — $0.32, 1,137 in stock onsemi equivalent, but 14-SOIC against the board's TSSOP-14 footprint. Verified: package (DigiKey parametrics, 14-SOIC) against the board file footprint TSSOP-14 — they do not match. Rejected — hard stop. Wrong footprint.
TC1240AECHTR (Last Time Buy) LM2665M6/NOPB — $1.36, 48,207 in stock Package SOT-23-6 = SOT-23-6. Switching frequency 80 kHz = 80 kHz. Input 2.5–5.5 V = 2.5–5.5 V. Output current 40 mA = 40 mA. Output 2×Vin, with an extra Vin/2 mode the TC1240A lacks. Temperature range quoted as −40 °C to 85 °C TJ rather than TA — no shortfall at this power level. $0.25 dearer. Verified: package/footprint (DigiKey parametrics, both SOT-23-6); switching frequency (both 80 kHz, DigiKey parametrics); supply range (both 2.5–5.5 V, DigiKey parametrics); output current (both 40 mA). Not verified: pin assignment — the lab requires a matching pinout, and the parametrics give package and pin count but not pin order. Acceptable, subject to a pinout check. Matches every constraint that could be checked; confirm the pin order against the LM2665 datasheet before ordering.
TC1240AECHTR (Last Time Buy) MCP1259T-E/MF — $0.5544, DigiKey "MFR Recommended" 10-DFN package against the board's SOT-23-6. Verified: package (DigiKey substitution data, 10-DFN) against the board's SOT-23-6 — they do not match. Rejected — hard stop. Wrong footprint, despite being the manufacturer's nominal recommendation.
LM324APT (if a TI part is preferred) LM324APWR — $0.32, 18,947 in stock Same 14-TSSOP footprint, 3–30 V supply, 1.2 MHz gain-bandwidth. Cheaper than the ST part. Verified: package (DigiKey parametrics, 14-TSSOP 0.173"/4.40 mm, against the board file footprint TSSOP-14 4.4×5 mm P0.65 mm); supply range (3–30 V, covers single-rail and split operation). Not verified: pin assignment. Acceptable.
LM324 — the common LM324DR LM324DR — $0.28, 590,419 in stock 14-SOIC against the board's TSSOP-14 footprint. Verified: package (DigiKey parametrics, 14-SOIC) against the board file footprint TSSOP-14 — they do not match. Rejected — hard stop. The cheapest and most plentiful result is the wrong footprint; do not let a parts search default to it.
PICkit 3 (PG164130, Obsolete) PICkit 5 (PG164150) — $79.68, 1,691 in stock The only in-stock ICSP programmer found. Microchip's own replacement chain runs PICkit 3 → PICkit 4 → PICkit 5. The lab permits any compatible Microchip ICSP programmer supporting the PIC24EP family. Roughly $32 dearer than the PICkit 3's last listed price. Verified: obsolescence of both the PICkit 3 and the PICkit 4 (DigiKey lifecycle status plus the ECIA multi-distributor check — zero stock at every authorized distributor listed); current stock and price of the PICkit 5 (DigiKey); the manufacturer-recommended replacement chain (DigiKey substitution data this session). Not verified: explicit PIC24EP device support — Microchip's product page could not be fetched this session, so nothing in evidence states the supported device families. Acceptable, subject to a device-support check. Confirm PIC24EP support on Microchip's device list before ordering.
PICkit 3 (PG164130, Obsolete) PICkit 4 (PG164140) — $94.075 listed The replacement the lab's own notes suggest. Verified: lifecycle status Obsolete and zero stock at DigiKey (40-week lead), Richardson RFPD, RS and Mouser (ECIA check); ECIA lifecycle risk High, supply-chain risk High. Rejected. Also obsolete and unobtainable — dearer than the PICkit 5 and not buyable.

Verify any substitute against its datasheet and against your own board's footprint before ordering.

Other dependencies

  • Ready-made PSLab boards — thin market. The only relevant retail listing found was a pre-order, "Pre-Order: Pocket Science Lab Version 2023", $103.28, from PSLab. No in-stock offer appeared. The Seeed Studio product page was fetched but returned only the site's export-compliance boilerplate, with no price or stock, so nothing can be said about Seeed's availability from evidence. Plan on fabricating rather than buying.
  • PCB fabrication — 4 copper layers, Arduino Mega form factor, all components surface-mount on the top side. Not checked: no fabrication quotes were run this session. The Gerbers and drill files are absent from the upload and must be pulled from the fossasia/pslab-hardware repository.
  • Board design files — the v6 bill of materials (docs/components/BillOfMaterials.csv, pslab-v6 branch) was fetched successfully this run and resolved the packages the lab's prose left unstated. The fetch returned 58 of the file's 61 rows; anything whose reference sorts after U16 — including the crystal rows — is not on the record, which is why the crystal above is a representative rather than the board's confirmed part.
  • External links — pslab.io and the five project repositories on GitHub. Four repositories were queried directly this run and all resolved; what they contain is judged in the Cybersecurity section above.
  • Board-revision ambiguity — the lab's written parts list and the v6 board file disagree in several places: the USB bridge package (QFN-24 4×4 versus QFN-20 3×3), the fuse rating (0.5 A hold versus 250 mA hold / 500 mA trip), and the existence of the SI1 potentiometer and the DC power jack, neither of which appears in the board file. The board file also carries parts the lab text never mentions (an AMS1117-3.3 regulator, an MCP4822 DAC, a WS2812B RGB LED, three tactile switches). Resolve this before ordering.

Watch list

  • TC1240A — Last Time Buy. Healthy stock today, but this part is on its way out and the next check should confirm whether the 12,156 pieces have started draining. The LM2665M6/NOPB substitute is the exit route.
  • PIC24EP256GP204-I/PT — only 458 pieces at DigiKey and no ECIA-authorized distributor lists the part number, so this is effectively single-sourced. No substitution is permitted (the firmware is built for this device), which makes it the single most fragile line in the build.
  • SSW-104-01-T-D (ESP-01 socket) — 248 pieces is the thinnest stock of anything checked. A class-sized order could clear it.
  • MCP6S21-I/SN — 423 pieces, and the board needs two per unit, so roughly 211 boards' worth. No substitution permitted.
  • PICkit programmers — the PICkit 3 and PICkit 4 are already obsolete. Watch whether the PICkit 5 stays available, since it is now the only route to flashing the board.
  • USB Type-C receptacle — the board's specified part is unlisted at every distributor checked. Until an alternative is matched to the land pattern, this is an open sourcing question rather than a solved one.
  • DS1307Z+ pricing — at $6.03 it is the most expensive chip on the board and well above the $3.69 the board file records, so it is worth re-pricing each check.