Software guys, please, no. - Page 1
Forum section: electronics / general

author: Howardlong
author_rank: Super Contributor
timestamp: September 17, 2022, 11:36:22 pm
content: This time, it's Dave's Garage. I like this channel, plenty of interesting stories, and I often learn a thing or two. But he is most definitely a software guy first and foremost.Timestamp 3:10, hooking up a jelly bean LED directly to a Raspberry Pi GPIO deliberately without a resistor: deliberately because, well, it works for him, and he asks viewers to convince him otherwise.

author: coppice
author_rank: Super Contributor
timestamp: September 18, 2022, 12:31:33 am
content: Look on the bright side. If it wasn't for idiots, there'd be no merit in competence.

author: John B
author_rank: Frequent Contributor
timestamp: September 18, 2022, 12:40:42 am
content: No need to worry about burning out GPIO pins, since RPis are plentiful and easy to obtain at the moment.

author: Nominal Animal
author_rank: Super Contributor
timestamp: September 18, 2022, 02:18:52 am
content: Quote from: Howardlong on September 17, 2022, 11:36:22 pmAh, a "coder".You know, the person who copy-pastes code off the web, until something compiles and passes through the minimal test. In the open source world, the person who responds to bug reports with "it works on my machine, so I'm closing this bug report as invalid".Please do not confuse him with anyone who can actually develop useful software that works in a predictable fashion, okay?

author: Ed.Kloonk
author_rank: Super Contributor
timestamp: September 18, 2022, 02:28:34 am
content: I did see the video and fully expected a response after the omission of the resistor. Couldn't believe he couldn't at least have stuck something in there.So what's your preferred value of resistor in this example?

author: rfclown
author_rank: Frequent Contributor
timestamp: September 18, 2022, 02:46:48 am
content: I haven't done through the details to see if it's ok to do what he did... but it might be ok. The GPIOs on a PI have a programmable drive strength from 2mA to 16mA. Basically you get to vary the number and size of the inverters driving the pin (which dictates Idss). The default "strength" is 8mA. Consider also that the LED voltage is 2V or so.

author: Ed.Kloonk
author_rank: Super Contributor
timestamp: September 18, 2022, 03:59:44 am
content: Quote from: Nominal Animal on September 18, 2022, 02:18:52 amThe video appeared in my feed at stupid 'O clock, so the first thing I did was mis-read the title as hello Py. Interested only because I'm straight C, but Py curious.And when he started connecting up LEDs directly to pins, I began to wonder if I had had too much to smoke for the evening.What baffles me is why not just make the SBC eat it's own dog food rather than bothering with all that remote building nonsense? FFS. For a blinky prog, just log in, start a text editor, compile and run.Whilst sure, if you're building a kernel or designing a driver or something. But if that Pi project grows into something bigger and useful and then gets put into use somewhere, years later you might want to change a couple of lines of code, you have to setup that whole MS build env again and prolly need to figure out why bloody Code Studio wont work anymore..No hate on those who do like using the big IDEs for big code bases, everyday.Just wish more emphasis was placed on keeping it simple for the hobbyist. You should make sure that you can recompile from a terminal.The pointlessness of shoehorning bloody MS programs into everything.

author: ledtester
author_rank: Super Contributor
timestamp: September 18, 2022, 04:02:57 am
content: Quote from: Ed.Kloonk on September 18, 2022, 02:28:34 am1K is a convenient value for modern LEDs at either 3.3V or 5V.

author: WattsThat
author_rank: Frequent Contributor
timestamp: September 18, 2022, 04:36:53 am
content: Beware software weenies wielding screwdrivers or even worse, a soldering iron.

author: Ed.Kloonk
author_rank: Super Contributor
timestamp: September 18, 2022, 04:39:12 am
content: Quote from: WattsThat on September 18, 2022, 04:36:53 amDo hobbyists use soldering irons anymore? Everything is breadboard and ribbon cables isn't it?

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 18, 2022, 05:09:20 am
content: What a luck that I'm BI, otherwise I might take offense in this coder bashing

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 18, 2022, 05:11:05 am
content: Quote from: Ed.Kloonk on September 18, 2022, 04:39:12 amIf you want to make something that actually works you need a soldering iron. How often have I had something on a shitty breadboard not work properly

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 18, 2022, 05:21:11 am
content: Quote from: Ed.Kloonk on September 18, 2022, 03:59:44 amThere is a benefit in working remote with an IDE on your main system and not the PI. Remote debugging is very easy when doing development.I use netbeans 8.2 for basically all my coding and like it very much. The compiling is done on the PI, but the typing on the main PC. The source is copied when I press the compile button. This way it is easy to backup the source code too.Having to use command line for compiling and debugging is tedious and not needed and luckily there are other solutions in the world besides microsoft shit.

author: Brumby
author_rank: Unknown
timestamp: September 18, 2022, 05:33:17 am
content: I was thinking of asking if they drive their car with the engine revving at the redline all the time?Just because you may be able to get away with it doesn't mean it's a good idea.

author: amyk
author_rank: Super Contributor
timestamp: September 18, 2022, 07:13:49 am
content: If only Broadcom would've released the GPIO electrical specs...

author: tggzzz
author_rank: Super Contributor
timestamp: September 18, 2022, 08:09:11 am
content: Quote from: pcprogrammer on September 18, 2022, 05:11:05 amPositive: solderless breadboards give you opportunity to hone your debugging skills.Negative: skills at debugging solderless breadboards, not your circuits.Solderless breadboards: just say no. Use the selection of these techniques that matches your requirementshttps://entertaininghacks.wordpress.com/2020/07/22/prototyping-circuits-easy-cheap-fast-reliable-techniques/

author: magic
author_rank: Super Contributor
timestamp: September 18, 2022, 08:16:59 am
content: Quote from: rfclown on September 18, 2022, 02:46:48 amPlease stop muddying the water with those confusing acronyms.YouTube told me that a MOSFET is a switch which is either ON or OFF; this cannot possibly work

author: AndyBeez
author_rank: Frequent Contributor
timestamp: September 18, 2022, 08:32:26 am
content: One can shave half a cent by removing a series resistor in a 3V3 GPIO line, but I have never seen this done in the wild. Not even on the RPi. To drive (and dim) a naked LED requires 50% PWM maximum.Quote from: Ed.Kloonk on September 18, 2022, 04:39:12 amHobbyists today not only have software to suffer, but dreaded SMDs. Soldering hell 101. PTH parts and breadboards go together, but at some point in the future, PTH parts will go out of production, and breadboards will only work in software. Hoard LEDs now.Quote from: Nominal Animal on September 18, 2022, 02:18:52 amWhich is why I gave up on open source development. Often some dumb Reddit bros with a Linux shell for social skills. Everyone can do the blinky example, on every embedded device thanks to VS Code and Platform.IO, but can they write a library with embedded assembler patches? This requires reading and understanding datasheets. Wot do the thinking

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 18, 2022, 08:36:58 am
content: Quote from: tggzzz on September 18, 2022, 08:09:11 amThe only good use I have for the solderless ones is with modules like a blue pill or arduino nano and dupont style wires that make reasonable connections, but as soon as you start connecting other components like resistors or capacitors that are a bit older or have thin wires it gets wonky. And when you want to scope a signal on such a component it always flips out the hole.

author: mikeselectricstuff
author_rank: Super Contributor
timestamp: September 18, 2022, 08:55:02 am
content: For a demo like this I think it's perfectly reasonable to omit the resistor for simplicity. Nothing will burn or catch fire. The LED and GPIO pin will limit the current enough.

author: sokoloff
author_rank: Super Contributor
timestamp: September 18, 2022, 09:17:13 am
content: Quote from: Nominal Animal on September 18, 2022, 02:18:52 amHe made his bones writing code long before “the web” existed.

