Micro vias are too restricted
Description
Microvias can only be placed on the outer layers (F.Cu/B.Cu) and the ones directly adjacent to them.
This is not true. Microvias are placed at the outside, yes, but not exclusively as a final manufacturing step. I'm currently working on a project whose stackup has microvias on the outside of an inner 6-layer core, then 2 more layers stacked on top, then microvias on those as well. So microvias are possible on L1-L2, L2-L3, L1-L3, L6-L7, L7-L8, and L6-L8. The outer-layers-only restriction forces me to give up the convenience of a different default via size for micros, which is really a necessary "convenience" on a dense, complicated board with a ton of vias.
This stackup has B/B mechanical drills ALSO, so just using B/B doesn't really get me what I need unless I'm willing to give up some validation of hole sizes and select the sizes manually (ick)
I think we should remove this restriction, as well as adding a "Select Layer and Place Microvia" companion to "Select Layer and Place Blind/Buried Via".
Steps to reproduce
- Try to place a microvia while on layer 6 out of 8.
- Get yelled at
KiCad Version
Application: KiCad PCB Editor
Version: 5.99.0-unknown-11110+g6d223931fb+buster, release build
Libraries:
wxWidgets 3.0.4
libcurl/7.64.0 OpenSSL/1.1.1d zlib/1.2.11 libidn2/2.0.5 libpsl/0.20.2 (+libidn2/2.0.5) libssh2/1.8.0 nghttp2/1.36.0 librtmp/2.3
Platform: Linux 5.9.0-0.bpo.5-amd64 x86_64, 64 bit, Little endian, wxGTK, xfce, tty
Build Info:
Date: Jun 21 2021 19:13:58
wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 3.24
Boost: 1.67.0
OCC: 7.3.0
Curl: 7.64.0
ngspice: 30
Compiler: GCC 8.3.0 with C++ ABI 1013
Build settings:
KICAD_USE_OCC=ON
KICAD_SPICE=ON