[HN Gopher] ChatGPT for Hardware Design ___________________________________________________________________ ChatGPT for Hardware Design Author : built_with_flux Score : 151 points Date : 2023-04-27 17:55 UTC (5 hours ago) (HTM) web link (docs.flux.ai) (TXT) w3m dump (docs.flux.ai) | markwu2001 wrote: | PCB Designer on the team: | | Holy cow this is awesome! The integration of project context with | an LLM enabled more than the sum of its parts when it comes to | information access. | | When designing circuits for fast iterations, you're constantly | managing risk and time expenditure; this leads to copying a lot | of "flight heritage" circuits so to speak. | | With the LLM, I'm able to get highly condensed starting points | for better circuits when it comes to simplicity, | understandability, or performance. As of right now, all I have to | do is fact check the solution which is much easier than | synthesizing one myself. I'm citing the example where I got it to | design me a viable high gain analog frontend that meets my gain, | bandwidth, noise, and biasing requirements. | nullsense wrote: | How often is it able to get it right first try? | markwu2001 wrote: | I'll interpret "right" as in giving correct information. I | found that it depends on the type of question asked; if it's | somewhat general information such as design concepts and | design topologies, it impressively nails it 99% of the time | for my limited testing period. The main area it gets things | wrong relates to very specific information that has only one | source: e.g. datasheet specs. I heard the team already has | plans to mitigate hallucinations on this front. | | Also, I find myself having a conversation as I would with a | real person, so it's less of spitting out the right answer | for any technical question I might have, but more of a design | buddy to consult when you're blocked on your search through | the massive electronics solution space. Of course, this is a | very preliminary use case and I can't wait to see what other | people use it for. | gfodor wrote: | I've been interested in learning how to design PCBs, I wonder | if this tech helps constrain the set of things one ought to | focus on learning, with the assumption that AI can fill in | other areas. | markwu2001 wrote: | I love teaching PCB design! As with you, I'm also really | curious about AI's contributions to learning. My opinion is | that the automation of search and execution increases the | impact one person can make so more time can be spent on | connecting the dots at a higher level. Whether or not | education catches up in time is another story haha. It's | pretty open ended right now but it's undeniable that a huge | educational gap there. | built_with_flux wrote: | Here is nice demo video | | https://www.youtube.com/watch?v=5aCN92kOxTU | greg wrote: | Engineer on the team here. Some of the interesting challenges of | doing ChatGPT for circuit design were: | | 1) How to communicate the circuit connections to ChatGPT in the | text prompt. We ended up just using the standard netlist format. | Apparently it knows about netlists from its training data. It | also knows about datasheets. | | 2) How to get the needed accuracy and precision for questions | like "calculate the resistance needed between component A and B". | For that, we adopted the popular langchain framework to integrate | specific "tools" into the AI for specific recognizable problems. | joshuanapoli wrote: | How do you deal with designs whose netlist or part list exceeds | the context size limit? | rock_hard wrote: | It's indeed a challenge | | For many applications such as talking to pdfs you can use a | vectors db like pinecone | | But that doesn't work well for schematics because for of the | interesting use cases you need access to the whole thing. | | Here is what's been working for us | | 1. Extreme compression and summarization of the data we | dynamically put in the context 2. Leverage the extreme amount | of world knowledge the cutting edge models have | arcticbull wrote: | Out of curiosity, I noticed in the video that it recommended | for a voltage regulator either an LM7805 or an LM1117 - either | a super inefficient 5V regulator that has no business in new | designs, or a 1.2V low-dropout 800mA regulator that is probably | not appropriate to the other components it recommended (i.e. an | LM7805 -> LM1117 would be 36% efficient at best). | | It then also recommends a LiPo battery with a nominal 3.7V | which obviously wouldn't be compatible with its LM7805 | recommendation. | | It also recommends an ESP8266 which is a 3.3V part so neither | of the recommended regulators, nor the battery alone, would be | appropriate. | | Also, it recommends a 168MHz STM ARM micro - but it already has | an ESP8266 with GPIO. | | I'm not sure what it's suggesting I build but it doesn't really | sound like a working environmental radiation logger ;) | | How should I think about this? | stavros wrote: | Why is the battery alone not appropriate for the ESP8266? It | runs just fine off a lithium battery. | rock_hard wrote: | In this case it seems to be giving examples of common ICs | that are voltage regulators - these answers to high level | questions are pretty vague by default. | | We've had good results by asking follow up questions like | "what power supply IC could I use to power a 3.3v | microcontroller from a 3.7V nominal LiPo battery over the | whole battery voltage range?". | | I asked that question and I got: LM3940 and AMS1117-3.3 (LDO, | high drop out but probably ok for low current - one isn't in | stock but it doesn't have stock info yet), and TPS62203 and | ADP2108 (bucks, both seem appropriate). These answers should | get better as Copilot gets access to more and more tools. | arcticbull wrote: | btw I hope my comment didn't come across as too negative, | like many folks I'm still trying to frame my own thinking | around this kind of tooling. Thanks for the follow-up. | Applejinx wrote: | Not at all. I thought it was salient and very much what I | wanted to know about. It seems there will be a heck of a | lot of comments saying 'this is so awesome!' and this | isn't a field where I'm able to look at the answer and | immediately see the list of howling errors and | hallucinations, so I'm very glad somebody can. | | It's all very well expecting the hallucinations, but | specificity beats Ludditeism every day. My gut reaction | was 'ho boy, I'd better not trust this' but I didn't have | the domain knowledge to understand why the GPT advice was | dangerous. You did. | assimpleaspossi wrote: | I find comments similar to yours about ChatGPT all over the | internet. I finally took the time to ask that some questions | over the last few days. All the answers it gave were mundane | and expected from any click bait web site you can find. I | Googled the same questions and found similar answers. | | Some personal questions it refused to answer or give | suggestions because "only you can decide" was the response. | | I'm very suspicious of all this. I'm thinking the only real | benefit--some may say--is the chat aspect. You can carry on a | conversation rather than having to determine a proper Google | search over and over again. | | Which makes me think there is some hype involved. | gfodor wrote: | You're probably not using GPT-4, the internet is being | flooded with takes about GPT-3.5's quality like this simply | because the author doesn't know there is a meaningful | difference with the new model. | jacquesm wrote: | If GPT-X would just shut up if it doesn't know something | it would already be 10x more useful than it is right now. | gedy wrote: | Isn't that the core issue? Its model doesn't really | "know" what is real or made up. | assimpleaspossi wrote: | When I go here: https://openai.com/product/gpt-4 it says | "try on chatgpt plus" and sends me to the same page I log | in with and that's where I've been testing it. | sbohacek wrote: | Be sure that you select GPT-4 from the drop down list of | models. For each new chat, it reverts back to default | GPT-3.5. | pigeons wrote: | GPT-4 still confidently makes up sources for wrong | answers and throws subtle mistakes (the obvious mistakes | aren't as big a nuisance) into output. | | This isn't to say gpt-4 isn't cool or impressive or a | development to watch and learn about and be excited | about, but I frequently see criticism dismissed as "you | must be using 3.5" while I find 4 still costs more time | than it would have potentially saved. | masto wrote: | Opened site. Chat popped up in the corner and started making | sound effects. Closed site. | | I guess it doesn't matter if a few people are annoyed, if the end | result of these things is a new increase in conversions. But I | wish "don't annoy people" was actually in the product | requirements. | LesZedCB wrote: | > Please don't complain about tangential annoyances--e.g. | article or website formats, name collisions, or back-button | breakage. They're too common to be interesting. | | https://news.ycombinator.com/newsguidelines.html | spaceman_2020 wrote: | Ah the trusted HN top comment that's never about the product | but a complaint about a minor marketing annoyance on the | website. | jrockway wrote: | Most "annoyance blocker" filterlists get these. In this case | it's intercom.io which I block with Adguard's Annoyances lists: | https://adguard.com/kb/general/ad-filtering/adguard-filters/ | [deleted] | satvikpendem wrote: | I can't imagine using the internet without uBlock Origin, | SponsorBlock, and a whole host (no pun intended) of filter | lists. | aloer wrote: | The timing could not be more perfect. Yesterday I realized that I | need to create my very first PCB to repair and smartify a device | that I broke. Today I thought I should use ChatGPT to better | understand how things work. And now this. | | There are a lot of space constraints so first thing is figuring | out if it is even possible to build as small as needed. Usually I | would probably be better off starting to build big first and then | scale down. But I feel confident that I can already get quite far | with the amazing resources out there. | | I spent hours watching videos about soldering, PCB design, some | of the components I think I would need (very flat flexible | cables, small ESP32 SMD, no space for USB) and then how to start | actually doing the work. My last exposure to electronics was in | grade 8 and that was very heavy on cables. | | This 3h video here was very helpful to understand the process. | It's an overview of building your own ESP32 dev board with | EasyEDA from start to finish: https://youtu.be/S_p0YV-JlfU | | I like these top-down big picture kind of things that go over | everything in just enough detail to know what to search for. Does | something like this but with flux.ai exist for complete | beginners? The tutorials seem more focused on users switching | over from other PCB design tools. | | Every step of the way I am just amazed how today I can get | physical things custom made and shipped within days. | | And then there's fun videos like this here: Small scale fully | automated PCB production in what is basically a garage -> | https://www.youtube.com/watch?v=ZH6ljHUx_IM&t=800s | jacquesm wrote: | That last video... drool. | amelius wrote: | This phones home, so I cannot use this as per my company's | regulations. | fortyseven wrote: | Why on earth would you call this "copilot" when GitHub has | already long established that as a name in this space? :I | paulgb wrote: | I believe aviators have been using it longer. | gojomo wrote: | Indeed, but under trademark law, the context-of-use matters, | and is what allows generic terms from one domain - like | 'copilot', 'apple', 'slack', 'y combinator' - to become | defensible trademarks in another commercial-offerings domain. | | From this landing page's headline & 1st paragraph, I was | still thinking they were talking about the broader-market, | better-known Github Copilot - also a for-pay LLM-driven | coding assistant! - in some way. In the 2nd paragraph, I saw | they were just reusing the name of someone else's LLM coding | assistant for something different that they independently | trained. | | Note also the current submission headline here is "ChatGPT | for Hardware Design", not the page's "AI For Hardware Design | with Copilot". | | Did the submitter not use the usually-requested original page | title, because they knew `Copilot` would be misunderstood? | (They created another misunderstanding via their change: | ChatGPT is only an analogy for what Flux.ai's product is | doing, rather than a contributing part of the system.) | gowld wrote: | If they aren't using ChatGPT in Flux.ai, that's textbook | trademark misuse! | | Check out my new product -- It's Windows for Raspberry Pi! | (Actually a Ubuntu port) | gojomo wrote: | Their page doesn't mention 'ChatGPT' - that analogy was | added by the submitter. But, Flux.ai has named their LLM- | based coding assistant 'Copilot'. | Czarcasm wrote: | Github can't monopolize the word "copilot". It's a basic | english word to describe someone that is assisting you to steer | a vessel/team/project. It's been around for hundreds of years | in naval industry, and in aviation since the dawn of flight. | gowld wrote: | Oh they can if they get a trademark. It's a navigational | term, but not a computing term. Inventing a new meaning for a | word standard use of trademark. | iamflimflam1 wrote: | Was wondering the same thing - just seems a bit daft and is | going to really confuse people. | UncleOxidant wrote: | Yeah, this seems like a lawsuit waiting to happen. Rename it to | 'Solder' or something before that happens. | celeritascelery wrote: | GitHub doesn't own the copilot trademark. I would actually | like to have these assistants called "copilots" instead of | "coding LLM". Since these are going to be a part of our lives | let's use a useful and memorable name. | gojomo wrote: | Simply via commercial use, Github could choose to assert a | common-law trademark on 'Copilot' within their field-of- | use. But also, they've registered "Github Copilot" at the | USPTO: | | https://trademarks.justia.com/974/60/github-97460083.html | pulvinar wrote: | Presumedly they would likewise register "Flux Copilot"? | mhb wrote: | I recently used ChatGPT to find a part. Maybe this was an | anomalous result, but it was wrong. Don't know if this will be an | issue with your project. | | Me: Is there a digital to analog converter with an 8V analog | range and serial input? | | CGPT: Yes, there are several digital-to-analog converters (DACs) | available with an 8V analog range and serial input. One example | is the AD5541A DAC from Analog Devices. It has a 16-bit | resolution and can accept serial input in the form of SPI or QSPI | signals. The output voltage range is programmable and can be set | to 0 to 8V using an external reference voltage. | | Another example is the MAX5389 DAC from Maxim Integrated. It has | an 8-bit resolution and can accept serial input in the form of | I2C signals. The output voltage range is also programmable and | can be set to 0 to 8V using an external reference voltage. | | These are just a couple of examples, but there are many other | DACs available from different manufacturers that meet your | specifications. | | Me: Those parts are limited to 6v max | | CGPT: I apologize for the mistake in my previous response. You | are correct that the AD5541A and MAX5389 DACs have a maximum | output voltage range of 5V, and they cannot meet your requirement | of an 8V analog range. | | However, there are other DACs that can meet your specifications. | For example, the DAC5578 from Texas Instruments is a 16-bit DAC | that can operate from a single 5V supply and has a programmable | output range up to 10V. It also supports a serial interface with | SPI or MICROWIRE protocols. | | Another option is the MCP49xx series from Microchip, which | includes several DACs with output voltage ranges up to 10V and a | serial interface with SPI or QSPI protocols. | | I hope this information is helpful, and please let me know if you | have any further questions. | TT-392 wrote: | Similar experience here, the only thing I have found it to be | somewhat okay at, is figuring out what would be the somewhat | "jellybean" version of a component I am looking for. It is | sometimes kinda difficult to figure that out through the usual | parametric search. Though, even then, it has recommended me | components that are very much not what I asked for, stuff as | simple as recommending me an npn instead of a pnp. | pulvinar wrote: | Interesting. I tried the same question (each a new | conversation, GPT4) and 10V and above it catches, but 8V seems | to be in its blind spot. Maybe it hasn't learned anywhere to | take absolute maximum ratings seriously? | pulvinar wrote: | Update: after asking it to explain absolute maximum ratings | and check that for this part (which it knew correctly) and | pointing out its error, it finally suggests a reasonable | part, the AD5758. | | It's clearly missing experience with magic smoke. | numpad0 wrote: | ChatGPT talks all from its memory, they're not suitable for | hard data. Bing Chat type of architecture is more suited, | though it still couldn't find a part matching that criteria. | steve_adams_86 wrote: | I've had this experience as well. I find the trick is the | provide as much information as possible and keep the expected | solution's scope to a minimum. That flux is including context | about the project a user's working on will probably help more | and more as the project is built out, which is cool. The second | part though, keeping query scopes narrow, is up to the user I | guess. | | It would be interesting if circuit simulation could be used to | vet out suggestions, but you'd need a vast database of | components and their pinouts, GPT or something else would need | to know how to arrange the circuit in order to simulate them | properly, and so on. That's the only way I can think to | validate outputs at the moment, though. | CamperBob2 wrote: | Same here, when asking for an N-channel complement for a | P-channel power FET. It would get some of the parameters right, | such as dissipation and package type, but would get others | wrong, like insisting on 800V Vds parts when the original | target was a 50-volt part. | | Promising, but not quite ready for prime time yet. | hammyhavoc wrote: | Can report similar experiences. | | Just signed up for a free account, will give it a try, but | expecting hallucination to be a major issue. | gowld wrote: | This report is unhelpful without the GPT version you are using. | amelius wrote: | What I want most is simulation models of commercial components, | and a good simulator... | | Oh and something that can read datasheets for me, and extract | important parameters (or convert them to spice models). | | A tool that can hunt for cheap components would also be nice. | | Apart from that, I don't think I like to have any fuzziness in my | workflow. | rock_hard wrote: | Yes, us too! | | We are working on all of this right now and have a bunch more | announcements over the coming weeks and months. | | Stay tuned! | phendrenad2 wrote: | Flux is cool, but I don't know who the customer is. I feel like, | as a hobbyist maker, I might be it and just don't know it? | rock_hard wrote: | Founder here: | | Incredibly stoked to announce this today! | | This is a dream a long time in the making. When we first thought | of rebuilding the hardware design tooling stack from scratch, AI | driven design seemed like the dream at the end of the | tunnel...only 3+ years later we are here | | Given the open ended nature of AI Expert agents we are launching | a community preview. We are committed to keep building | http://flux.ai in the open and are excited to discover this new | realm with all of you. | | Hit me with questions | nunuvit wrote: | Have you reevaluated the decision not to implement much by way | of basic interface features like symbol and footprint editors | for such a long time? It's a real barrier to even playing | around with the software. I want to see you succeed, and my | experience in the EDA industry and as an electrical engineer is | making me wonder about that approach. | | It makes sense if you're just shopping it around to the EDA | incumbents since they'd have you redesign those parts anyway, | but the fact that you currently offer a paid subscription to | users makes me think that either you've underestimated or I've | overestimated the importance of having those features by now. I | guess that could also make sense if you want a more manageable | user base for now. | rock_hard wrote: | Not sure I follow...maybe there is a misunderstanding here | | We do have symbol and footprint creation and editing | capabilities...in fact the vast majority of parts on the | platform have been created by users. | | Now what we don't do is offer a modal editor like legacy | tools do...instead it happens all in the same mode, which | simplifies a lot of the UX and also provides powerful new | abilities such using a schematic to create simulation models. | | Now that said I think we can do a lot more here to further | improve the experience and we def will but you are right in | that it hasn't been much of an issue which is because you | have access to a vast preexisting library in the platform | nunuvit wrote: | The last time I tried to evaluate it was a long time ago | and it seemed to be all svg uploads. I had to re-read the | docs more closely after reading your comment. It says you | need to enter svg only for non-rectangular symbols, but | it's not clear if you can create or modify a pad shape | other than circular or rectangular from within the tool. | Obviously good progress, and more than I understood when I | wrote my previous comment. That's minimum viable for many | to start using it, so my concerns are addressed. | | The single mode thing is cool. | steve_adams_86 wrote: | If this works well, are you interested in training a model | specifically around the domain you work in so you could get | deeper integration with your product? | | I have a personal project similar in concept to flux, but | rather than working at the circuit level, it's at the device, | firmware, and infrastructure level. I've been trying to use GPT | to intuit how to network devices using different protocols, | such that it might be easier for lab techs (for example) to | discover how to manage and maintain their experiment tooling | and infrastructure. It's really hard, though. The outputs and | level of integration are mind-bendingly good, but... It's not | perfect, which makes it too clumsy or even dangerous for what I | want to build. | | I think I envision something like GPT transforming human | language into prompts for a narrower model with more | predictable outputs, which is far more aware and capable with | the application's logic and data. The user experience could | then give you the conversational ease, yet far better | application integration as well. | | Anyway, just curious what you're thinking and very excited | about projects like this. This is really cool. | rock_hard wrote: | Yea def looking into this | | We already use a multi model approach and mix of non | deterministic and deterministic tooling in the pipeline to | optimize for a given task | | Lots of more work to be done here | heyzk wrote: | The flux docs indicate that you're using a custom-trained | LLM and in another comment it was mentioned you're using | LangChain (to integrate non-deterministic tooling perhaps). | Just curious, but are you using some combination of your | own model, GPT3/4, and calculators / datasheet readers / | etc? | rock_hard wrote: | The answer is: all of it! | | Not everything is in prod yet but we def combine all the | things you can imagine to pull this off | causi wrote: | GPT is really bad at math. Doesn't that mean it's also bad at | doing the math for designing circuits? | steve_adams_86 wrote: | Maybe not. It understands data sheets, and seems to be able | to connect the dots based on probabilities around connecting | components together. If you don't ask it to do large-scale | design tasks, it's okay at narrowly scoped tasks like this. | | If it's wrong, you can determine that during simulation. You | could also assert that in the background, I suppose -- prune | the bunk suggestions by the language model before presenting | them. | | In my own experiments I find GPT can succeed in complex tasks | if you prompt it multiple times at different steps of the | task, and have some level of recursive validation and re- | prompting to keep it in line. In a case like this I have a | feeling it would do a great job, and would be especially | useful for the discovery/exploration phase of a new project. | xyzzy123 wrote: | Have you tried recently? I am getting surprisingly good | results lately with GPT-4 on basic physics problems with no | prompt engineering (just stating the problem). It seems to | recognize when it needs to "think step by step" and just do | it. | hammyhavoc wrote: | Here's another interesting idea: the marketing blurb mentions | reducing costly errors--but with the amount ChatGPT | hallucinates, how does this work? What steps have been taken | to mitigate hallucination? | rock_hard wrote: | LLMs do indeed hallucinate. | | What's been working well for us is to give it access to | factual data sources such as calculators, component data | sheets, etc. | | It does really well from our tests in the past few weeks, | so well that we decided to invite everyone to explore the | boundaries with a community preview | | Just give it a shot and report back | hammyhavoc wrote: | Can you elaborate on "really well"? Because a few weeks | of testing and "really well" versus the claim of reducing | costly mistakes on the marketing blurb whilst | simultaneously acknowledging hallucination doesn't | inspire confidence. | | I'd be interested to know a lot more about testing | methodology too. A hallucination could be a much more | expensive problem than someone simply making a basic | mistake that someone might otherwise catch if they were | doing things the usual way. | | Not trying to be obstinate, genuinely interested, but | sceptical as my experience of ChatGPT has been very | negative due to hallucinations, to the point that I find | that the marketing materials sound far too good to be | true versus the comment here, which seems much more | grounded. | rock_hard wrote: | Please def report back if you encounter it to hallucinate | | This is exactly why we are doing the community | preview...to make it your favorite design tool. | rock_hard wrote: | To give you an example of the typical response quality we | encountered: | | @copilot can you design a low pass filter for me with 3db | point of 300khz? | | copilot: Sure, I can help you design a low-pass filter | with a 3dB point of 300 kHz. A simple passive RC | (resistor-capacitor) low-pass filter can be used for this | purpose. To calculate the values of the resistor (R) and | capacitor (C), you can use the following formula: | | f_c = 1 / (2 pi R * C) | | Where f_c is the 3dB cutoff frequency (300 kHz), R is the | resistor value, and C is the capacitor value. Let's | choose a standard resistor value, for example, 1 kO. | Then, you can calculate the capacitor value as follows: | | C = 1 / (2 pi R f_c) = 1 / (2 pi 1000 300000) [?] 530.5 | pF | | Since 530.5 pF is not a standard capacitor value, you can | use the closest standard value, which is 560 pF. With | these values, the actual 3dB cutoff frequency will be | approximately: | | f_c = 1 / (2 pi 1000 * 560e-12) [?] 283.5 kHz | | The low-pass filter can be assembled by connecting the 1 | kO resistor in series with the input signal, followed by | the 560 pF capacitor connected to the ground. The | filtered output can be taken across the capacitor. This | design will give you a first-order RC low-pass filter | with an actual 3dB point of approximately 283.5 kHz. | hammyhavoc wrote: | And how about the negative responses involving | hallucination? Ideally giving an example of the worst | hallucination encountered thus far and least worst thus | far. | | As a potential customer, I'm more interested in knowing | where the potential known failure points or points of | friction are than knowing what's working well. | | Yes, when it works, it's certainly compelling in its | responses--but as it never knows when it is wrong, it is | equally compelling at a cursory glance when it | hallucinates. | | For most folks interested in this, their Dunning-Kruger | complex will prevent them from picking up on when it's | wrong because it's so convincing and sure of itself. | rock_hard wrote: | I hope it would not lol | | For starters: From our testing it's really extremely good at | providing the right formulas to solve the problem at hand. | | But you are right, these models are inheritely non | deterministic and therefore can struggle with things like | math. The solution is to provide it access to tools such as a | calculator which works really well. | gowld wrote: | > rebuilding the hardware design tooling stack from scratch | | This kind of talk is tacky and repels technical users. | zlstone1992 wrote: | This is absolutely been a long-wait implementation of GPT. | | What is the process of adding component to the list? Additional, | could rule to been user defined (to minimum EMI/EMC, e.g.)? | rock_hard wrote: | Yeah you can create your own components or work with the over | 250k we have in the public library. | | Flux is designed much like GitHub in this regard...you can fork | other people projects and what not. | | You can already ask it today to perform EMI/EMC checks for | you...and we have started thinking about using it to write | static rules for you among other things | lloydatkinson wrote: | It's AI said it added components to the schematic but there is | nothing there? | lnsru wrote: | Nice stuff. But hard to find good application in my environment | for it. I mostly re-work old designs or use reference designs | with particular chips (that the company has in stock at the | moment). Maybe somebody could greatly benefit without the | limitations I have at work. ___________________________________________________________________ (page generated 2023-04-27 23:00 UTC)