Régler le dégagement thermique d'une zone de cuivre avec l'API Python de pcbnew
Configurez le dégagement thermique (thermal relief) autour des pads connectés à une zone de cuivre, par script — avec pcbnew ou l'API IPC de KiCad.

Un pad soudé directement dans un grand plan de cuivre absorbe énormément de chaleur, ce qui rend la soudure au fer difficile. Le dégagement thermique relie le pad à la zone par de fines pistes (“spokes”) plutôt qu’une connexion pleine, pour limiter cette dissipation.
Configurer le dégagement thermique
Le dégagement (gap) et la largeur des spokes se règlent séparément sur la zone :
zone.SetThermalReliefGap(FromMM(0.3))
zone.SetThermalReliefSpokeWidth(FromMM(0.25))Sur une zone déjà remplie, ce réglage ne prend effet qu’après un nouveau remplissage (ZONE_FILLER(board).Fill(board.Zones()), voir le tuto création de zone) — le modifier seul ne change rien au cuivre déjà généré.
Le dégagement thermique n’a pas encore de propriété dédiée dans le client Python : on passe par .proto, qui donne un accès direct au message protobuf sous-jacent, en nanomètres bruts convertis avec from_mm :
from kipy import KiCad
from kipy.util.units import from_mm
board = KiCad().get_board()
zone.proto.copper_settings.connection.thermal_spokes.gap.value_nm = from_mm(0.3)
zone.proto.copper_settings.connection.thermal_spokes.width.value_nm = from_mm(0.25)
board.update_items(zone)⚠️ zone.connection.thermal_spokes (sans .proto) renvoie une copie détachée à chaque accès : y écrire ne modifie pas la zone. C’est .proto qu’il faut utiliser pour que le réglage soit réellement pris en compte.
Essayez ci-dessous : ajustez le dégagement pour voir l’anneau isolant autour du pad évoluer.
Pour aller plus loin
Un dégagement trop faible ne résout pas le problème de dissipation ; trop élevé fragilise mécaniquement la connexion. Pour un pad de puissance qui doit au contraire évacuer la chaleur efficacement, il vaut souvent mieux désactiver le dégagement thermique (connexion pleine) plutôt que d’en régler un.