Hacker Newsnew | past | comments | ask | show | jobs | submit | markwu2001's commentslogin

Hey! I can't see your links to the LEDs or the QT Py, but I'm assuming they're probably neopixels as you mentioned "IC" LEDs. Drag your parts into flux and just ask copilot how to connect them together properly. Just to speculate on your project, you probably want some sort of gate buffer for the neopixel signal. And just ensure whatever power source you are using (be it a 5V source or a battery or buck boost converter) can handle the total current draw of those LEDs. I believe they have a wide operating voltage, but also just double check that if you are using a constant voltage source (which you probably are), it isn't over the maximum forward voltage of the LEDs. You can ask in detail with copilot by the way!

Just wanted to echo some more resources to get you oriented. The second video shows actual examples of how to leverage copilot in your exact scenario. Flux End to End tutorial: https://youtu.be/Nz-XvvlozK4 AI Architecture Exploration: https://youtu.be/iGJOzVf0o7o


Thanks for your reply, Mark!

The challenge for me is that the parts I'd like to use are not in the Flux library (or I can't find them). If I understand correctly, I would need to add them manually. To make sure I can use your simulator to check if all parts would work together, I would have to write some code, which is, sadly, way above my skill level. (I am fine with writing code, I just don't know enough about this domain.) I do like the Copilot feature, but, based on your video, it seems that I would need to add some properties that I don't much about. Just to be clear, Flux looks great, but it is perhaps for more advanced folks than me.

Regarding my specific project, I would like to use:

1. Adafruit QT Py ESP32 Pico - WiFi Dev Board with STEMMA QT - 8MB Flash 2MB PSRAM (ESP32-PICO-V3-02): https://www.adafruit.com/product/5395

2. BTF-LIGHTING WS2812B IC RGB 5050SMD Pure Gold Individual Addressable LED Strip (one or two strips): https://www.amazon.com/gp/product/B01CDTECSG

I also figured out that I should probably use:

3. Adafruit NeoDriver - I2C to NeoPixel Driver Board - Stemma QT: https://www.adafruit.com/product/5766

I haven't found these components in Flux.


It's a weird feeling knowing that Altium isn't a pure ECAD company anymore. Like sure, the team is all the same and will build an EDA tool, but somewhere higher up, there will be a skew towards the automotive industry.

I used Altium in my previous job in high voltage and we were amonst the first to use the Creepage feature. It reminded me that there's niche features to be developed for every industry, and there's a future where they resource heavily on automotive. On one hand, $6B seems like enough to go around for everyone but on the other hand, Renesas would only spend $6B if they saw it making/saving them $10B+.

I'd like them to speak more on the long term vision and focus of the product; I think they've done a good job at serving EEs so far and if they'll still hold that position or get pulled away into one loud market. Regardless, that's like in 5-10 years time; I'd be impressed if anything changes in the next 2 years.

Full disclosure, I'm now working at flux.ai but I don't think that doesn't really changes the news for me; I understand Altium is still used by many EE companies who I can still sympathize with, and we're humbly comin' after them :P


PCB Design is a broad "field." Depends on what you're building. I think people place too much of an emphasis on the tool you use instead of the skillsets you need. At the end of the day, in 99% of cases, we're integrating highly complex, yet modular systems built by semiconductor companies.

Expand your design capabilities by understanding these semiconductor black boxes that are available to you in your field (power electronics, audio, RF, etc.) As another user mentioned, read up on design references! And datasheet graphs, and try to get your hands on closely related previous designs. As EEs, we should talk more about design patterns and primitives like software engineers see it.

But of course, I understand why there's a big discussion about tooling, it's like picking the first language to start programming in. Imo, if you're starting out in PCB design, pick a tool that doesn't get in the way with your learning; something simple but also capable when you progress. The software engineering choice would be python, and I think flux.ai is the closest thing we get to that. But still, if you learn one, you can use the rest! We're all constrained by a pretty standardized manufacturing process so the functions you perform in all these tools will be very similar.


I agree with most of these in general, but when combined to a Manifesto, I can't help but feel like this is somewhat satrical


It's funny that its satirical, but I could make an argument why every point is actually a good thing.


Really? In which context?


Prototyping can be a great way to explore the solution space. Just make sure to learn as many lessons as possible and then burn the prototype with fire.

Startups almost by definition face a literal deadline. They critically depend on people who code 80h per week instead of partying.

The impact of UI changes can be hard to measure. If the deployment platforms are very heterogeneous, it's literally impossible to test all scenarios. In these cases it makes sense to roll out slowly and find ways to measure the impact. Or to limit the fallout.

Sometimes, simple solutions get the job done perfectly well and run for years with manageable upkeep. It's a slippery slope though.

It can be very difficult to capture the domain knowledge and the insight of developers and operations people in documentation. Documenting will bog them down instead of getting things done. Managing the bus factor and training up people ahead of time is crucial.


I find it hard to believe that the most successful startups are the ones who code 80h per week unless you guarantee that the output of the code is big $$$


You have to convince your stakeholders that further investment is worth it. But I also think that the "go big or go home" strategy comes from seriously messed-up incentives. It might be justified if the margin is very low or if aquiring a big user base for other purposes is the actual goal.


Probably not what the parent poster was talking about, but fear is a great inhibitor. Excessively high standards for documentation and depth of scope might inhibit less experienced engineers, and nitpicking about scope is a pointless waste of time that ends up being a managerial excuse for more meetings especially if it's brought up endlessly when the core feature does not yet work. This promotes a culture of fear which can paralyze a team of engineers and all you end up getting out of them is the bare minimum.

Or something like that.


The “move fast and break things” context. Ship it now, make butt load of money by over promising and under delivering. No need for testing or docs. Adding half baked features, you only live once.


https://levels.io is famously very successful with this approach


Basically any startup


You can tell this is satire by the fact that it is a manifesto, it is a literary form only used by the other side, we yolo'er don't have time for those. There is a lot of nuance to breaking rules but most people can't think for themselves so they just shouldn't do that. Sort of like the saying the psychotic drawn in the water in which in mystic swim.


bold or italic or something key skills from your work experience.


ai can build its own body now


expert user of flux here. I've been waiting for their implementation of impedance control for a while.

One key perspective I want to bring up is the impact this has to new engineers who run into differential impedance for the first time (e.g. wanting to slap on a USB connector because they're so ubiquitous). My first experience with routing diff pairs was in Altium, where you can do anything under the sun, but it was really confusing and I had to become an expert first by stitching together information from various YT tutorials and application notes.

Flux designed this with the noob and pro in mind. The pro can configure their part to their hearts content just like they can in Altium and all those impedance rules/calculations are packaged nicely for anybody to reuse. Some may call this cheating, but if I had my own design with USB working, I would be so motivated to learn those inner workings.


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.


I have no idea what you're talking about, but my experience 100% mirrors yours in most cases as a programmer.

GPT-4 produces a lot of my code now.

I'm leap-frogging my team a bit in productivity because they still don't like it, but it's so close to being undeniable.


I’ve been unable to replicate this. Could you please show me an example? I ask everyone who makes this claim and have yet to see a concrete example. I just can’t get it to do anything useful for me. I feel like I’m missing the boat!


It wont write your entire program, and you have to already know enough code to know when it gave you garbage, but.. I find I can have it tackle small chunks and in some cases even glue them together in a usable way. It can often remind me of stratigies I would not have thought to use, good or bad. It can also do some basic debugging, including seeing things my tired eyes often miss. That said, you kinda already need to be able to code or you wont know the wheat from the chaff. It feels a lot like managing a remote esl person you will never meet.


I don't get this. I asked GPT-4 to help me build a machine learning program for historical stock prices. It spat back about 8 errors, functions that don't exist, nothing compiled, multiple logic flaws...

Which one of us is lying?...


Probably neither of you? I've had better luck coding with ChatGPT when I ask it very concise questions, mainly at the function or small class level, but still asking for enough functionality to feel satisfied. It helps to give it a "shell" of some code, or a starting point of code to build from. I also make sure to ask it not to include 3rd party libraries (I'd consider those under separate discussions with it). It's truly helpful. And that's saying nothing about copilot integration in the IDE which is sooo good.


None of you are. You are using the tool improperly. The tool cannot spit out entire applications yet, especially if all you told it was the final outcome. I see GPT-4 as a junior programmer in my team who is unusually productive. It cannot do the design for me, but executing it is a piece of cake for it.


> The tool cannot spit out entire applications yet,

Yesterday I had a ticket at my job to extend some functionality in a code base that was probably 200 files and 100+ lines of code in each file, and that's before any `import` references to other libraries.

How can you feed all of these tokens to GPT-4 in a cost effective way so that it knows about your application well enough to recommend/pull off code completion at a human-like level?


I'm working on exactly this. I think we can use embeddings and langchain agents to do this.


The largest models like GPT4 have the interesting property to really, really finish what you started. If you start with flaws of any kind, it will continue to produce them. The inverse is true as well.

This is an actual thing[1] and it’s something larger models are actually worse (better?) at. They score higher and higher on the loss function (did I predict correctly), but their utility (does it work) goes down.

Just thought it was noteworthy.

[1] https://arxiv.org/abs/2102.03896


> If you start with flaws of any kind

I asked it to start and it provided me the flaws :D I can share the prompt if you'd like.


Please do, I’m curious.


Asking GPT-4 to make you an entire application as a complete amateur is absurd and shows you don't understand the context window.


Maybe he just writes really really really simple code all day and faked his way into a developer position? And then his team mates have to fix/redo anything he does?

I've seen it happen several times.


Wrong.


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.


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.


This is what's been holding me back from PCB design. Like, I know the math, but there's forces at play beyond just V1/R1=V2 kinda stuff. I'm really keen to see if an LLM can assist a hobbyist in making sound, quality, designs that aren't going to break his/her wallet when the sheet comes in and none of it works.

About 12 years ago I designed an RF addon board for an RC car (to toggle lights). Even something as simple as switching with NPN transistors looks good on the bench software but when the chips came it didn't work at all. Did I mistakenly ask for PNP? Ugh! I used fritzing at first (still great software) and then upgraded to Eagle. I want to do something beyond Raspberry Pi/Arduino work but not quite ready to design my own radio/motherboard. I know electricity but I don't know why I would need a capacitor/resistor/transformer other than the very basics.

What resources would you recommend since you love to teach PCB design?


This XSeries on edX [0] looks promising for some of the prerequisite knowledge. Then for PCB design specifically, there are specialty courses on Udemy, for example, "KiCad Like a Pro" [1].

[0] https://www.edx.org/xseries/mitx-circuits-and-electronics

[1] https://www.udemy.com/course/kicad-like-a-pro-3e/


Have you tried KiCad? There are some interesting courses on Udemy about using it for PCB design.



How often is it able to get it right first try?


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.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: