Ethernet + non-isolated PoE example#523
Merged
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
Updates the IoT thermal camera example to add Ethernet + non-isolated PoE power input, plus supporting library parts and small infrastructure tweaks (jumpers, buck converter model, and updated FUSB302B decoupling).
Changes:
- Add Ethernet/PoE connectivity to
IotThermalCamerausing HY931147C magjack, TPS2378 PoE PD controller, and W5500 Ethernet controller. - Add TI LMR38020 buck converter model/export and new Ground/Voltage jumper helper blocks.
- Update FUSB302B VDD secondary decoupling from 10uF to 1uF and propagate footprint/value changes into generated example netlists/layouts.
Reviewed changes
Copilot reviewed 16 out of 18 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| examples/UsbSourceMeasure/UsbSourceMeasure.svgpcb.js | Regenerated placement updates; updates PD VDD cap footprint/placement. |
| examples/UsbSourceMeasure/UsbSourceMeasure.net.ref | Updates PD VDD cap to 1uF 0603 and part metadata. |
| examples/test_iot_thermal_camera.py | Main example update: adds Ethernet MDI links, HY931147C connector wrapper, W5500, TPS2378 PoE, and integrates them into the board. |
| examples/prerouted_blocks/Fusb302b.kicad_pcb | New prerouted PCB block for FUSB302B (currently mismatched vs new decoupling spec). |
| examples/IotThermalCamera/IotThermalCamera.svgpcb.js | Regenerated board placement/netlist reflecting Ethernet+PoE and new parts. |
| examples/IotThermalCamera/IotThermalCamera.kicad_pro | KiCad project settings update (DRC exclusions, track widths). |
| examples/IotIron/IotIron.svgpcb.js | Regenerated placement updates; updates PD VDD cap footprint/placement. |
| examples/IotIron/IotIron.net.ref | Updates PD VDD cap to 1uF 0603 and part metadata. |
| examples/IotFan/IotFan.svgpcb.js | Regenerated placement updates; updates PD VDD cap footprint/placement. |
| examples/IotFan/IotFan.net.ref | Updates PD VDD cap to 1uF 0603 and part metadata. |
| edg/parts/power/converter/TexasInstruments_Buck.py | Adds LMR38020 buck converter device + generator model. |
| edg/parts/power/converter/init.py | Exports Lmr38020 from the converter package. |
| edg/parts/interface/UsbPd_Fusb302b.py | Changes FUSB302B VDD secondary decoupling cap from 10uF to 1uF. |
| edg/abstract_parts/Resistor.py | Tags AnalogSetpointResistor’s GND as [Common] for implicit connects. |
| edg/abstract_parts/Jumper.py | Adds GroundJumper and VoltageJumper typed wrappers. |
| edg/abstract_parts/init.py | Re-exports new GroundJumper/VoltageJumper. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+188
to
+196
| class Hy931147c(Connector, GeneratorBlock): | ||
| """Commonly available RJ45 magjack with PoE support. | ||
| Footprint and pin-compatible with Wuerth 7499211121A. | ||
|
|
||
| TODO should define and implement an abstract base class, EthernetConnector, which defines the | ||
| magnetics-side ports and can also be implemented by DiscreteMagneticsEthernetConnector, | ||
| which has a passive-typed RJ45, discrete magnetics, and optional PoE diode bridge generator. | ||
|
|
||
| TODO: allow LEDs to be driven in source mode |
Comment on lines
+505
to
+526
| (footprint "Capacitor_SMD:C_0805_2012Metric" | ||
| (layer "F.Cu") | ||
| (uuid "6ebd5763-0c99-4d61-80d6-3813a7d741e7") | ||
| (at 93 116) | ||
| (descr "Capacitor SMD 0805 (2012 Metric), square (rectangular) end terminal, IPC_7351 nominal, (Body size source: IPC-SM-782 page 76, https://www.pcb-3d.com/wordpress/wp-content/uploads/ipc-sm-782a_amendment_1_and_2.pdf, https://docs.google.com/spreadsheets/d/1BsfQQcO9C6DZCsRaXUlFlo91Tg2WpOkGARC1WS5S8t0/edit?usp=sharing), generated with kicad-footprint-generator") | ||
| (tags "capacitor") | ||
| (property "Reference" "C25" | ||
| (at 0 1.5 0) | ||
| (layer "F.SilkS") | ||
| (uuid "b0567c85-8c1f-4589-944f-0add772f7b43") | ||
| (effects | ||
| (font | ||
| (size 0.8 0.6) | ||
| (thickness 0.1) | ||
| ) | ||
| ) | ||
| ) | ||
| (property "Value" "pd.vdd_cap[1]" | ||
| (at 0 1.68 0) | ||
| (layer "F.Fab") | ||
| (uuid "bd50a68b-97ca-4445-aa74-7d55142f3a6e") | ||
| (effects |
Comment on lines
202
to
205
| "track_widths": [ | ||
| 0.0, | ||
| 0.0, | ||
| 0.16, |
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.
Changes the FLIR example to be PoE + Ethernet using W5000. Adds Ethernet port / link types in the example (for now, until validated in hardware).
Completed board layout. Really more of a parts test omnibus board, it's not a pretty layout. In retrospect, this should have been a four-layer board.
Other changes: