A few weeks ago I was going yo start learning how to use PCB design software.
Flux seemed really cool and I gave it a try but couldn't get going well enough to continue. Here are my impressions:
## Key features and my impressions (as of 4/29/23):
- Interaction
- Browser based
- Buggy in Firefox, don't try it (simulation failed to converge)
- Versioning (ala git)
- Collaboration
- Multiple people can work on a circuit at once
- can also give a link to share a circuit with limited permissions
- AI assistant
- Appears to have no specific knowledge of Flux? When I asked it question about running the code it didn't know I was asking about Flux even.
- Schematics
- Has a large library of parts?
- UI is a little clunky for common task like rotating elements but it gets the job done
- Circuit Simulation
- does not support plotting
- can't find a way to parametrize a simulation
- Can affect appearance of schematic or PCB model: e.g.: the LED In the schematic or 3D model will light up / be dark depending on the state determined by the simulation. (this doesn't help me get my work doe but it is cool/pretty)
- Can press a button on the schematic and see its effects via the sim
- API
- Supports manipulation of the circuit via code (looks like #javascript)
- I haven't used it much, and their \*example\* was non-functional (?!)
- PCB design
- Linked directly to the schematic so if you change a part there it changes on the PCB
- Has a very nice looking 3D mode/view of the circuit
I wound up using KiCad for design and www.circuitlab.com for simulation.
Maybe a more reasonable sweet spot for (today’s) AI would be a “data sheet” expert. Ask questions like “what kind of part does X, what is the minimum volume order and unit price”.
Software making hardware making software. How long till someone wires it all up to a chat bot and lets it loose? We're reaching the point where it's feasible to create, more or less, autonomous AI entities. It's doable today, if you have the money and are so inclined, and it gets cheaper everyday.
Missing a few steps like money and being able to open the delivery box and assemble the parts. It’s kind of like that Sagan quote about making an apple pie from scratch.
But like, IS it really that hard? Money is easy enough to provide, presuming we can run this machine at a loss (for now) and humans can fill in the last-mile. Even box-opening can be automated soon. I think it's within reach of a sufficiently motivated and funded grad student. Certainly within the reach of Mr Bezos.
Not arguing with that. My point is that the gap between humans helping it and it being fully autonomous is much bigger than you would think. Even if you design a system with a bunch of robotic arms and other equipment, the AI then has to be able to replicate and install somewhere else that entire set up using only what it currently has or can assemble with its current facilities. That’s a really big challenge!
So far I got it to hallucinate me a formula, which gave me half the frequency I asked for on a 555 circuit. Also, I got it to connect the data lines on a usb C port to a micro, but it only connected A7(D-) and B6(D+), which doesn't seem ideal. Also, it forgot about termination resistors, which, like, for usb 2.0, stuff will probably work without them, but not ideal.
This tool seems like a nice way to recommend parts, but I don't think I'd trust it with much of the actual design.
From what I have seen from AI so far. The only place I can see this level of AI being really useful, would be a place like digikey. Like, as an alternative to parametric search.
I added a test[1] to OpenAI Evals that showed that GPT-4 doesn't have an awful lot of understanding of most component datasheets in the training set. It only got ~16% of my questions correct - and all questions could be answered by a domain expert with access to the datasheet.
Example question: You are to answer each given question with a single number, with no extra characters or units. Round every answer to one significant figure. A IRF540N transistor has an R_DS(ON) of what, in Ohms, at V_GS=10v?
hey, I'm the lead engineer on this project! I love that you did this :)
our experience thus far is that GPT4 definitely needs help when it comes to datasheet-like data. it's great at broad "functional" strokes, but details and particularly numerical details are not its forte.
I think the real solution is to manually convert component datasheets to spice models (I think there are already commercial databases of these), simulate the circuit, and then get a language model like GPT-4 propose changes to the circuit to make it perform better.
The real question becomes how to interface the spice model and the language model - do you for example let it connect a virtual oscilloscope to any node, and give the language model the results back as plain numbers?
Hey Matthias, I'm curious whether/how you validate copilot output suggestions. Software bugs from generative AI can at least be reasonably tested for by developers, but it's certainly much more difficult to catch subtle bugs in hardware.
It’s something we spend a lot of time thinking about. On one side we want to prevent hallucinations but on the other we want to keep the LLMs creativeness
We are experimenting with a bunch of different approaches here already
Preventing hallucinations and therefore improving correctness is fairly simple by providing the model with factual data sources which is something we are working on
The challenge is to balance that so that the model is also still creative when you want it to…but we are making progress here too
If you are interested ping us in our slack and we can add you to our beta tester channel to get access to our experiments in this space
Who is the target audience? It seems like experienced EEs would know most of this stuff. Complete beginners would just not have sufficient context. Is there some middle of the road electronics hobbyists that you are targeting?
We have found engineers across the spectrum to find huge value
From the engineers that design the motherboard of the phone in your pocket to students and hobbyists
Use case go from learning/explanation to brainstorming, component research, figuring out the match for signal filters, to triaging of issues and so on.
I would think this might have a future as a local plugin, but there is more to laying out a complex board than routing so I see “in browser” and see science project not tool for business.
I wonder, how many of those are software companies that also do some hardware, and how many of those are like, proper EE companies. Electrical engineers tend to be really stubborn about their tools after all.
The list includes a bunch of hardware companies and teams that most/all would agree are the most sophisticated in the world
Hardware engineers get a bad rep for being stubborn when what they actual want is just good tools…and we believe they deserve them and so we are building them!
So pretty much AI now can do anything except that “conscious” link between them. So an AI can write the software for drone autopilot for example ..(missing link).. and design the hardware for that drone ..(missing link).. and simulate all that ..(missing link).. to fly that drone autonomously ..(missing link).. to fulfill the objectives.
Unless something new fill these links properly, guess us human kinds are still needed :)
tHE ("MISSING LINK") part appears to be 'iterative corrections' - or "yes, that, but... now adjust here"
What will be interesting is when you train a single doo-dad and it propagates to all the others (100 AI Monkey Syndrome) -- which then allows them to start self-normalizing and trainign eachothers ;
Get on-line and learn from your brethren (humans used to call these 'updates' - ugh, how *pedestrian*) [*pun intended*]
The copilots of copilotai.com, educationcopilot.com, workwithpod.com, arcwise.app, xmind.ai, usegalileo.ai, copilotly.com, up.codes, and moveworks.com have entered the chat.
Flux seemed really cool and I gave it a try but couldn't get going well enough to continue. Here are my impressions:
## Key features and my impressions (as of 4/29/23):
- Interaction
- Schematics - Circuit Simulation - API - Supports manipulation of the circuit via code (looks like #javascript) - PCB design I wound up using KiCad for design and www.circuitlab.com for simulation.