author: Ed.Kloonk
author_rank: Super Contributor
timestamp: September 18, 2022, 09:20:57 am
content: Quote from: sokoloff on September 18, 2022, 09:17:13 amMS stock made his bones, I suspect.

author: wraper
author_rank: Unknown
timestamp: September 18, 2022, 09:47:55 am
content: Quote from: Nominal Animal on September 18, 2022, 02:18:52 amJust so you know. He wrote a significant part of Windows, a lot of his code like Task manager and disk formatter are still on your computer many years later.

author: magic
author_rank: Super Contributor
timestamp: September 18, 2022, 10:29:47 am
content: Well, do not confuse Windows with useful software that works in a predictable fashion.Or, dunno, don't confuse software with something useful that works in a predictable fashion if we are at that.

author: Howardlong
author_rank: Super Contributor
timestamp: September 18, 2022, 11:07:58 am
content: FWIW, I took a measurement of 27mA for a red LED without a resistor on a GPIO.The SoC GPIO current limits are for power limiting during transients, not for driving LEDs.Yes, it works, most of the time. So does driving home drunk. Just because you can doesn't mean you should.

author: strawberry
author_rank: Super Contributor
timestamp: September 18, 2022, 11:13:36 am
content: IC output pins are current limited but LEDs are not (modern LED die sizes are small to dissipate extra power)

author: AndyBeez
author_rank: Frequent Contributor
timestamp: September 18, 2022, 11:21:28 am
content: Quote from: magic on September 18, 2022, 10:29:47 amFrom WinNT to Win10, tech support guys spent their whole work lives doing Windows patching, often every day and night. Thank goodness for the DOS prompt? btw Microsoft dismissed the web as a 'fad', as then MS was wedded to it's business model of providing endless support (patches) for it's over priced corporate products.

author: langwadt
author_rank: Super Contributor
timestamp: September 18, 2022, 11:24:50 am
content: Quote from: wraper on September 18, 2022, 09:47:55 amyeh, afaik he wrote taskmanager just as tool for himself and it then ended up being incorporated in in windows,zip folders he made and sold as a standalone program before it was added to windowsI tihnk he has a video talking about his biggest commit was after he went through all of the windows source to add unicode support

author: tooki
author_rank: Super Contributor
timestamp: September 18, 2022, 12:41:09 pm
content: Quote from: coppice on September 18, 2022, 12:31:33 amHe may not be a hardware guy, but he’sdefinitelynot an idiot.Quote from: Nominal Animal on September 18, 2022, 02:18:52 amLMAO at how insanely incorrect you are.You have, with certainty asymptotically approaching 100%, used software he wrote. As others said, he wrote some significant parts of Windows.Quote from: magic on September 18, 2022, 10:29:47 amWhat an ignorant statement. Windows isn’t even my preferred OS, but the fact is, itisuseful software that performs well for most people who use it. It’s not perfect (no product is!), but it’s good enough that no alternative has been able to dethrone it, despite decades of attempts. (The only time Windows has ever been dethroned was in internet servers, but I’d argue that Windows’ dominance for a while was the weird blip, and that the internet’s “native” OS is UNIX/Linux.)

author: Brumby
author_rank: Unknown
timestamp: September 18, 2022, 01:17:12 pm
content: Quote from: mikeselectricstuff on September 18, 2022, 08:55:02 amI wouldn't disagree, but there was further comment that he had done this "for years" without problem. That makes me wince - just a little.

author: AndyBeez
author_rank: Frequent Contributor
timestamp: September 18, 2022, 02:14:44 pm
content: If anyone wants to know why a series resistor is needed with an LED, check out Big Clive's "Pound shop Xmas disaster" video on YouTube:

author: xrunner
author_rank: Super Contributor
timestamp: September 18, 2022, 02:15:40 pm
content: Can you hammer a nail with the bottom of your Skilsaw? Sure ... youmightwill be shunned by professional carpenters but it'll work most of the time.Of course we know you should calculate a current limiting resistor value from the supplied voltage and voltage drop of the LED. But as we see, for a cheap demo that's working at 50% DC - meh. Maybe it'll get stressed in a few 10's of thousands of cycles. So what - just grab another one and keep going. But for a professional design you wouldn't want to do it1.1. I would have preferred he explained that a little better but maybe he wants comments for attention

author: cgroen
author_rank: Unknown
timestamp: September 18, 2022, 02:48:08 pm
content: Quote from: magic on September 18, 2022, 10:29:47 amWell, Windows has been working here for the last many many years, maybe you are doing something wrong ?

author: thinkfat
author_rank: Unknown
timestamp: September 18, 2022, 03:14:08 pm
content: Quote from: John B on September 18, 2022, 12:40:42 amHah! Good one!

author: Nominal Animal
author_rank: Super Contributor
timestamp: September 18, 2022, 03:59:56 pm
content: Quote from: AndyBeez on September 18, 2022, 08:32:26 amAnd which is why I do not care howpopularLinux (or any open source project) is, only how civilized/sane/rational the core developer community is.It would be so nice if people were rational and cared more... but that's an utopia.Quote from: sokoloff on September 18, 2022, 09:17:13 amWhich doesn't change the underlying personality type at all. If you wish, I'll amend my definition into "the person who has learned nothing in the last thirty years, because they believe they've done this long enough to know it all already".I've metmanypeople like this, even in universities –– although I prefer to only interact with the ones who like learning and arguing rationally, and are not swayed by arguments from authority, and most importantly,know and admit when they are beginners outside their domain of expertise.Quote from: wraper on September 18, 2022, 09:47:55 amAh, that explains a lot.Quote from: wraper on September 18, 2022, 09:47:55 amNo, they aren't. The first and last Windows machine I ever had used Windows 98. Guess why? It just isn't a good OS at all. It is popular, but for reasons completely different to code quality or robustness.Quote from: langwadt on September 18, 2022, 11:24:50 amWhich is another thing Windows never got right. In particular, Unicode code points range from 0 to 1114111, inclusive. Windows' wide character support isn't unicode, it's actually UTF-16, and many Windows programs don't deal with code points 65536..1114111 correctly because of that or other related issues.You know, because "65536 glyphs is enough to cater for all languages". Except it isn't.Quote from: tooki on September 18, 2022, 12:41:09 pmYou have, with certainty asymptotically approaching 100%, used software I've contributed to, so essentially used software I've "written".Doesn't that make you insanely incorrect, by your own argument?I know I've offended your Coding Guru, but fact is, a lot of popular code, open source or not, is utter crap because most developers just don't care about the engineering part enough. Things like robustness and security must be designed in, they cannot be added on top later on, yet most coders are absolutely fine with writing something that works, and leaving the "rest" –– like buffer overrun checks in C –– for "later".These people work on both proprietary and open source code. They are common. They are successful, because the actual quality of their work product is unrelated to their popularity or career development. You are utterly, horribly misguided if you think their long careers or popularity of their work product is somehow an indicator of the quality or sanity of their work product: the world does not work that way. In essence, you are looking at thebrandthe person has built, instead of the actual work product.Shame on you.

author: tooki
author_rank: Super Contributor
timestamp: September 18, 2022, 04:26:09 pm
content: Quote from: Nominal Animal on September 18, 2022, 03:59:56 pmOf course not, because your statement was that he was a “copy and paste from the web” coder, and that’s nonsense, because you’ve used code he wrote before the web was even really a thing.Your retort doesn’t even make logical sense, it just makes you look like a whiny child crying “no, YOU’RE the butthole!” I didn’t make ANY claims about your coding abilities, so what code you’ve written has zero bearing on the truthfulness of my reply.Quote from: Nominal Animal on September 18, 2022, 03:59:56 pmIshould feel shame because I don’t agree with your shitting on someone you know nothing about? (And don’t patronize me by claiming he’s my “guru”. That’s simply not true. I don’t have any particular feelings about him either way.)I completely agree that experience tells you little about the quality of someone’s work.But your claim was that he was a cut and paste from the web coder, and that’s just nonsense.

author: Nominal Animal
author_rank: Super Contributor
timestamp: September 18, 2022, 04:47:55 pm
content: Quote from: tooki on September 18, 2022, 04:26:09 pmYou do know they do not actually physically exist, right? I mean, anyone who only does that will not work in the industry for long.It was acharacterization, an analog to describe the approach to their work, not a literal description of their work pattern.Double shame on you for willfully acting as if you didn't realize that. You knew perfectly well that I was describing the mentality, and not the exact behaviour.(Perhaps I should have written "the kind of person who" instead of "the person who"; but I suspect you would have resorted to this same fallacious argument even then. It is not like you are considering any of my actual points here at all, just asserting that mine are wrong, because the sky is blue, and there are twelve months in a year –– that is, asserting my actual points are irrelevant, because if you twist my argument just a little bit, it no longer makes any sense to you. Word games, not rational argumentation.)And triple shame on you for completely ignoring the core of my argument: that just because they are popular and have had a long successful career, does not prove their work product is anything but a degree above garbage; it only proves that they have made themselves a successful brand.

author: wraper
author_rank: Unknown
timestamp: September 18, 2022, 04:52:08 pm
content: Quote from: Nominal Animal on September 18, 2022, 04:47:55 pmSo you characterize a person you know nothing about. If you watched particular video, there are no signs of "the kind of person who" either.

author: Nominal Animal
author_rank: Super Contributor
timestamp: September 18, 2022, 04:55:54 pm
content: Quote from: tooki on September 18, 2022, 04:26:09 pmYou wrote, and I quote,"LMAO at how insanely incorrect you are. You have, with certainty asymptotically approaching 100%, used software he wrote. As others said, he wrote some significant parts of Windows."What is that but not an argument based on authority; asserting that because he wrote significant parts of windows, his work product must be good?You are illogical.If you extended the same logic to me, you should show me the same utter dereference to me as you do to him.My argument is that that logic is untenable, a fallacy; that popularity is unrelated to quality, and you should not show any dereference to any person in any case. Instead, you should examine what they say and do, and use that to evaluate the basis of their claims.Here, you have a person who has done one thing for a long time. He shows signs of a certain very common mentality, "it works for me, so it is correct". I am deriding that mentality to the utmost, because I have not seen a single field of engineering or science where that produced good results. However, I know that such assertions, if made with the correct social overtures and language, make a person popular, and lets them have a very successful career.It is also the reason why so much software is utter shit. I don't blame the social gamers, the people who succeed by making themselves a brand, so that the quality of their work product does not matter. I blameyou, for agreeing with them, and supporting them.And that is exactly where the "shame on you" comes from: for being irrational and emotive, instead of rational and analytical, and still considering yourselves engineers or scientists.

author: Nominal Animal
author_rank: Super Contributor
timestamp: September 18, 2022, 05:00:58 pm
content: Quote from: wraper on September 18, 2022, 04:52:08 pmI believe he is a very nice, personable, interesting person, who can present himself positively in every situation.And that I do not want to have to rely on a single line of code he wrote, for exactly the reasons above.If you disagree, fine. But do consider that our disagreement has zero value to anyone; only thereasonsbehind the different opinions have value.

author: SiliconWizard
author_rank: Super Contributor
timestamp: September 18, 2022, 06:11:06 pm
content: I have watched a number of his videos. And while this guy sounds "nice", the videos are well produced and there are occasional fun anecdotes, in the end I don't find the information he conveys particularly interesting, and for the relatively small amount of videos he made where he actually writes code, uh, yeah. Not particularly interesting, and if this is what a "star developer" is at MS, this would not be very surprising. Now when he gets into hardware, that's usually even funnier.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 18, 2022, 06:26:46 pm
content: And that is why I gave up on youtube. It is mostly about entertainment and has little substance. And even though some are better to watch, how many commodore 64, trs-80, apple II repair videos, or I made this gadget or wrote this software or checked out this scope can you watch. To me it gets boring after a while, and for learning I rather have a proper datasheet to figure it out myself.

author: tooki
author_rank: Super Contributor
timestamp: September 18, 2022, 07:57:08 pm
content: Quote from: Nominal Animal on September 18, 2022, 04:47:55 pmYou are, again, putting words in my mouth.I do understand it’s a characterization, and never claimed otherwise. But your claim was that he is someone who isn’tQuote from: Nominal Animal on September 18, 2022, 02:18:52 amWhich is nonsense since he’s written software that is useful and has worked in a predictable fashion.

author: tooki
author_rank: Super Contributor
timestamp: September 18, 2022, 08:02:05 pm
content: Quote from: Nominal Animal on September 18, 2022, 04:55:54 pmIt is NOT an appeal to authority, it’s a direct response to THIS claim:Quote from: Nominal Animal on September 18, 2022, 02:18:52 amThat is a claim which is easily disproven, and which others in this thread disproved before I even responded.Nobody is claiming he’s a star programmer (I’m not enough of a programmer to be a judge of code quality, nor do I claim to be.) But you made some easily falsifiable statements that have been falsified.All the rest of your replies to me, with all the stuff you’ve put in my mouth, all the ridiculous claims of “emotional” response, idolatry, etc: sorry, you’re just being a condescending asshole based onyourlazy, imprecise reading of what I did and did not say — and your own faulty memory of what YOU said. And based on that fantasy in your brain, you constructed an entire alternative narrative about me that I didn’t even do or say, and then had the audacity to “shame” me publicly for. Fuck off, dude.

author: tooki
author_rank: Super Contributor
timestamp: September 18, 2022, 08:12:31 pm
content: Quote from: wraper on September 18, 2022, 04:52:08 pmThank you for confirming exactly what I thought.I guess it’s no surprise he then wrote two walls of text characterizing me…

author: coppercone2
author_rank: Super Contributor
timestamp: September 18, 2022, 10:32:58 pm
content: you don't need a resistor for the base of the transistorhow about parallel GPIO pins for running that 5V relay at 3.3V right from the MCU ?? it clicks!that little square can do anything! discrete components are obsolete, just throw more microprocessors at the problem. Who needs to have a buffer when you can just parallel some atmegas??I am waiting for a circuit that uses atmega connected to mains because someone figured out how to get it to short out to make the correct passive component. Universal building block if you know how to burn it out properly. If 500V is applied between pins 3 and 15 you can get a 30kohm resistor roughly 30% of the time.

author: nigelwright7557
author_rank: Frequent Contributor
timestamp: September 18, 2022, 10:46:22 pm
content: Quote from: Nominal Animal on September 18, 2022, 02:18:52 amI have been a coder for 40 years and still sometimes just rip some code off the net.The last rip was a fast fourier transform for a digital oscilloscope.It took four go's to find one that actually worked well.Even then I had to get into it to extract the frequency domain data from it.Microchip have vast databases of software for PIC's to save time and help programmers.Why start from scratch if its already been done and tested ?

author: nigelwright7557
author_rank: Frequent Contributor
timestamp: September 18, 2022, 10:49:01 pm
content: Quote from: coppercone2 on September 18, 2022, 10:32:58 pmI was poking mains through a 390K resistor into a PIC 40 years ago.Its not so simple with newer PIC's. If the pin does A2D then it doesn't have the same protection as standard i/o pins.

author: eti
author_rank: Super Contributor
timestamp: September 18, 2022, 11:17:53 pm
content: Quote from: coppice on September 18, 2022, 12:31:33 amYou reckon Dave Plummer an “idiot”? He’s anything BUT. The guy is basically a savant. Bit rude, to put it mildly.

