IotThermalCamera

BerkeleyHCI·PolymorphicBlocks·examples/IotThermalCamera/IotThermalCamera.kicad_pcb

IotThermalCamera PCB layout, top view — open source ESP32 board by BerkeleyHCI
Simulate this board

About the IotThermalCamera PCB

IotThermalCamera is an open source ESP32 PCB design by BerkeleyHCI, published on GitHub under the BSD-3-Clause license. It is a 2-layer board measuring 30 × 95 mm, with 119 components from 119 distinct parts.

Its main chip is the mcu.ic, from the ESP32 family.

It belongs with the keyboards and iot & wireless designs in this gallery.

From the project

A Python-based hardware description language for PCBs for higher-level (block-diagram / system-architecture level) PCB design through libraries of directly reusable subcircuit generators.

subcircuit generator library based hardware description language for circuit board design

Polymorphic Blocks is an open-source, Python-based hardware description language (HDL) for schematic-equivalent design of printed circuit boards (PCBs). Its library of components provide a high-level abstraction for circuit design while subcircuit generators automate the calculation of fine details. Abstract component interfaces enable these libraries to be general across applications and component vendors.

IotThermalCamera, from the project README
From the project README

IotThermalCamera bill of materials (BOM)

119 components, 119 distinct parts.

QtyPartRefs
1
eth.cap
TC1
1
poe.vdd_cap
TC2
1
reg_poe.hf_cap
TC3
1
reg_poe.boot_cap
TC4
1
reg_poe.power_path.in_cap.c[0]
TC5
1
reg_poe.power_path.in_cap.c[1]
TC6
1
reg_poe.power_path.out_cap
TC7
1
reg_3v3.hf_in_cap
TC8
1
reg_3v3.boot_cap
TC9
1
reg_3v3.power_path.in_cap
TC10
1
reg_3v3.power_path.out_cap
TC11
1
reg_3v0.in_cap
TC12
1
reg_3v0.out_cap
TC13
1
reg_2v8.in_cap
TC14
1
reg_2v8.out_cap
TC15
1
reg_1v2.in_cap
TC16
1
reg_1v2.out_cap
TC17
1
mcu.vcc_cap0
TC18
1
mcu.vcc_cap1
TC19
1
mcu.en_pull.c
TC20
Show 99 more
QtyPartRefs
1
phy.crystal.cap_a
TC21
1
phy.crystal.cap_b
TC22
1
phy.c1v20
TC23
1
phy.tocap
TC24
1
phy.vdd_cap0
TC25
1
phy.vdd_cap1
TC26
1
phy.avdd_caps[0]
TC27
1
phy.avdd_caps[1]
TC28
1
phy.avdd_caps[2]
TC29
1
phy.avdd_caps[3]
TC30
1
phy.avdd_caps[4]
TC31
1
phy.avdd_caps[5]
TC32
1
phy.avdd_caps[6]
TC33
1
phy.txc_cap
TC34
1
phy.rxp_ac
TC35
1
phy.rxn_ac
TC36
1
phy.rxc_cap
TC37
1
dist.avdd_cap
TC38
1
dist.iovdd_cap
TC39
1
pd.vdd_cap[0]
TC40
1
pd.vdd_cap[1]
TC41
1
ioe.vdd_cap
TC42
1
ioe.reset_cap
TC43
1
cam.dovdd_cap
TC44
1
cam.reset_cap
TC45
1
cam.pclk_cap
TC46
1
flir.vddc_cap
TC47
1
flir.vddio_cap
TC48
1
flir.vdd_cap
TC49
1
flir.mclk.cap
TC50
1
poe.prot
TD1
1
prot_v5
TD2
1
prot_3v3
TD3
1
choke
TFB1
1
phy.l
TFB2
1
jlc_th.th1
TH1
1
jlc_th.th2
TH2
1
jlc_th.th3
TH3
1
usb
TJ1
1
eth.conn
TJ2
1
mcu.prog
TJ3
1
ioe.sdi
TJ4
1
cam.device
TJ5
1
poe_jmp.pos
TJP1
1
poe_jmp.neg
TJP2
1
reg_poe.power_path.inductor
TL1
1
reg_3v3.power_path.inductor
TL2
1
eth.led_yel_res
TR1
1
eth.led_grn_res
TR2
1
poe.cls
TR3
1
poe.den
TR4
1
reg_poe.fb.top_res
TR5
1
reg_poe.fb.bottom_res
TR6
1
reg_poe.rt
TR7
1
reg_3v3.fb.top_res
TR8
1
reg_3v3.fb.bottom_res
TR9
1
reg_3v3.en_res
TR10
1
mcu.en_pull.r
TR11
1
ledr.res
TR12
1
phy.exres1
TR13
1
phy.txp_damp
TR14
1
phy.txn_damp
TR15
1
phy.rxp_damp
TR16
1
phy.rxn_damp
TR17
1
phy.txp_bias
TR18
1
phy.txn_bias
TR19
1
phy.txc_bias
TR20
1
phy.rxp_bias
TR21
1
phy.rxn_bias
TR22
1
i2c_pull.scl_res
TR23
1
i2c_pull.sda_res
TR24
1
dist.lpn_pull
TR25
1
dist.rsvd6_pull
TR26
1
dist.i2c_rst_pull
TR27
1
dist.int_pull
TR28
1
poe_sense.top_res
TR29
1
poe_sense.bottom_res
TR30
1
gnd
TTP1
1
_poe_pwr_out_link
TTP2
1
pwr
TTP3
1
v3v3
TTP4
1
i2c.scl
TTP5
1
i2c.sda
TTP6
1
poe.ic
TU1
1
reg_poe.ic
TU2
1
reg_3v3.ic
TU3
1
reg_3v0.ic
TU4
1
reg_2v8.ic
TU5
1
reg_1v2.ic
TU6
1
mcu.ic
TU7
1
phy.ic
TU8
1
usb_esd
TU9
1
dist.ic
TU10
1
pd.ic
TU11
1
ioe.ic
TU12
1
flir.ic
TU13
1
phy.crystal.package
TX1
1
flir.mclk.device
TX2
1
ledr.package
TD4

IotThermalCamera design files

The KiCad project lives in the BerkeleyHCI/PolymorphicBlocks repository on GitHub; these links point at the commit this page was built from.

IotThermalCamera: common questions

What microcontroller does the IotThermalCamera use?

The IotThermalCamera is built around the mcu.ic, from the ESP32 family.

How big is the IotThermalCamera PCB?

The IotThermalCamera measures 30 × 95 mm, has 2 copper layers and is 3.66 mm thick.

How many components are on the IotThermalCamera?

119 components, from 119 distinct parts. The full bill of materials is listed on this page.

Where can I download the IotThermalCamera design files?

From the BerkeleyHCI/PolymorphicBlocks repository on GitHub, which has the KiCad layout; the links under Design files point to each one.

Can I use the IotThermalCamera design in my own project?

Yes, under the terms of its BSD-3-Clause license, which BerkeleyHCI chose for the repository.

Can I test firmware for the IotThermalCamera without the hardware?

Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug ESP32 firmware against it before you order a PCB.

More boards in PolymorphicBlocks

Similar boards