The only merit Fritzings has against a thriving open ecosystem such as KiCAD is its dumbed down interface that would make it more accessible to beginners. However, if you want to use it without paying €8, you have to compile it from source, which makes this whole point mute.
For paid/non-free, some of Altium's offerings would be the next step up, along with Fusion-360. I haven't tried Fusion-360 ECAD. I do know that Autodesk bought Eagle, but it's not clear to me if Fusion-360 is using Eagle for schematic capture and PCB?
After that, it's big-boy tools like mentor or cadence. These are overkill for hobbyists unless the man is paying for your seat.
I've heard that the really expensive EDA tools are like Adobe Photoshop --- everyone experimenting/learning tends to just pirate them, and then end up at a company which does pay for them.
https://www.autodesk.com/products/fusion-360/electronics-eng...
I've used it for mechanical and I found it extremely polished and intuitive and totally worth the subscription for that alone, but I have neither the time nor project (yet) to go down the rabbit hole of learning the ECAD functions of Fusion-360.
And good luck with creating your own components!
Prior to the early computing CAD days, the traces were really rounded and flowing, and had teardrop fills. They were also done freehand, with transparencies, markers, and tape.
This is a good example of hand-designed boards: https://www.worthpoint.com/worthopedia/vtg-early-1970s-ampex...
The constraint is still there. Curved traces make your GUI ridiculously unmanageable. Ever tried to manipulate font outlines? It's like that on a PCB, only an order of magnitude worse. You have to operate control points for every single segment rather than just dragging a trace. All for effectively no benefit on 99.9% of all PCB designs.
In fact, the only good argument for using non-Euclidean traces is in the ultra-high-speed arena (think DDR4 bus or multi-GHz RF). If traces are small enough that they fit between the PCB weave, different traces can have enough difference in electrical permittivity that it will screw up the matching (trace 1 has an FR-4 fiber directly underneath while trace 2 only has cross fibers underneath and so has about 50% air underneath instead of 100% fiberglass). Consequently, you have to swing the angles to weird things like multiples of 7 or 13 degrees to prevent that.
For anyone with more questions in this area of high speed digital design, feel free to reach out to me (contact info in profile) - I love the topic.
[1] https://blog.lamsimenterprises.com/2011/01/08/fiber-weave-ef...
I guess it depends on who you are, but I tried it and noped away in under 30 minutes. I understand how this might be a valuable learning tool in a classroom environment, but the restrictions it has around components and design are too much for a hobbyist experimenting.
> which makes this whole point mute.
moot
When adding components, add "LCSC" to overall schematic (BOM export will fail if added to each part separately (join issue)) and the part number in each part in order to use the JLCPCB assembly service. Only parts with LCSC column are exported in the JLCPCB BOMs.
.gitlab-ci.yml
...
tests:
image: setsoft/kicad_auto:dev_k6
stage: testing
script:
- "[ -f *.kicad_pcb ] && kibot -c test.kibot.yaml"
tags:
- docker
pcb_outputs:
image: setsoft/kicad_auto:dev_k6
stage: gen_fab
script:
- "[ -f *.kicad_pcb ] && kibot -c output.kibot.yaml"
only:
refs:
- master
artifacts:
when: always
paths:
- Fabrication/
tags:
- docker
...
test.kibot.yaml kibot:
version: 1
preflight:
run_erc: false
update_xml: false
run_drc: true
check_zone_fills: true
ignore_unconnected: false
output.kibot.yaml # Gerber and drill files for JLCPCB, without stencil
# URL: https://jlcpcb.com/
kibot:
version: 1
filters:
- name: only_jlc_parts
comment: 'Only parts with JLC (LCSC) code'
type: generic
include_only:
- column: 'LCSC'
regex: '^C\d+'
variants:
- name: rotated
comment: 'Just a place holder for the rotation filter'
type: kibom
variant: rotated
pre_transform: _rot_footprint
outputs:
- name: JLCPCB_gerbers
comment: Gerbers compatible with JLCPCB
type: gerber
dir: JLCPCB
options: &gerber_options
exclude_edge_layer: true
exclude_pads_from_silkscreen: true
plot_sheet_reference: false
plot_footprint_refs: true
plot_footprint_values: false
force_plot_invisible_refs_vals: false
tent_vias: true
use_protel_extensions: true
create_gerber_job_file: false
disable_aperture_macros: true
gerber_precision: 4.6
use_gerber_x2_attributes: false
use_gerber_net_attributes: false
line_width: 0.1
subtract_mask_from_silk: true
layers:
# Note: a more generic approach is to use 'copper' but then the filenames
# are slightly different.
- F.Cu
- B.Cu
- F.Paste
- B.Paste
- F.SilkS
- B.SilkS
- F.Mask
- B.Mask
- Edge.Cuts
- name: JLCPCB_drill
comment: Drill files compatible with JLCPCB
type: excellon
dir: JLCPCB
options:
pth_and_npth_single_file: false
pth_id: '-PTH'
npth_id: '-NPTH'
metric_units: false
output: "%f%i.%x"
- name: JLCPCB
comment: ZIP file for JLCPCB
type: compress
dir: Fabrication/JLCPCB
options:
files:
- from_output: JLCPCB_gerbers
dest: /
- from_output: JLCPCB_drill
dest: /
- name: ibom
comment: Interactive BOM
type: ibom
dir: Fabrication/ibom
options:
dark_mode: true
- name: 'JLCPCB_position'
comment: "Pick and place file, JLCPCB style"
type: position
dir: Fabrication/JLCPCB-BOM
options:
variant: rotated
output: '%f_cpl_jlc.%x'
format: CSV
units: millimeters
separate_files_for_front_and_back: false
only_smd: true
columns:
- id: Ref
name: Designator
- Val
- Package
- id: PosX
name: "Mid X"
- id: PosY
name: "Mid Y"
- id: Rot
name: Rotation
- id: Side
name: Layer
- name: 'JLCPCB_bom'
comment: "BoM for JLCPCB"
type: bom
dir: Fabrication/JLCPCB-BOM
options:
output: '%f_%i_jlc.%x'
exclude_filter: 'only_jlc_parts'
ref_separator: ','
columns:
- field: Value
name: Comment
- field: References
name: Designator
- Footprint
- field: 'LCSC'
name: 'LCSC part number'
csv:
hide_pcb_info: true
hide_stats_info: true
quote_all: true*My impression is that Horizon-EDA is well worth following, but not as far along as KiCAD. It's a nice second option that some people prefer.
Plus Kicad is cool ;)
It’s a modern take on electronics design with slick UX
Comes with a free tier as well as paid
Software engineers here are gonna love that components in flux are fully programmable from schematic/PCB all the way down to simulator models
And it's browser based. Opening any of the examples on the main page with firefox lifted up my PC like a hovercraft by the way the fans started to spin, with several seconds delay for any interaction (on a PC that's capable of running Altium and Orcad).
PS: I love the animation on the main page and how the mechanical engineer has no idea on what's going on!
Yeah, performance is on our radar now that the core product is mature enough to manufacture boards. Our goal is to get 200 component projects to work well on a regular 2017 generation machine and get to 1000 by end of year.
About vendor lock-in: we def don't want to lock anyone in...so data portability is big focus and we have import/export support for kicad and other formats like STL or Collada already. Planning to add support for Netlists, Altium, Eagle, etc too as well as a REST API.
You can also export your project as a json file today
Ultimately the power of flux is connectedness the collaboration that enables but we do plan to ship a standalone app that's unbundled from your web browser in parallel to the web version.
We also have plans to offer some amount of offline capabilities so solve for use cases such as being on a airplane.
Dev1: It works on my machine!
Dev2: Great, we'll ship your machine!
[0] https://lescinskas.lt/assets/img/posts/2019/docker-works-on-...
I would also suggest that anyone who cares about computers gets to know basic electronics. How do transistors work, what is a bus (e.g I2C or SPI) and how is it all connected? (Drumroll ... a PCB of course). There is a ton of tutorials on youtube that do it end to end. E.g Phils Lab https://www.youtube.com/watch?v=rLDqQ2L_mUQ for a PCB design. Or Ben Eaters excellent beginner tutorial "Hello World from Scratch" https://www.youtube.com/watch?v=LnzuMJLZRdU