Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR adds and updates IoT device example panels, including LED drivers, roller blinds, curtain crawlers, CAN/OBD adapters, and a BLE joystick. It also extends the JLC postprocessing script to merge multiple BOMs for panelization and includes KiCad prerouted blocks and footprint updates.
- Introduce new board topologies and connectors for various IoT devices
- Refactor example scripts to use shared connectors and dummy sinks, and update refinements
- Enhance
jlcpcb_pcba_postprocess.pyto support merging multiple BOM CSV files
Reviewed Changes
Copilot reviewed 70 out of 75 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| examples/test_iot_led_driver.py | Use solder‐pad sinks instead of connectors; add generic Qwiic expansion; update refinements |
| examples/test_iot_blinds.py | New roller blinds and curtain crawler board examples with power in/out connectors and tests |
| examples/test_can_adapter.py | Replace legacy CAN adapter with OBD2 connector and unified transceiver setup |
| examples/test_ble_joystick.py | Add BLE joystick example using MP2722 charger and Arduino‐style joystick mappings |
| examples/jlcpcb_pcba_postprocess.py | Add --merge_boms option to merge multiple BOMs into one for panelization |
| examples/prerouted_blocks/*.kicad_pcb | Add and tweak prerouted KiCad PCB blocks for TPS54202 variants |
| examples/edg.pretty/*.kicad_mod | Add new QFN‐22 footprint file |
Comments suppressed due to low confidence (3)
examples/jlcpcb_pcba_postprocess.py:11
- [nitpick] CLI options conventionally use hyphens; consider renaming
--merge_bomsto--merge-bomsfor consistency with common argparse style.
parser.add_argument('--merge_boms', type=str, nargs='*',
examples/jlcpcb_pcba_postprocess.py:186
- The new
--merge_bomsfeature would benefit from an updated module docstring or top‐level usage comment explaining its behavior.
if args.merge_boms:
examples/test_iot_led_driver.py:68
- [nitpick] Inline comment is a bit terse; consider clarifying that this pin is used for power‐good sensing or monitoring.
self.connect(self.qwiic.pwr.as_digital_source(), self.mcu.gpio.request('qwiic_pwr')) # as sense line
| from edg import * | ||
|
|
||
|
|
||
| class PowerInConnector(Connector): |
There was a problem hiding this comment.
Similar PowerInConnector exists in test_iot_blinds.py; consider extracting shared connectors into a common module to reduce duplication.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A panel of mostly misc IoT devices, meant to be a fabrication test of the recent compiler and infrastructural changes. And the sublayout KiCad plugin.
Top-level boards:
Library additions:
Fixes:
TODO: