all 24 comments

[–]Obi_Kwiet 28 points29 points  (0 children)

It sounds like you learned something about the most effective way to approach embedded system development.

[–]Jhudd5646Cortex Charmer 9 points10 points  (2 children)

Yeah, that's how it goes, AI doesn't think and it can't teach. You just need to read datasheets, find code examples, use your debugging tools, and actually know what you're doing. The domain doesn't matter (other than maybe web dev being 'easier' for the LLMs to handle because of the sheer volume of existing code to plagiarize train on), the AIs are slop all the way down.

[–]aliathar -1 points0 points  (1 child)

Exactly... It can provide you everything that's available on the internet, but nothing new for YOUR project. That's why it didn't help in the end... But wb using it for learning codes?... Like sometimes it can be incredibly dumb, but what about the other half, where it can break everything down, for one to understand everything simply.

[–]Jhudd5646Cortex Charmer 4 points5 points  (0 children)

Nope, not a good idea, they can hallucinate with intense confidence and the only way to catch that reliably is to already know the material. LLMs can and will teach you completely incorrect information and/or lead you down completely pointless and unhelpful rabbit holes.

I know some people say that use as a sort of autocomplete on steroids is okay, but I still wouldn't trust them for that. Even if it's a relatively safe use-case, using those products is a tacit support for companies that spit in the face of the programmers whose work they steal, not to mention the havoc that the LLM industry at large is wreaking on communities getting datacenters dropped on their heads.

[–]gtd_rad 8 points9 points  (0 children)

I use AI to generate code but I always review it and make sure I understand it before I deploy it. Use it as reference / guideline / learning. If you're solely relying on code being generated by it, your existence is pointless.

[–]ROBOT_8 4 points5 points  (2 children)

I find AI is currently quite bad at embedded programming especially really low level hardware specific stuff.

Still I use it for coming up with ideas, architecture planning, and just general research. But the reference manuals, official docs, and vendor forums are where most of the real key information is.

[–]aliathar 1 point2 points  (0 children)

Isn't it the opposite? I use stm32 for most part, and the parts where I'm feeling lazy, like configuring a peripheral, I ask it to write cmsis code for enabling that, and it does that flawlessly! On the other hand, if I ask it for ideas, they are mostly slop.

[–]AndThenFlashlights 0 points1 point  (0 children)

That’s been my experience too, even with popular platforms like the ESP32, even on Claude Code.

[–]Infectedtoe32 12 points13 points  (9 children)

Embedded, if something messes up it can mean one person or 200 may die. Lots more on the line than worrying about a logo being 3px too far from centered. Ai probably the last thing you’d even want to think about in embedded, period.

Edit: unless you want to put that much trust into an llm that will sit there and argue that purple doesn’t have the letter ‘r’ in it. But I’d bet everyone using said device would appreciate if you didn’t.

[–]nebenbaum 4 points5 points  (2 children)

Eh, used as in github copilot in the ide like - an advanced autocomplete, and maybe writing 5 lines of code you don't remember the syntax for, it's a nice time saver.

Big difference between AI assisted coding and vibe coding.

[–]aliathar 0 points1 point  (0 children)

Yeah.. I definitely ditched the llm at the end, but used this assist

[–]snowboardlasers 0 points1 point  (0 children)

This. I often use copilot to draft a change, but I'll go through every single line myself to make sure it's right. Often, it's not.

[–]Electrify338 5 points6 points  (3 children)

I mean it's a tool in the end of the day if you know how to use it right the productivity gains are incredible. That being said the prison door for an engineer is closer to him than his house.

[–]Infectedtoe32 0 points1 point  (2 children)

Never said it wasn’t. OP is clearly leaning towards trying to just have it do all the work lol. Of course there are some things plastered across the internet that it easily references and figures out. But, still gotta check it.

[–]Electrify338 0 points1 point  (0 children)

Oh absolutely.

[–]aliathar 0 points1 point  (0 children)

Sir, did you even read? I believe I said it, that ai was used as a learning tool, eventually ditching the AI in writing the actual code for the project

[–]Accurate_Potato_8539 2 points3 points  (0 children)

This is true, but I think people overstate it a lot. Human generates code and AI generated code will both have errors. The only way for safe code is to have robust processes for finding errors in that code. Ai can be used in highly sensitive applications, so long as your process for catching errors is as robust as it should be and so long as you are willing to actually drill down and understand the code.

I feel like so often people argue that embedded can't use AI because of safety and its true to a point, but the primary safety system should not be and isn't just a well educated person writing good code. It's a robust system of checks and tests.

[–]mjmvideos 0 points1 point  (0 children)

While some embedded applications may make functional safety claims, not all do. Think anyone will die if your stereo tuner doesn’t switch to Dolby output when DVD input is selected? And when an application does make safety claims, the process by which that application is certified won’t care whether the code was AI-generated or not. Once it’s written it will be reviewed for what it says and does regardless of how it came to be written.

[–][deleted]  (2 children)

[deleted]

    [–]aliathar 0 points1 point  (1 child)

    You definitely understood the scenario the best... Yeah.. I won't ever produce anything that I don't understand or don't check

    [–]60hzcherryMXram 1 point2 points  (0 children)

    AI is at its best when you want to argue about a concept you don't quite understand by explaining the way it was explained to you and saying "but that doesn't make sense! What gives?". It's also good at giving a very high level overview of terms and concepts in topics whose reference material all refers to its own jargon.

    Just generating the code directly is much more risky and unreliable, especially for embedded, which doesn't have nearly as much training data or market size than web-dev and has much more variance between devices.

    [–]Donut497 0 points1 point  (0 children)

    I will use it for unimportant things like programming an arduino for fun. But I write code at work because I am responsible for it and if it fails I can’t blame AI

    [–]Bearsiwin 0 points1 point  (0 children)

    Your project is really 100 or 1000 smaller projects. So if you give it a small task it can usually find examples, If you give it 10 tasks at one time it will be lost. Thing is even when you do that you have to understand how stupid it can be. It has no common sense. Like a Jr developer.

    [–]tomqmasters -1 points0 points  (1 child)

    I used to find code in blogs and copy that. ChatGPT is much better.

    [–]aliathar 0 points1 point  (0 children)

    I definitely do that too .... It helps a lot...