Activity for Lundin
Type | On... | Excerpt | Status | Date |
---|---|---|---|---|
Edit | Post #289392 | Initial revision | — | over 1 year ago |
Question | — |
How to deal with design review questions? A while back someone suggested that we added a section for reviews to the site - How about a new section for code reviews? From that meta thread we gathered that: - There seems to be community consensus that code review is perfectly fine and on-topic for this site, given that the topic is about mi... (more) |
— | over 1 year ago |
Edit | Post #289363 | Initial revision | — | over 1 year ago |
Answer | — |
A: How to request a mass-change in capitalization for tags? Apart from correcting capitalization, which is a valid change, I think you are at the same time doing a lot of subjective changes to certain tags and it can get very intrusive on the site. I don't agree with a lot of the tag changes proposed here. First of all, please note that there is no criter... (more) |
— | over 1 year ago |
Edit | Post #289280 |
Post edited: |
— | over 1 year ago |
Edit | Post #289284 | Initial revision | — | over 1 year ago |
Answer | — |
A: Tag naming guidelines. I agree with everything said. I didn't really consider until now that Codidact (unlike Someplace Else) supports case-sensitive tagging. So in addition, perhaps add a note regarding the following: Capitalization of scientific units and quantities/prefixes should always be in accordance with the SI ... (more) |
— | over 1 year ago |
Comment | Post #289280 |
@#52991 Yeah it does also make sense to have the tags for very fundamental physics questions. "What is voltage?" or whatever (which may be more suitable for https://physics.codidact.com/ anyway). I think the key here is not to remove the tags, but to have active tag moderation and replace tags with s... (more) |
— | over 1 year ago |
Edit | Post #289280 | Initial revision | — | over 1 year ago |
Answer | — |
A: Tags about quantities: should we have them? Using `voltage` as a way of saying "I'm dealing with voltage here" is pointless - most electronics questions do. I think the `voltage` vs `current` tags are however relevant in the case when you need to be more specific about which one of the two that applies. For example if you have a digital ... (more) |
— | over 1 year ago |
Comment | Post #289074 |
This makes me recall the time when the biggest Swedish newspaper "DN" reported that Ericsson telecom had production problems due to lack of silicone. Some swede had translated the English term _silicon_ into the Swedish word _silikon_, meaning silicone. Naturally Ericsson were lacking silicon, not si... (more) |
— | over 1 year ago |
Comment | Post #289054 |
A submarine ought to be a pretty perfect RF environment with no unknowns. These controllers likely transmit on the 2.4GHz band and you'll know about every other such device present (if any). You are pretty much sitting inside a Faraday cage. Wired communication can actually be more noisy, because gro... (more) |
— | over 1 year ago |
Edit | Post #288710 | Initial revision | — | over 1 year ago |
Answer | — |
A: Titanic submarine control considerations Coming from a background of safety-related applications and industrial control systems, with some maritime applications experience, I could offer a few insights. These kind of game controls are literally only good for one single thing: button ruggedness. They need to withstand some pretty brutal t... (more) |
— | over 1 year ago |
Comment | Post #288550 |
@#36396 I can't really answer the question as whole and I haven't used most of these standards either, so I have no idea if it is correct enough to be answer. (more) |
— | over 1 year ago |
Comment | Post #288550 |
IEC 60364-5-52:2009 looks like it might be relevant for the actual calculation, though I haven't used it myself (doesn't seem harmonized under EU LVD Directive either). Regarding insulation there are plenty of application-specific standards, most notably the UN "ADR" directive regarding Carriage of D... (more) |
— | over 1 year ago |
Comment | Post #288404 |
I'd add a decoupling cap to the +12V line in addition to the TVS. The TVS will take the blow in case of spikes and the cap will ensure that the voltage stays otherwise stable. Something along the lines of 100nF X7R 50V will probably work ok. (more) |
— | over 1 year ago |
Comment | Post #288163 |
@#60399 The reason why one should avoid high ohm pull resistors is because RF energy from external spurious emissions (radiated or conducted) will be present and with 5V/1Mohm you only need >5uA to pull the line in the opposite direction. There's a big design difference between low power consumer app... (more) |
— | over 1 year ago |
Comment | Post #288163 |
Oh and 600W peak pulse is too weak TVS for automotive, you need 1500W. I don't remember which exact standard that requires this, but I do remember failing EMC testing once for this very reason. (more) |
— | over 1 year ago |
Comment | Post #288163 |
@#60399 So why did you ground pin 12, isn't that one to be used (ie tied to pin 8/input)? Do you intend to use this as a "watchdog" or as some "555 timer" or something else? (more) |
— | over 1 year ago |
Comment | Post #288163 |
@#60399 I mean the supply voltages. Placing TVS only makes sense on inputs/outputs, not in the middle of the circuit - everything after the voltage regular is to be regarded as relatively clean. You absolutely do need to have decoupling caps there however, 100nF close to the supply pin of the IC. Als... (more) |
— | over 1 year ago |
Comment | Post #288163 |
@#60399 Well that's a weird schematic. Why do you have zener diodes where one would expect to see capacitors? Are you running this from some raw battery voltage or something? Also if you have a pull-down on the P MOSFET, it will conduct as default, is this intentional? What are the voltages? (more) |
— | over 1 year ago |
Comment | Post #288163 |
You should be getting 0V, please post your schematic. Also don't use some horrible scanned datasheet, I found better ones here: https://www.datasheetcatalog.com/datasheets_pdf/C/D/4/0/CD4047.shtml. The Fairchild one shows how the trigger, clock and outputs act digitally (p7). (more) |
— | over 1 year ago |
Comment | Post #288118 |
@#60091 No, drain should be to the left, that's the whole trick and what the whole design is based on. It is purposely mounted backwards. The body diode should be included in the symbol to make it even clearer though. (more) |
— | over 1 year ago |
Comment | Post #288118 |
@#60091 It's more like: you get ESD protection for free. As for protecting the MOSFET I'm no expert but I believe the gate-source voltage is what might damage it and if so the TVS after the MOSFET does that. Of course it helps if the MOSFET is also rugged. I've used a similar polarity protection circ... (more) |
— | over 1 year ago |
Edit | Post #288120 |
Post edited: |
— | over 1 year ago |
Edit | Post #288120 |
Post edited: |
— | over 1 year ago |
Edit | Post #288120 | Initial revision | — | over 1 year ago |
Answer | — |
A: MOSFET protection with TVS: at the source pin or at the drain pin Using a P FET for polarity protection like this means that in case you flip + and -, the gate will be inactive, meaning that GND which is now connected to drain will get disconnected - no current will flow. If you put a TVS before the MOSFET, you cancel this out. Instead the TVS will short + and -... (more) |
— | over 1 year ago |
Comment | Post #288118 |
@#60311 A regular zener is too slow to handle transients and ESD. The zener only protects against overvoltages. (more) |
— | over 1 year ago |
Comment | Post #288107 |
In that case you really need to specify what the voltage source is and why it would be vulnerable to such. (more) |
— | over 1 year ago |
Comment | Post #288107 |
The circuit is so artificial and abstract there's no telling what a cap would be good for. Mostly caps directly on the supply are there to act as "bulk caps", stabilizing the voltage coming from the supply. (more) |
— | over 1 year ago |
Edit | Post #288026 | Initial revision | — | over 1 year ago |
Answer | — |
A: Using arc trace routing instead of 45 degree trace routing The 45° routing makes it easier to route multiple parallel traces across the PCB - I would say that's the main reason why they are so popular. Whereas 90° turns of multiple parallel traces next to each other is a big no-no, since that may lead to crosstalk. And routing multiple parallel traces as arc... (more) |
— | over 1 year ago |
Comment | Post #288011 |
It might be common that students have to solder the boards themselves. And they (unfortunately) don't teach soldering in EE classes. Through-hole is the only sensible choice if you have zero experience with soldering. Apart from that, I agree that SMD layouts and 4 layer boards is the way to go for l... (more) |
— | over 1 year ago |
Comment | Post #288010 |
@#54288 It's standard practice to always put a 100nF cap close to the supply pin on every IC on the board (unless the IC datasheet comes with specific recommendations). Particularly so on 2 layer boards since you'll have much worse EMC characteristics without a ground plane. (more) |
— | over 1 year ago |
Comment | Post #287773 |
Any idea why they added R104 and R105? Looks very strange. That they are in parallel is probably just some Bill of Material optimization(?) but why limit the coil current way below the spec? (It's 30mA for this relay.) (more) |
— | almost 2 years ago |
Comment | Post #287689 |
If the accuracy isn't important, why not just pull a number like 1ppm out of a hat and be done with it? And there are numerous valid reasons why the accuracy would be important. For example you could just hook a MCU PWM output to a RC filter and there you go - it's a sine wave. (more) |
— | almost 2 years ago |
Comment | Post #287689 |
@#57886 As with everything-electronics, you need to specify a necessary accuracy (in frequency and amplitude both). There exist no electronic components without error margins and a specified accuracy. Just as in mechanics there are no exact lengths but only lengths with allowed tolerances. (more) |
— | almost 2 years ago |
Comment | Post #287646 |
@#52938 Yikes, you should never use autorouting for... pretty much any purpose, but certainly not for high speed communication lines. Olin's theory of crosstalk being the culprit sounds quite likely. Or in case of 2 layers, maybe ground problems. A picture of the PCB copper layers would be helpful. I... (more) |
— | almost 2 years ago |
Comment | Post #287554 |
On the first picture you trigger on ch1. On the second you also trigger on ch1, but on a different signal. Meaning that you are viewing that signal at different points in time. Since we have no idea what signal this is, it is hard to say anything else. Maybe there are 6 pulses at some point in time b... (more) |
— | about 2 years ago |
Comment | Post #287480 |
"This is the GND where the shield/metallic enclosure should be connected through a low-impedance connection as well." This seems counter-intuitive. The sole purpose of a shield is to catch and conduct noise down to ground. So in case of external EMI, this would then route that EMI into the "clean gr... (more) |
— | about 2 years ago |
Comment | Post #287400 |
@#52981 I never claimed that the CRT should be doing all these things for you. But it needs to provide a location where you can place such code. For example by exposing the reset vector in a separate file so that it can be changed by the application program without having to modify the CRT code itsel... (more) |
— | about 2 years ago |
Comment | Post #287400 |
@#36396 Well in case of .data/.bss initialization, the compiler by default has to perform it because it claimed to be C standard compliant. Regardless if the user asked for it or not. And so they end up with a solution which is standard compliant but unlikely to be of use to any single user. Or in ca... (more) |
— | about 2 years ago |
Comment | Post #287400 |
On classic microcontrollers you can often just "hack" the CRT by replacing the reset vector with a custom one, execute all critical code, then call the CRT and let it do its thing, and then the CRT eventually calls main(). (more) |
— | about 2 years ago |
Comment | Post #287400 |
@#36396 Yeah sure but the normal use is: you wish to use the watchdog, you wish to use the clock quartz which you provided, you wish to enable LVD/brownout detect, you wish to set GPIO port directions and pull resistors etc etc. I once wrote a summary on how to do this correctly here: https://stackov... (more) |
— | about 2 years ago |
Comment | Post #287400 |
In case of mid- to high-end MCUs that provide data cache, the `.data`/`.bss` initialization will get carried out much faster if done by the CRT than if done by individual application modules. This is simply because the MCU can utilize the cache much more efficiently if chewing to through a chunk of c... (more) |
— | about 2 years ago |
Comment | Post #287400 |
It should be noted that in case of C++, default constructors of objects with static storage duration will also get called by the CRT, adding even more execution time to start-up. C++ has very intricate rules for initialization, especially past C++11, so the standard compliant start-up time in C++ mig... (more) |
— | about 2 years ago |
Edit | Post #287400 | Initial revision | — | about 2 years ago |
Answer | — |
A: How to perform initialization of static storage variables in embedded systems? Things happening/things we want to happen before main() is called: The code executed before `main()` is often referred to as "the C runtime (CRT)" or just "start-up code". This code is typically provided by the microcontroller-specific libraries and among other things, it initializes `.data` and `... (more) |
— | about 2 years ago |