author: eti
author_rank: Super Contributor
timestamp: September 18, 2022, 11:25:37 pm
content: This thread has devolved into an aspie ego-fest. Invest some days in watching Dave’s videos - ALL of them if you wish - and learning about this lovely man. He’s a kind, witty and utterly brilliant man. He’s also a millionaire, and you don’t become a millionaire from being stupid (unless you perform a heist).Grow up, buffoons.

author: coppercone2
author_rank: Super Contributor
timestamp: September 19, 2022, 01:52:27 am
content: Quote from: nigelwright7557 on September 18, 2022, 10:49:01 pmyou misunder stood my idea. The MCU is good for everything, including using as a base for a DIY carbon resistor, by gross over power. That way you use another PIC with 'fuses set' to 390K instead of the 390K resistor (which software developers might be allergic to) to power the mains connected MCU. I would suggest something made with a pencil, but since they went paperless, resistor options are limited now

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 19, 2022, 05:26:37 am
content: Quote from: eti on September 18, 2022, 11:25:37 pmBeing a millionaire has nothing to do with being brilliant. There are lots of millionaires that are not to bright. Some are born into money, some win the lottery, some just have a loud mouth and bully themselves to the top, some bought good stock when they had the opportunity to do so and the money made itself, etc.So the last part of your statement has no barring on his actual skills.For the rest I have no idea what his capabilities are. Have seen a couple of his videos and they are easy to watch, but it did not showed me that he is brilliant, and I don't care about it either way. But hooking up a led to a gpio without a resistor to limit the current to me is stupid. Even though judging from the comments (did not watch the video) he used PWM with a 50% ratio if something fails and the gpio gets stuck on either high or low both the led and the gpio might get fried.And then making a video about it to make ignorant people think it is a proper way to do so, to me is plain stupid and irresponsible. But as I did not watch the video, I can't say if this is actually the case.Since different types of leds have different forward voltages using one with a lower voltage might blow things up, and watchers that don't know these things might try that and be disappointed and get angry. Or try it with a different MCU that can't handle it. You know, to me irresponsible.You can be a brilliant software developer, but when you know shit about hardware, then don't go telling other people wrong things about how hardware can be done. But again I don't know what his knowledge about hardware is.

author: Black Phoenix
author_rank: Super Contributor
timestamp: September 19, 2022, 09:58:32 am
content: Quote from: pcprogrammer on September 18, 2022, 06:26:46 pmCurrently I turned into commercial/residential Instalations with a mix of solar and EV charging plus PLC programming.Last time I touch PLC ladder style programming was way back in 2010 and I may need in a project in the future. Need to refresh myself.

author: eti
author_rank: Super Contributor
timestamp: September 19, 2022, 03:34:20 pm
content: Quote from: pcprogrammer on September 19, 2022, 05:26:37 amThe general theme of your reply, is “but then again I don’t know”. Let’s take that and you not knowing anything about Dave P., and making character judgements based on wild speculation and ignorance, and summarise that you just couldn’t resist judging him. This is called “gossip”, and no one likes a gossip.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 19, 2022, 03:48:47 pm
content: If you properly read what I wrote, you would see that I did not judge him, but judged that he made a video with bad information.I don't know him personally, and my guess is that you don't either, so neither of us can say anything definitive about him.So no gossip here, just an observation about his video delivering bad information, and since I did not watch it I'm relying on information others wrote here. That might be bad, but that is what it is.

author: thinkfat
author_rank: Unknown
timestamp: September 19, 2022, 06:00:53 pm
content: Guys, instead of harping on "software guys" who apparently never even know the hot from the cold of a tool, imagine me chuckling over old school EEs who struggle to get a GPS receiver talk to their micro controller. Or even make an LED blink with an Arduino sketch :-) It's really hard to be an expert in all corners of such a broad playing field.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 19, 2022, 07:12:45 pm
content: Yes that is true. Being an all rounder is not easy. Knowing your short comings is too. Best to be open to learning new things, but also know when to give in.

author: eti
author_rank: Super Contributor
timestamp: September 19, 2022, 09:04:09 pm
content: People are SO binary and simplistic in their judgements of TOTAL STRANGERS. He may be a "software guy" to whomever happens across his videos, but NO ONE knows what he knows, nor his experience in myriad fields. He may have been employed in a software role, but ya know, human beings can know MORE than one skill, and just because he ain't made a career out of it...yeah... carry on judging.

author: PlainName
author_rank: Super Contributor
timestamp: September 19, 2022, 09:20:18 pm
content: Are we, perhaps, missing the point of the video? It's not about a bloke showing off how brill (or not) he is - as people have pointed out, you can easily view the quality of the products he wrote. AFAICS, the video is to help along someone who wants to get into programming micros. I suspect that 99.5% of the users on here, and almost certainly 100% of the participants of this thread, are not the target audience.Cut'n'pasting off the web is a perfectly good way to start. You don't want an 'obtuse code for dummies' roadhump to put people off, and this is just the 2000's version of the 1980's copying a listing out of a magazine. He is just showing how easy it can be, and giving the steps for someone starting out to actually have a go and get hooked.Similarly, cross-compiling and debugging is the way to go. Maybe you don't have a Pi, or you won't be using them later. If you've learned how to install some crappy tools on it and then make coffee while it builds and compiles, you'll be stuck when you're trying to program a ATTiny or similar. OTOH, cross-compiling by default is a transferable skill to pretty much anything.Further, I bet the Pi doesn't have a fraction of the OS tools I use all the time when writing code. Or, in fact, working out what code to write, and where it is, how to safely maintain it, etc. Does it have Listary for a start? I can tell you: no. So why not take advantage of the system you use all the time to do this stuff? Windows, Linux or Mac - whichever floats your boat, but the point is that wearing your comfortable shoes instead of clumping around in too-small clogs is surely better.That LED, though... really bad. I think he was being a bit too clever there.

author: fourfathom
author_rank: Super Contributor
timestamp: September 19, 2022, 09:25:34 pm
content: We can say he gave bad advice for driving the LED. And that's about it.

author: tggzzz
author_rank: Super Contributor
timestamp: September 19, 2022, 09:26:23 pm
content: Quote from: eti on September 19, 2022, 09:04:09 pmYou are judging him just as much as other people. The judgement differs, however.However, you seem to be missing a simple fact: judging what someone says is not the same as judging someone.

author: rsjsouza
author_rank: Super Contributor
timestamp: September 20, 2022, 01:42:48 am
content: Gosh, overinflated egos and fanboys galore in this thread...

author: coppercone2
author_rank: Super Contributor
timestamp: September 20, 2022, 02:16:30 am
content: does it not remind you of the old case of primitive pete where the screw driver is also a prybar, a chisel, a scraper, a torque stick, a scribe, measuring stick and marking punch? you can also scratch your back with it I suppose.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 20, 2022, 05:07:23 am
content: Quote from: tggzzz on September 19, 2022, 09:26:23 pmAnd he is also judging the ones that post in this thread, which to him are also total strangers. So who is he to do so?

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 20, 2022, 05:19:10 am
content: Quote from: coppercone2 on September 20, 2022, 02:16:30 amThere is a difference between using a tool like that for something it was not made for and making people believe that you don't need a resistor when driving a led with a Raspberry PI.I watched a bit of the video last night, and yes there is the "I'm not using a resistor and I dare you to convince me that it is wrong" message, but no further explanation that it might wreck your Raspberry PI when you connect multiple leds this way to the other GPIO pins. I'm not willing to blow 35 euros on testing when it fails, and maybe the PI is hardened enough that it does not. But it is still ill advise.

author: tggzzz
author_rank: Super Contributor
timestamp: September 20, 2022, 07:15:18 am
content: Quote from: rsjsouza on September 20, 2022, 01:42:48 amI decided to remove the word "fanbois" from my post, on the grounds it would detract from the main point

author: tggzzz
author_rank: Super Contributor
timestamp: September 20, 2022, 07:18:02 am
content: Quote from: pcprogrammer on September 20, 2022, 05:19:10 amSo the twat really had that in his video?I wonder how he and softies would react to someone saying "I share non-atomic mutable variables between threads, and I dare you to convince me it it wrong"?

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 20, 2022, 07:29:57 am
content: Yep he did more or less, but you need to read between the linesBut no worries, because he is a trained professionalTake from it what you like.

author: tggzzz
author_rank: Super Contributor
timestamp: September 20, 2022, 07:34:17 am
content: Quote from: pcprogrammer on September 20, 2022, 07:29:57 amClickbait? That causes me to plonk the individual, and confirms my dislike of technical yootoob video.

author: rsjsouza
author_rank: Super Contributor
timestamp: September 20, 2022, 09:32:59 am
content: Quote from: tggzzz on September 20, 2022, 07:34:17 amI am unsure if these comments detract from the video. I watched some of it, including the point where these two comments are shown (sorry, the RPis don't interest me enough to watch it all) and to me it seems they were made in jest/irony and, although it might smell like "commentbait" to generate traction, I can only speculate the real intentions.Overall, IMO it is much ado about nothing. Some watch this as "SW guys sticking to the know-it-alls HW guys" as the damn LED is in fact working with no lame resistors. Others watch this as "SW guy endangers beginners by proposing risky methods of blowing up their beloved RPi" as the IO may be short lived. And a great deal watch this as "one more opportunity to clap back at one person that worked for a company that I hate and despise".

author: Ed.Kloonk
author_rank: Super Contributor
timestamp: September 20, 2022, 09:59:06 am
content: Quote from: rsjsouza on September 20, 2022, 09:32:59 amIn all my years on the internet, I've never seen this kind of thing happen.

author: Black Phoenix
author_rank: Super Contributor
timestamp: September 20, 2022, 11:12:05 am
content: Quote from: Ed.Kloonk on September 20, 2022, 09:59:06 amI think you forgot the /s. Although is implied.

author: eti
author_rank: Super Contributor
timestamp: September 20, 2022, 03:19:28 pm
content: Quote from: rsjsouza on September 20, 2022, 01:42:48 amExactly.

author: eti
author_rank: Super Contributor
timestamp: September 20, 2022, 03:34:52 pm
content: A fact that seems to have escaped people here, due to being hyper-obsessed over his electronics theory... he's not claiming that this is an electronics tutorial - the LED is merely a means to and end, where that end is observing pin state.Also, SINCE it's not an electronics tutorial, maybe he's wise enough to have a pre-leaded LED with inbuilt dropper resistor... but then, I suppose looking at it from a logical perspective like this, doesn't give people the fury they so desire to deride him.He's no idiot. Only true idiots automatically assume all others are idiots.

author: fourfathom
author_rank: Super Contributor
timestamp: September 20, 2022, 03:44:49 pm
content: Quote from: pcprogrammer on September 20, 2022, 07:29:57 amThat LED looks suspiciously like some I got via Amazon, an assortment of various colors,all with a series resistor buried under the heat-shrink.Regardless, I can't believe (well, actually I can) that this conversation has gone on for so long. It's just about a software guy not using a series resistor!!! Or is it?

author: Howardlong
author_rank: Super Contributor
timestamp: September 20, 2022, 03:48:02 pm
content: Quote from: thinkfat on September 19, 2022, 06:00:53 pmIndeed. Nowadays it's a mental impossibility to "know everything", and it's been like that for about three decades. Before then one could be equally at home designing & building computers, as writing the software that ran on them.I'm a bare metal RF mixed signal guy, I design and manufacture those designs commercially, but I also have an active career in Fintech, in particular enterprise trading systems focussing on RDBMSs and the associated infrastructure. I've done both for decades. I'm also always learning.I am, however, although I do partake in woodworking & metalwork, I'm a relative novice with no training, formal or otherwise, so I wouldn't consider pumping out a How-To video on it.The way I put it was that hardware guys should be careful about recommending going against the grain such as, for example, the use of hard coded literals throughout their code "because it works for them", in the same way software guys should refrain from assuming that they know better when it comes to recommending no resistors.Look at it this another way, when you're a noob at anything, a key to making progress is to remove as many uncertainties as possible. Let's say that the blinky doesn't work. It could be for many reasons, including, but not limited to, either the GPIO or the LED going bust. However, as a noob you don't know what the risk is. It might be low, but you don't know. So why introduce that uncertainty unnecessarily to begin with?

author: xrunner
author_rank: Super Contributor
timestamp: September 20, 2022, 03:48:37 pm
content: Quote from: eti on September 20, 2022, 03:34:52 pmLOL - no it hasn't "escaped people here", at least not me-https://www.eevblog.com/forum/chat/software-guys-please-no/msg4422553/#msg4422553

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 20, 2022, 03:53:11 pm
content: Quote from: fourfathom on September 20, 2022, 03:44:49 pmFor me it isBut he uses two LED's. One that is placed in the breadboard. No extended wires, and it looks like just a standard green LED.And the statement "No resistor for 3.3V" is challenging. Take a 3.3V power supply and hook the same LED on to it. My money is on bye bye LED. With a forward voltage of around 2V the current will go up and up.

author: eti
author_rank: Super Contributor
timestamp: September 20, 2022, 03:53:55 pm
content: Quote from: fourfathom on September 20, 2022, 03:44:49 pmInsecure engineers just like to be outraged at something ALL the time; that's what I pick up on A LOT on EEVblog forums. Perish the thought that someone be as clever as them, or even, <GASP> maybe MORE knowledgeable and experienced than them in their own field (and since no one here can prove to the contrary re Dave Plummer, it's best to show humility and end this idiotic thread)

author: tooki
author_rank: Super Contributor
timestamp: September 20, 2022, 04:04:08 pm
content: Quote from: pcprogrammer on September 20, 2022, 03:53:11 pmThat's clearly a modern emerald green (~520nm) LED, and those havesignificantlyhigher forward voltages (3-3.5V) than traditional lime green LEDs. So when connected to a 3.3V power source, many of them are right in their happy place, even without a current limiting resistor.If we were talking about old-fashioned 1.7-2.2V LEDs, then it'd clearly be problematic. But with modern 3V+ green/blue/white LEDs, it's actually not preposterous.

author: fourfathom
author_rank: Super Contributor
timestamp: September 20, 2022, 04:11:58 pm
content: Quote from: pcprogrammer on September 20, 2022, 03:53:11 pmI didn't see the bare LED in the protoboard. OK, so no resistor. Definitely not right, but also definitely not the same thing as connecting the LED across a 3.3V power supply. Most IO pins can handle the occasional short to ground without smoking, and a bare LED is less of a load than that. The available current will probably be well under 10mA so the LED will also survive. "No resistor" is bad advice, but it's probably still going to work. I just don't see the outrage -- the guy was wrong, but so what?

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 20, 2022, 04:22:42 pm
content: Quote from: Howardlong on September 18, 2022, 11:07:58 amWell it can be more then 10mA according to a test Howardlong did.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 20, 2022, 04:27:29 pm
content: Quote from: tooki on September 20, 2022, 04:04:08 pmWell that shows that I have been out of the real hardware game to long. I knew blue LEDs had higher forward voltages, but not that there are new types of green that have higher forward voltages.Thanks for the bringing my knowledge up to par a bit

author: borjam
author_rank: Unknown
timestamp: September 20, 2022, 04:37:06 pm
content: Quote from: Howardlong on September 17, 2022, 11:36:22 pmI remember a guy in the early 90's who asked for help because his server used to crash on heavy I/O. I went there and I pointed out that there was no SCSI terminator. He said "it works without it".I answered "OK! And I left".

author: rdl
author_rank: Super Contributor
timestamp: September 20, 2022, 04:39:50 pm
content: I didn't watch the video. Did the LED actually get get mentioned or described? Because you can get LEDs with internal resistor to run from a specific voltage. I have some and have to mark them with a Sharpie to tell them from regular LEDs. They're really useful for breadboarding.

author: fourfathom
author_rank: Super Contributor
timestamp: September 20, 2022, 04:41:14 pm
content: Seems appropriate:

author: tooki
author_rank: Super Contributor
timestamp: September 20, 2022, 04:53:34 pm
content: Quote from: pcprogrammer on September 20, 2022, 04:27:29 pmMy pleasure!The other thing about such LEDs is that they'reinsanelybright. The "standard" 20mA for indicator LEDs is blindingly bright with those things. As a pure indicator for indoor use (i.e. similar brightness to a 1980s LED at 20mA), I often run them at 1mA or less! (For example, running one on 5V using a 10K resistor, providing roughly 200uA.)

author: deadlylover
author_rank: Frequent Contributor
timestamp: September 20, 2022, 04:57:00 pm
content: Come on guys it's a freaking YouTube tutorial video for beginners, not an ISO17025 procedure or whatever.Sheesh I'm surprised the anti-static gang hasn't shown up yet.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 20, 2022, 05:21:52 pm
content: Quote from: tooki on September 20, 2022, 04:53:34 pmYeah, I have found that out with smd leds. These things do not need a lot of current to be bright.

author: fourfathom
author_rank: Super Contributor
timestamp: September 20, 2022, 06:02:53 pm
content: Quote from: pcprogrammer on September 20, 2022, 05:21:52 pmI run my on-board indicators (red, 0603 SMD, 1.8V) at 3.3V, 10K resistor (590 uA) and they're still too bright.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 21, 2022, 09:49:40 am
content: Quote from: eti on September 18, 2022, 11:25:37 pmQuote from: eti on September 20, 2022, 03:34:52 pmWhy is it ok for you to call us buffoons and idiots, and not ok for us to criticize Dave Plummer.Reverting to name calling makes you no better then the rest.

author: Howardlong
author_rank: Super Contributor
timestamp: September 21, 2022, 09:51:35 am
content: Quote from: deadlylover on September 20, 2022, 04:57:00 pmExactly, it's a tutorial for beginners.As I mentioned earlier, when you're a noob following a step by step guide, you want uncertainties to be minimised because you don't have the experience to prioritise possible reasons why the blinky failed to work.As a noob, when it fails, you'l be questioning everything, including whether or not you blew up the LED or the GPIO because there wasn't a resistor.Why unnecessarily add that additional uncertainty?QuoteThat's quite some hyperbolic projection! I don't think anyone else is suggesting it is.As I already stated in my OP, I find Dave Plummer's videos interesting and I often learn things: he is, after all, an astute and experienced programmer, and we're of similar vintages. He can certainly run rings around me in his C# programming, although as systems programmers writing C and assembler we're probably on roughly level pegging. But he is a software guy. I do both software and hardware, I would never do a blinky tutorial without current limiting, usually a resistor: it's something I learned in 1976 when I was 11 when the vast majority of indicators were either neon or incandescent.

author: deadlylover
author_rank: Frequent Contributor
timestamp: September 21, 2022, 11:54:10 am
content: Quote from: Howardlong on September 21, 2022, 09:51:35 amPut yourself in a beginners shoes, now you have to worry about a resistor. How many do I need, what size, type, does it even matter? Oh god on eBay they only sell hundreds in a kit, I don't need that many jeez maybe I'll pass on this.There is value in making a piece of content as accessible and digestible as possible. Heaven forbid they blow something up and will have to engage with the community or dig deeper into why it didn't work. They might actually learn some troubleshooting too.It's fine, really. We don't need to be gatekeeping a hobby.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 21, 2022, 12:15:50 pm
content: If I was a beginner with not a lot of money to spend on my hobby, I would be very pissed if my 35 dollar board went poof because someone showed in a youtube video that it is ok to stick a LED directly on to the pins without explaining why it works for him.And here it seems to work, but what if it is for something more expensive and with bigger risk of going wrong, but hey it works for him, so it should work for me.It is about the principle. But that is youtube for you, it is so open there is no check on validity of what is shown, and that leads to chaos on some occasions.And that might be far fetched, but it is what is happening in this world with social media as is. People posting something on facebook about a party and others think it is an invite for them even they don't know the person in question. Happened in the Netherlands. Riots start due to things similar like this.Or people get killed because someone on youtube thought it was a good idea to post a video about doing some dangerous stunt, and people start mimicking it, not knowing what can go wrong.

author: Howardlong
author_rank: Super Contributor
timestamp: September 21, 2022, 12:51:46 pm
content: Quote from: deadlylover on September 21, 2022, 11:54:10 amI regularly do when viewing his videos on setting up software dev environments just like this one.I'd far rather know I should be putting a resistor in than worry about whether I have a busted GPIO or LED.QuoteGive a value, or a range of possible values, it's really not that hard.QuoteIf I could do this when I was eleven over 45 years ago, and I could only afford to buy resistors one at a time with pocket money when they were, in today's terms, $2 each, then I'd say that's hardly a chore.If you look at the other stuff Dave was using, like the breadboard, the Pi GPIO breakout board, and the LED itself, it's quite the stretch to suggest that a resistor is going to be a problem. Furthermore, IME the kits that include these GPIO breakout boards & breadboard also include a selection of LEDs and resistors, including 220 ohm resistors specifically designed to be used for LED current limiting.QuoteYou seem to be contradicting yourself. You want it to be "accessible" so they're not put off, but at the same time you want them to "dig deeper".And when they do engage with the "community" I guarantee that the #1 answer is going to be "Where's your resistor?".QuoteThat's quite a stretch, in anybody's book. If I could figure out that a resistor's needed when I was eleven, and purchase one, then I hardly think it's "gatekeeping".

author: sokoloff
author_rank: Super Contributor
timestamp: September 21, 2022, 01:39:28 pm
content: I'm trying to guesstimate in my head the answer to: "Among beginners wiring up their first breadboard Arduino or Raspberry Pi blink an external LED project, what percentage of them use a dropping resistor?"I'd be pretty surprised if it was over 80% and shocked if it was over 95%.Then, trying to guesstimate the answer to "Among people wiring an external LED across a Raspberry Pi GPIO pin and ground and blinking it, what percentage of those will result in damage to the Pi?", I'd be shocked if the answer was over one in a thousand.

author: ledtester
author_rank: Super Contributor
timestamp: September 21, 2022, 02:02:23 pm
content: Quote from: pcprogrammer on September 21, 2022, 12:15:50 pmA user comment from the video:

author: Howardlong
author_rank: Super Contributor
timestamp: September 21, 2022, 07:05:22 pm
content: Quote from: ledtester on September 21, 2022, 02:02:23 pmThat's ~40mW dissipated on each port's mosfet trying to be a resistor. Bear in mind that a typical 0603 resistor is rated at 63mW and the mosfet driver transistor is several orders of magnitude smaller...Each port is rated for 16mA max, 51mA total aggregated across all ports. The ports are configurable down to 2mA, but this is designed for limiting switching noise by limiting slew rates, not for driving LEDs.I measured 27mA with a red LED with default settings. Others have measured over 200mA shorted (I'm not going to try), so so much for being "current limited" to 16mA.

author: langwadt
author_rank: Super Contributor
timestamp: September 21, 2022, 07:15:31 pm
content: Quote from: Howardlong on September 21, 2022, 07:05:22 pmand I believe the variable drive strength is implemented by each pin being made up of several parallel mosfets and only turning on some of them

author: coppice
author_rank: Super Contributor
timestamp: September 21, 2022, 07:34:27 pm
content: Quote from: ledtester on September 21, 2022, 02:02:23 pmWhere do people get the idea there is current limiting. Are they confusing this with variable drive strenth?

author: fourfathom
author_rank: Super Contributor
timestamp: September 21, 2022, 07:37:22 pm
content: Quote from: coppice on September 21, 2022, 07:34:27 pmWell, it is current limiting, of a sort. This doesn't make it right, or safe for the IO pin.

author: coppice
author_rank: Super Contributor
timestamp: September 21, 2022, 07:43:46 pm
content: Quote from: fourfathom on September 21, 2022, 07:37:22 pmAny wire is a current limiter of a sort, unless its superconducting. Some people are making comments like there is true current control on these pins, rather than a selection between vague and temperature dependant impedances.

author: fourfathom
author_rank: Super Contributor
timestamp: September 21, 2022, 07:51:07 pm
content: Quote from: coppice on September 21, 2022, 07:43:46 pmOf course, and that was my point. The current is limited by the Rds (etc) of the output driver. Not a great current limiter, but not a piece of copper wire. Not worth arguing about -- he should have used a resistor.

author: SiliconWizard
author_rank: Super Contributor
timestamp: September 21, 2022, 08:11:09 pm
content: Uh yeah. You could discuss current limits and wire resistance to no end, just because, but it appears completely pointless here IMHO.What's wrong with what this guy is conveying here is that 1/ it's just not how you should teach beginners, if that was at all the intended purpose - sane basics are better than ugly hacks especially since it would have not taken more than a few seconds to explain it and add a fricking resistor on a breadboard, and 2/ with this kind of "I dare you to convince me otherwise" attitude, it just sounds like someone full of themselves, laking minimum humility on a topic they don't fully grasp, and it also sounds like the typical "software guy" (the stereotype) whose mantra is "but it works on my own machine".So for those 2 reasons, even if that was a detail in the video, it's just bullshit conveying the wrong ideas. And as someone else mentioned, it's not about the guy who I don't know, it's all about what he *says*.Now for the last thought, as he is apparently a seasoned Youtuber with fancy equipment, let's not ignore the fact that he possibly said that *exactly* knowing that it would trigger a lot of reactions, just to get the buzz and maximum number of views. I would seriously consider this here. That may all have been right on purpose just to generate more traffic. And it appears to work. Yes, Youtube is a sad game but it's just a business.

author: tggzzz
author_rank: Super Contributor
timestamp: September 21, 2022, 09:29:02 pm
content: Quote from: SiliconWizard on September 21, 2022, 08:11:09 pmPrecisely, on all pointsClickbait. It is why it is not worth my time to watch yootoob vids unless I knowin advancethe video gives mevisualinformation that Ican't get by other means.The "convince me otherwise" is a classic charlatan ploy.No, if You make extraordinary claims, it is not up to Me to disprove them. Rather, it is up to You to prove the claims. That's the way science and engineering works. (Political, religious and disreputable shills are the opposite).

author: james_s
author_rank: Super Contributor
timestamp: September 21, 2022, 10:36:27 pm
content: Quote from: coppice on September 21, 2022, 07:34:27 pmProbably. Really though I don't think it's fair to rip on people for not knowing these things, especially people who are not professional engineers with backgrounds in hardware. You know about it, I know about it, a large percentage of the people on this forum probably know about it, but I would bet that most software developers are clueless. That doesn't make them idiots, that just isn't their area of expertise. There are lots of things that are not really proper or advisable but which will typically work, this is IMO one of those things.

author: tooki
author_rank: Super Contributor
timestamp: September 22, 2022, 06:36:59 am
content: FYI, I grabbed a standard 5mm, 520nm emerald green LED out of my LED bin last night and hooked it up to my bench supply. It drops 3.1V at 20mA, right in the middle of the “3.0-3.2V” rated Vf. At 3.3V, it was at 30mA. So while that’s certainly over what the GPIO is rated for, at least it’s notgrotesquelymore. Of course, I wouldn’t recommend running it that way, between it stressing the MCU and LED and being retina-searingly bright. But running one LED that way is not going to instantly fry anything. But several at once is really asking for trouble.

author: wraper
author_rank: Unknown
timestamp: September 22, 2022, 11:01:39 am
content: Quote from: tooki on September 22, 2022, 06:36:59 amBut GPIO is not some ideal voltage source. Generally should consider it as a few tens of ohms resistor in series with that LED. Also it seems Raspberry Pi output drive strength can be programmed, and by default it's not the maximum strength.http://www.mosaic-industries.com/embedded-systems/microcontroller-projects/raspberry-pi/gpio-pin-electrical-specificationsQuote

author: Psi
author_rank: Super Contributor
timestamp: September 22, 2022, 11:03:42 am
content: I don't care, use a resistor or don't use a resistor.But if your LED burns out or your GPIO fails don't come crying to me unless you used the correct resistor.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 22, 2022, 11:15:00 am
content: Quote from: wraper on September 22, 2022, 11:01:39 amIt is right there in the quote you gave. I read that article and near the end it states:Quote

author: xrunner
author_rank: Super Contributor
timestamp: September 22, 2022, 11:26:38 am
content: The guy is probably laughing his ass off now if he sees this thread. He even infected an electronics forum with his joke!

author: wraper
author_rank: Unknown
timestamp: September 22, 2022, 11:31:38 am
content: Quote from: pcprogrammer on September 22, 2022, 11:15:00 amAs if I did not read that sentence. But it changes the drive strength. Which means higher impedance which very likely is perfectly enough to limit current through the LED to acceptable level. You can even calculate the pin impedance and actual current through the LED with known Vf and drive strength set, as Drive strength is set for current at the border of acceptable logic level which are VIL=0.8V and VIH=1.3V AFAIK. So with default drive strength with LED connected between 3.3V and GPIO the typical current should be below 8mA if Vf is >2.5V.EDIT: figures taken out of this paperhttps://matt.ucc.asn.au/mirror/electron/GPIO-Pads-Control2.pdfbut I suspect VIL=0.8V and VIH=1.3V are not usable for this since naming and figures suggest input levels. And I did not find definite answer in official documentation.

author: thinkfat
author_rank: Unknown
timestamp: September 22, 2022, 01:30:57 pm
content: Well, I'm sure Dave has an IR camera around somewhere. Just suggest to him using it for visualizing the extra power dissipation of the main SoC. It should be quite noticeable. Even if not, I believe the Raspi SoC has a bandgap somewhere on the silicon die that you can used to measure the die temperature. If I'm not mistaken, there's even a Linux driver included. I expect a noticeable increase once the LED is switched on. If that isn't convincing...

author: PlainName
author_rank: Super Contributor
timestamp: September 22, 2022, 03:27:08 pm
content: Quote from: RPi datasheetI am struggling to understand the basis of this. Let's suppose you have the output programmed to the example 2mA, and to ensure more tha 2mA is not drawn from the pin (as they state) you put a resistor or other current-limiting device in the circuit. What's the point of programming it for 2mA in the first place?

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 22, 2022, 03:31:21 pm
content: What I understand from it is that it has to do with the slew rate. 2mA setting will be slow and 16mA fast. It has nothing to do with actual current limiting, and more with the output impedance.

author: PlainName
author_rank: Super Contributor
timestamp: September 22, 2022, 03:41:54 pm
content: Sure, but wouldn't the slew rate be managed by current limiting externally? I guess it would with a resistor but not with something more steppy. Like, for instance, an LED

author: wraper
author_rank: Unknown
timestamp: September 22, 2022, 03:56:40 pm
content: Quote from: pcprogrammer on September 22, 2022, 03:31:21 pmBy adding impedance current is reduced. But it's not a sort of current limiting with feedback loop so it measures actual current to limit it to certain value.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 22, 2022, 04:10:55 pm
content: In this pdfhttps://matt.ucc.asn.au/mirror/electron/GPIO-Pads-Control2.pdfwraper referred to it shows it is using different drivers in parallel to modify the drive strength. With all drivers enabled it will charge the capacitance it sees on the pin faster due to lower resistance in the driver and thus the signal will rise faster.I believe this kind of setup is used in other MCU's and FPGA's too.

author: PlainName
author_rank: Super Contributor
timestamp: September 22, 2022, 05:08:24 pm
content: I'm not sure it makes things clearer!"Why don't I set all my pads to the maximum current!"It's basically saying that if you did and you put 16mA on each pin you'd fry the IO system. Well, yes, but if you set it to 2mA and do the same you'd still fry it. As a designer you'd know not to exceed the spec, and being able to set a current which doesn't actually achieve the aim of protecting from accidental overloads seems kind of pointless.AFAICS, it would be useful if you have a (small) capacitive load where you want or need to limit inrush, but surely an external resistor would be safer (in the sense that it would protect against 'software guys' programming the stuff incorrectly).

author: Howardlong
author_rank: Super Contributor
timestamp: September 22, 2022, 05:14:54 pm
content: Quote from: dunkemhigh on September 22, 2022, 03:27:08 pmTo reduce high current transients and transient noise. It can be a quite effective solution if you have an application that's failing EMC tests for example on a higher speed bus: it might save you a board re-spin if the hardware and software guys talk to each other ;-)In some situations, it's important to have specific rise and/or fall time ranges to other devices, and this can provide a possible solution in these cases but it's a bit of a hack IMO.I've also heard of a potential urban myth using it to provide a somewhat adjustable impedance match, although as it's not really characterised I'm sceptical of its use in this situation other than as a hack.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 22, 2022, 05:31:47 pm
content: Quote from: dunkemhigh on September 22, 2022, 05:08:24 pmLike Howardlong wrote it reduces noise when frequent switching is done. The capacitive load you can think of is the gate capacitance of a MOSFET, and yes even then a small series resistor can have its use. I'm no expert in this field though.And yes in some way it is good practice to protect the hardware from abuse by a programmer. That is why I encourage at the minimum embedded programmers to learn some basics of hardware. I started with hardware at a young age before getting schooled in it and learned about assembly programming in school. Did several years in embedded hardware and software, but with more and more software jobs coming my way I went into al sorts of programming from printer drivers to web based information systems.Now retired I'm back on embedded and tinkering with FPGA's

author: tggzzz
author_rank: Super Contributor
timestamp: September 22, 2022, 06:48:06 pm
content: Quote from: xrunner on September 22, 2022, 11:26:38 amIf that was his objective, there is an old word to describe it: trolling.

author: pcprogrammer
author_rank: Super Contributor
timestamp: September 22, 2022, 06:53:40 pm
content: And as usual we were happy to oblige

author: SiliconWizard
author_rank: Super Contributor
timestamp: September 22, 2022, 08:09:26 pm
content: Quote from: tggzzz on September 22, 2022, 06:48:06 pmGiven the means he devotes to his channel, I'm still convinced it's more for the traffic it's generated rather than just pure trolling for the sake of having a laugh. Come on. Are people this deluded about what runing a successful YT channel means?

author: Infraviolet
author_rank: Super Contributor
timestamp: September 22, 2022, 09:49:07 pm
content: Routinely put a series resistor with a Pi's GPIO?Actually I'd routinely put a resistor from the gpio to the base of a BJT, then the emitter to gnd and the collector through the LED and another resistor to Vcc. Atleast for anything more long term than a breadboard concept test (I don't think breadboards are the devils work, they are good for trying something out before you solder up a proper one, they are not right for anything you consider finished or permanent) or anything where you want the choice of being able to run the LED with more current than the GPIO could handle.How do I vote for this in the poll?

author: tggzzz
author_rank: Super Contributor
timestamp: September 22, 2022, 11:40:08 pm
content: Quote from: SiliconWizard on September 22, 2022, 08:09:26 pmI'm not deluded, because I have zero idea. And near zero interest in channels or yootoob vids - too damn slow compared to reading.

author: John B
author_rank: Frequent Contributor
timestamp: September 23, 2022, 12:42:17 am
content: It's probably a bit late to say now, but my original contention is that the RPi has a lead time of at least 1 year in most places that I can see, and the few that are in stock elsewhere are going for hundreds over their RRP.Why would anyone want to risk any damage to one just to skimp on a fraction of a cent resistor?If the RPi cost $1 and was in stock everywhere, I don't think the argument would be the same

author: SiliconWizard
author_rank: Super Contributor
timestamp: September 23, 2022, 02:13:52 am
content: Anyway. Resistance is futile!

author: pgo
author_rank: Regular Contributor
timestamp: September 23, 2022, 02:25:20 am
content: Hi @wrapper,Just some comments on your calculations:The output is designed to be able to supply at least the drive current selected while providing valid digital levels. It is likely to be able to provide considerably more than that current value. This is equivalent to saying that the output will be designed to provide a voltage that is guaranteed to exceed the logic level required at that current. Your calculations assume the worse case for meeting the requirement which is unlikely to be the case.In your calculations you have taken the minimum to be Vih (assuming driving high with a sinking load). The actual value used in the chip design would be Voh since this is the specification for outputs. This may seem strange but it is relevant spec i.e. For an output you have to use a drive spec.In any case, I agree that it is unlikely to exceed the Io(max) of 16mA.Anyway the above it irrelevant for a properly designed circuit. Unless the pin has been specifically design to be current limited (which the RPi aren't) you should use a series resistor:It moves the power dissipation from the MCU to the resistorWhen calculating LED currents you can use well defined Voh(min)/Vol(max) values to calculate a meaningful and more consistent LED currentIf you use different colour leds or even different batches it reduces the variations. It also allows you to balance brightness between different colours.The 'complexity' of a series resistor is trivial - I can't see any justification to not include one even in hobby circuits. I don't believe that there is anyone who can't handle this level of complexity.Some passing comments (unrelated to your post):I am currently using a microcontroller that has GPIO pins that provide both multiple levels of drive current and slew rate control. While the interact they are not the same thing and would not be implemented in the same fashion.Drive capability relates to maximum safe capabilities while slew rate is rate of change. You can change the latter by modifying the rate of change of the drive to the output stage (e.g. using feedback or capacitance) without affecting (steady-state) drive strength.Finally, is the original YT worth all this aggravation? Yes - you shouldn't intentionally mislead people or claim technical knowledge that is absent. Besides it doesn't take much effect

author: wraper
author_rank: Unknown
timestamp: September 23, 2022, 07:08:08 am
content: Quote from: pgo on September 23, 2022, 02:25:20 amI didn't say it's the proper way to do it. Also I said I doubt those figures are correct without anyone pointing me that. What I meant is that not adding a resistor is not as preposterous as many posters in this thread make it seem. More like saying their arguments are flawed rather than agreeing with with Dave in the video. I personally would not recommend not using a resistor. However Dave very likely has GPIO current well below 16mA maximum rating and nothing bad will happen with his Raspberry Pi.

author: nigelwright7557
author_rank: Frequent Contributor
timestamp: September 25, 2022, 12:35:49 am
content: Quote from: coppice on September 18, 2022, 12:31:33 amI am an electronics and software engineer.I was busy so they took on a software guy to work on a project which was a Z80 based system with keyboard and screen.For the life of him he couldnt get the keyboard to work reliably.In the end he resorted to reading keyboard 100 times and took most often result.I was asked to look at it after he had moved on.Rookie mistake in that he sent out a row address then immediately read back column data.The keyboard is on a long ribbon cable so there is a transmission delay.A single "NOP" fixed the problem.