Horrible Schematics - Page 1
Forum section: electronics / general

author: Warsp
author_rank: Contributor
timestamp: August 03, 2025, 08:59:37 pm
content: Found these beauties when I was going through my stuff the other day. I created the first one in 7th grade, and it is supposed to be a 16-bit adder, in case you couldn't tell. Second one was my take on EEVBLOG's uSupply, and it is probably equally as bad as the first for different reasons. There has to be at least a dozen mistakes made in it depending on how you count.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 03, 2025, 09:30:31 pm
content: Wellll, not to ding your good-faith efforts here, but my reason for hating that 2nd schematic is that it's in the "everything in a separate little section" style, where you have to mentally connect everything together.The first one is a mess, sure, but still, I could probably construct the circuit from it if I had to.Here's a circuit I successfully built from a somewhat similarly messy schematic, pretty much out of unavoidable necessity because of all the interconnections. This was solderless breadboarded, and the wiring took a while but was accomplished, surprisingly, without any boo-boos.Don't really know how else one would draw something like this ...

author: langwadt
author_rank: Super Contributor
timestamp: August 03, 2025, 09:45:48 pm
content: Quote from: Analog Kid on August 03, 2025, 09:30:31 pmyou schematic is much much better, it has the pins on the parts grouped logically and labeled. The first schematic is just a mess of wires and parts you have no idea what is or how they are connect unless you look at datasheets at the same time

author: John Coloccia
author_rank: Super Contributor
timestamp: August 03, 2025, 09:55:16 pm
content: Honestly, the one from 7th gradeYou worked with what you had, with no training. Ain't nuthin' wrong with that.The second one isn't any worse than things I see from professionals. I wouldn't personally think it's bad. WE personally would organize it differently, and it would be neater and just more visually pleasing (because we think that's important), but it's nowhere near what I would consider to be bad. I'm just talking preference now.We've seen some very bad schematics...

author: Warsp
author_rank: Contributor
timestamp: August 03, 2025, 10:03:40 pm
content: I honestly don't fault myself for making these like this since I didn't know that much at that point. I just thought some of the things I did were pretty amusing, like using kilo-microfarads as a unit and choosing 47mA as a suitable LED current.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 03, 2025, 10:05:08 pm
content: Well, I didn't look at the actual circuit. Thing could blow up first time you power it up for all I know.

author: langwadt
author_rank: Super Contributor
timestamp: August 03, 2025, 10:05:48 pm
content: Quote from: Warsp on August 03, 2025, 10:03:40 pmyou were way ahead of the AI curve in making up stuff

author: John Coloccia
author_rank: Super Contributor
timestamp: August 03, 2025, 10:09:36 pm
content: Quote from: Analog Kid on August 03, 2025, 09:30:31 pmWe'd use net names for the connections. On the one hand, a little tedious, but easier to reason about when reviewing. And way easier to correct mistakes.

author: tom66
author_rank: Super Contributor
timestamp: August 03, 2025, 10:19:50 pm
content: Worst ones I know were the early VESTEL power supplies for their LCD TVs, dear god, try deciphering this...

author: John Coloccia
author_rank: Super Contributor
timestamp: August 03, 2025, 10:22:27 pm
content: Quote from: tom66 on August 03, 2025, 10:19:50 pmSee, now that's a actual bad schematic.

author: langwadt
author_rank: Super Contributor
timestamp: August 03, 2025, 10:26:43 pm
content: Quote from: John Coloccia on August 03, 2025, 10:22:27 pmthe only reason I can think of for making the pins on parts in number order is that the schematic is meant for debugging and repair

author: tom66
author_rank: Super Contributor
timestamp: August 03, 2025, 10:32:55 pm
content: Quote from: John Coloccia on August 03, 2025, 10:22:27 pmI especially like that the guy drawing the schematic was too lazy to draw the PFC controller part, so he put an 8 lead p-channel FET in its place and connected it exactly as the PFC controller would be connected.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 03, 2025, 10:42:37 pm
content: Quote from: John Coloccia on August 03, 2025, 10:09:36 pmJust wondering how that would work in my circuit:So you'd have connections to the two chips on the left all labeled (A, B, C, ...), and likewise the connections to the 4 chips on the right also labeled?I guess that could work. Seems like half a dozen of one and 5.99999 ... of the other.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 03, 2025, 10:46:50 pm
content: Quote from: Analog Kid on August 03, 2025, 10:42:37 pmYeah. They'd be labelled with more descriptive names, but that's how we'd do it. You can get crazy with this and make the schematic a lot LESS readable. There's kind of this element of good taste that comes into it. When is it better to do a direct connection than connect via net name? I don't have a good answer other than good taste and personal preference.

author: CatalinaWOW
author_rank: Super Contributor
timestamp: August 03, 2025, 11:11:22 pm
content: All of the comments on style are apt. BUT. Any schematic is wonderful compared to no schematic. Even when you have to redraw your own it is a tremendous aid to have a "bad" schematic to assist. The false trails they will sometimes lead you down are a minor glitch compared to the aid in finding circuit paths in middle board layers or buried under components with little or no probing access.

author: amyk
author_rank: Super Contributor
timestamp: August 03, 2025, 11:21:41 pm
content: Quote from: tom66 on August 03, 2025, 10:19:50 pmThat's still better than the disconnected one in the OP. IMHO "connecting" parts together exclusively via net names cannot be called a schematic. I've seen that a lot in laptop schematics, and it's extremely annoying when I can't follow the wires but have to search for the net names.

author: Warsp
author_rank: Contributor
timestamp: August 04, 2025, 12:31:57 am
content: Just out of curiosity I decided to try and improve schematic #1 just to see what a readable version of it would look like. This is my take on it.

author: hans
author_rank: Super Contributor
timestamp: August 04, 2025, 09:14:09 am
content: Quote from: John Coloccia on August 03, 2025, 09:55:16 pmYep, the 2nd isn't unusable.The worst offender for me is always when schematics get too crammed such that you can't read the component/net labels and component values anymore. Space is not expensive, use it, there is no logical reason why schematics should fit on 1 page. I don't care if it saves dead trees if ones is going to print it. Scrolling PDFs is free.The biggest benefit of spreading schematics around, is that net labels will show which page number to follow up. It at least helps in following the air gaps between various schematic parts. If I still have to bridge gaps, I will try to arrange blocks in such a way there is clear left-to-right, top-to-bottom (or vice versa) flow to the schematic.This then also ties into creating schematic symbols that prioritize layout visualization over functional schematic visualization. Sometimes you can add some nuances of course, but symbols that draw pins 1-48 in that exact order are completely unreadable to me.On this schematic, there appears to be some cramming around the regulator section, but its not the worst I've seen. An old colleague of mine used to inconsistently flip labels/values around, move them into each other (making both unreadable), have some moved over halfway across the page, etc. Perhaps I'm blaming him too much though, it was also thanks to the crap eCAD tool called EAGLE. It practically made schematics only usable by interacting with the schematic editor.Also there is a fine line between total ambiguity and overengineering. If you lookup schematics from an Apple motherboard, it will specify each resistor to exact detail of power rating, tolerance, package size, etc. I've done that for a while too, and while it may be "complete" or show usage of standardized components, it was quite overkill for the projects I was doing.For hobby use, I will have to make a 0603 part fit onto 0402 pads if I don't have anything else around.For small series, I will ask my assembly house to place a generic 10k 0402 resistor. It will be the cheapest option. Unless I need 0.1% accuracy or other exotic specs then I will specify a MPN. Most reasonable assembly houses will at least tell what kind of base specification they will use for parts (e.g. 1% resistors, X5R caps, etc.)I've never worked on larger series (10k+ volume). I imagine that using standardized parts that are bought with half a dozen reels at a time make more sense. Then sure, go the route which e.g. Apple is following.

author: gamalot
author_rank: Super Contributor
timestamp: August 04, 2025, 10:03:49 am
content: Maybe a little old-school, I prefer to connect the pins of the components with lines and buses.I know that EDA software can easily understand those with only net names, but that would be very difficult for me.

author: BrianHG
author_rank: Super Contributor
timestamp: August 04, 2025, 06:05:27 pm
content: 16 bit full adder, ouch...Needs 32 inputs, 17 outs.Today, I would use a small PLD, which might be easier to get than the 74LS83s.Something like the 'ATF1504', and I would just shove any additional logic I need within as it has over 64 IOs.

author: Benta
author_rank: Super Contributor
timestamp: August 04, 2025, 06:38:19 pm
content: Quote from: BrianHG on August 04, 2025, 06:05:27 pmProblem with PLDs is that they burn power like there's no tomorrow. Show me one that'll suck a lot less than 100 mA (perhaps 5 mA) and I'll be all over it.

author: bson
author_rank: Unknown
timestamp: August 04, 2025, 08:00:34 pm
content: Quote from: Warsp on August 04, 2025, 12:31:57 amOf course, that looks like an actual useful schematic.I'd add a power connector for +5V and GND, and put the PWR_FLAGs at the schematic ingress point. Or clone the connector and change the pins frompassivetopower input.And labeling the buses is a good habit, it makes it fail checks if you connect the wrong signal to a bus that doesn't carry it. (https://docs.kicad.org/master/en/eeschema/eeschema.html#buses) It also allows quick and easy unfolding (extracting labeled wires from a bus) - you pick which bus signal you want from a popup list, eliminating typos and similar problems.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 04, 2025, 08:08:47 pm
content: Here's the schematic from this post above redrawn using connector letters instead of a mess o'wires:If anyone cares to comment on this, which do you prefer?I'm pretty much 50/50 at this point, though this version without the rat's nest is definitely neater.

author: TimFox
author_rank: Super Contributor
timestamp: August 04, 2025, 10:21:21 pm
content: Quote from: gamalot on August 04, 2025, 10:03:49 amBuses are logically equivalent to net name labels, but they guide the eye properly to understand the functionality.EDA doesn't care: it only looks at labels.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 04, 2025, 11:04:46 pm
content: Quote from: Analog Kid on August 04, 2025, 08:08:47 pmIf you named the nets based on destination (d0_1, d1_1.......d0_2, d1_2) it becomes trivially easy to check. If you try it, you'll see what I mean.We use busses too. Whatever makes it easier to understand.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 04, 2025, 11:14:21 pm
content: Quote from: John Coloccia on August 04, 2025, 11:04:46 pmHmm, hate to nitpick here, but all those extra characters (rather than my simple "A", "B", "C", etc.) would seem to just add clutter.In my scheme "A" goes to "A", "B" to "B", etc. Simple 1-to-1 correspondence.It's not really a net, since usually when connecting a bus, both ends have the same connections (D0, D1, D2, etc.). Here I'm connecting 2 chips to 4, so it's not so orthogonal.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 05, 2025, 12:44:11 am
content: I wish I could have done this in Altium because it would look a lot better, but this is more what I meant (mostly for beginners to consider). In this case, it makes a really nice, super easy to review pattern. It's just a shame the font is so crappy, and the component has Q3 on the wrong side.But anyhow, just a tool in the tool bag you can use if it makes sense, and completely ignore if you hate it.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 05, 2025, 01:07:17 am
content: OK, I don't hate it, even though 1) it's a PDF, meaning I have to download it and then open it, instead of being able to see it right there in your post, and 2) yeah, I had to blow it up to 300% to see anything.But my point was about the identifiers you used.Instead of usingdb0_0,db0_1,db0_2, etc., you could just as easily have used my A, B, C, etc.(Your scheme does identify the destination—db0_2is the 1st chip, third data pin—but that's just icing on the cake.)Well, as I said, I don't hate it, and if it works for somebody, more power to them.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 05, 2025, 01:38:18 am
content: Quote from: Analog Kid on August 05, 2025, 01:07:17 amSo, pretty much everything we do (electrical, software...documents...everything) goes through a review before we send it out. So sometimes we do things that are a little more work when we make it, but super fast to review and verify it's correct. It's a tradeoff, so you just hope that you find a good balance.So in this case, I just have to:1) scan that I got the nets right on the destination2) scan that I got the simple pattern right at the source.Because it makes a REALLY nice pattern. In other cases, we'd do it a different way. And sometimes, it's just ugly no matter what you do and that's just life.Was really mostly for beginners who may not even consider it.Yeah, I really apologize about the truly abysmal .pdf. It's what I had available right that second. It's one of the things I really dislike about DipTrace (at least the older version I happen to have installed). The schematics are just not really that pretty. Otherwise works well for my own stuff, but we use Altium at work.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 05, 2025, 01:46:56 am
content: Quote from: John Coloccia on August 05, 2025, 01:38:18 amIt's not just that the PDF is abysmal, it's the fact that it's a PDF at all, which is more of a PITA to work with than just a graphic image.No way to export a .gif from that program? That's my usual pic-posting format (besides .jpg for photo-type images).

author: John Coloccia
author_rank: Super Contributor
timestamp: August 05, 2025, 01:54:51 am
content: Quote from: Analog Kid on August 05, 2025, 01:46:56 amI can take a screen shot, but I couldn't get everything on the screen at the same time, large enough to be legible. And the fonts are tiny and hard to read. It's Ok as you're working on it, but not so great on paper. Maybe I could have made it better? I rushed it, for sure.

author: EPAIII
author_rank: Super Contributor
timestamp: August 05, 2025, 06:27:07 am
content: IMHO, the purpose of a schematic, as opposed to other types of circuit drawings, is to make it easy to understand how the circuit works. This can be for designing it in the first place or for later modifications or maintenance. A good, PROPER schematic would make any and all of these tasks easier and faster.My first rule is that in a good schematic the signal(s) should flow from left to right and from top to bottom. To the greatest extent possible each signal should start at the left edge of the schematic and the resultant signals produced should end at the right edge of the page. If the signal path(s) are too long and/or complicated to be complete in one pass across the page, then the circuit can be divided into vertical blocks with the signals returning to the left in the space between the blocks.Another rule that I have is when a buss travels around the page, it should have the same signal order at each output and input. So an 8 bit digital buss would be organized by the byte number (0-7) and that order should be maintained via parallel lines as it travels around the page. To the greatest extent possible, the lines of one buss should not cross over each other. If they do cross over each other, then all of them should do so in order from one side of the group to the other. Using a single, heavy line for all lines in a buss is OK if the individual lines are drawn in the same order for each place where they enter that heavy buss line and for each place where they exit from it. The individual signals should be labeled at each of those points where they enter and exit from that single, heavy line. Other signals associated with each other should be handled in that manner.To the greatest extent possible, the pins on an IC should be arranged with inputs on the left or top and outputs on the right or bottom. They should be arranged by the signals that they carry, to match the buss order above. Each pin should have labels for the signal name and for the pin number on the IC package used. This is to make it possible to know those details for design or troubleshooting without referring to another document.It is OK to draw ICs in different sections if each section has a stand-alone function. It is also OK to show power connections to the ICs in a separate area of the schematic devoted to that purpose.I am sure I have more "rules" that I try to follow but those are the main ones. I have found that working with a sense of order does make the design and maintenance processes easier. This goes for my own work and for working with the designs of others.Quote from: Analog Kid on August 04, 2025, 08:08:47 pm

author: Analog Kid
author_rank: Super Contributor
timestamp: August 05, 2025, 06:42:03 am
content: Just one tiny little thing:bus= bus (vehicle or group of conductors); pluralbusesor (less commonly)bussesbuss= kissVery common mix-up.Plus there's theAmerican manufacturer Bussthat makes fuses and such.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 05, 2025, 09:18:07 am
content: Quote from: Analog Kid on August 03, 2025, 09:30:31 pmI once worked with someone who liked to draw circuit diagrams like that, drove me nuts. I once, uh, helped him along by redrawing one of his masterpieces with every single component in its own section, with random two-digit numbers identifying what connected to what. He was not amused.And here's someone whocame very close to what I did, only they weren't doing it on purpose to make a point. Note in particular the mixing of I and 1 and O and 0 in the labels:

author: 5U4GB
author_rank: Super Contributor
timestamp: August 05, 2025, 09:20:24 am
content: Quote from: tom66 on August 03, 2025, 10:19:50 pmThat looks like someone sneezed into a box of loose spare parts and took a photo of the result.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 05, 2025, 04:06:08 pm
content: Forsimplemicrocontroller schematics, like those using various cheap Padauk/AVR/WCH etc. MCUs with simple peripheral circuits, I do like the "modular" approach better (where each peripheral circuit is separate), even though it is considered horribly bad by the actual EEs here.The reason is that for a hobbyist like myself, there is no need to consider it all as a whole. Instead, one must consider the power supply (and stuff like power sequencing, backfeeding/diodes on power inputs if multiple power sources), and each of the peripheral circuits separately; and one can also replace each peripheral circuit, or copy it to ones own use.As an example, consider mySingle 12V PWM Fan ATtiny85 controllerproject (schematic attached below). Again, it is horribly bad in proper EE design terms, and I should be ashamed of it; but to me, I find ituseful format. I amnot defending it, only explaining why it is so popular in open source microcontroller projects!(The idea here is to not control the PWM duty cycle directly. Instead, the MCU is calibrated to the full supported RPM range, and the potentiometer adjusts the target RPM. This is because fans age, any ambient airflow affects the fan PWM-duty-to-RPM curve, and so on. If you just wanted to control the PWM duty directly, you could drop the tachometer support and the MCU, and generate the 22 kHz – 28 kHz PWM signal directly with duty cycle determined by a potentiometer.)The DC power input connector is top left. Top center is the MCU itself, and the supply bypass caps and reset pull-ups it needs. Center left is the 5V voltage regulator. In the center there is an open collector PWM output driver (using NX138AKR, similar to BSS138 but slightly faster due to lower total gate capacitance), and the tachometer input (two pulses per revolution) with pull-up to 12V as required (original Intel 4-wire PWM fan spec(with old color coding),Noctual PWM spec). Bottom left is the potentometer in voltage divider configuration with a capacitor for stabilizing and ensuring enough current for the sampling capacitor in the MCU (the 220Ω resistor is there because the potentiometer is external, exposed as three pins on the PCB, and the resistor on the supply voltage ensures that even if something shorts out the connector, nothing bad happens). Bottom center is the external (5V) I2C connector for e.g. small OLED display.Every single separate part in this schematic can be replaced with something else, or duplicated/copied and used elsewhere. This is the main reason this kind of schematic is popular, I believe: it makes open source designs — mine are all CC0-1.0/Public Domain — more useful for us hobbyists, because it makes it easier for us to both understand the parts and to reuse the parts in other designs.For example, I can switch the MCU for something else, for example one of the dirt-cheap RISC-V CH32V003 MCUs. I can also drop the 5V to 3.3V (as most I2C OLED display modules don't handle 5V well long-term), as long as I verify that the MCU and all the peripheral circuits can handle it okay — and this is easier to do when each part is so nicely separated. In fact, simulations indicate that NX138AKR can handle up to 100kHz with gate-source voltage going no higher than 2.5V, so here, the MCU is the only thing really affected (ATtiny85 being an old AVR, and really preferring 5V over 3.3V). If I do switch MCU to another with more pins, I can also duplicate the potentiometer analog pin, tachometer input circuit, and PWM output circuit, each, as many times as I like, to support multiple independent fans at the same time.If I combined the schematic to one fully connected one, I would lose all those benefits of modularity. One might then add faint boxes around each part, but that would add a lot of visual detail, making it much more difficult for a hobbyist like me to correctlyparseand understand the design. The fact that the parts arenotconnected with traces in the schematic makes it mucheasierfor us hobbyists! For microcontroller projects where the pin selection will vary depending on the footprint of the MCU (because they have different pinouts, usually even different number of pins exposed), that is a benefit, not a downside — assuming the modular parts are correctly separated and grouped, so that there are no unexpected dependencies, of course.In any case, please be gentle: I've already been excoriated about making such schematics, and don't need another one. I'm not defending them, only trying to explain why us hobbyists who do open source (or public domain) designs, find such schematics so useful. This is an attempt at explanation, not defense.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 05, 2025, 06:34:16 pm
content: I dunno, NomAn: I see your point, but only for circuits that are above a certain size or complexity.For that relatively simple circuit you posted, I'd much rather see everything connected together without labels.It's just not big enough to warrant that separate-boxes approach.

author: ifonlyeverything
author_rank: Regular Contributor
timestamp: August 05, 2025, 09:15:30 pm
content: Probably because I'm just a novice, but I had a hell of a time deciphering and understanding the control section of this schematic (page 86) and tracking it back to the main power board (page 87.)

author: Analog Kid
author_rank: Super Contributor
timestamp: August 05, 2025, 09:55:39 pm
content: Quote from: ifonlyeverything on August 05, 2025, 09:15:30 pmProbably also because that's one hell of a complex circuit ...

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 05, 2025, 10:30:29 pm
content: Quote from: Analog Kid on August 05, 2025, 06:34:16 pmI'm serious about not trying to defend it, and am only trying to explain why it is used: for simple open source microcontroller designs, it provides extra use cases and information that a fully-connected design does not (at least, not as well).Simply put, a full schematic is a description of a full circuit, but a collection of parts is just a collection of parts. For some use cases (hobbyist open-source and OSHW designs), the latter is useful. For an actual device, not a collection of modular parts, you want the fully connected schematic, so you can understand the whole device at once. For open source stuffre-use of partsis a key factor, and the whole is often less valuable than the sum of the individual parts — as bass-ackwards as that may sound: the whole is just one device/design, whereas the parts can be used in many different devices/designs.I believe that after one learns to create a "modular schematic", the next step is to learn how to lay it out fully connected in an useful manner. Just like individual words can be re-ordered to change the emphasis or meaning, the layout and arrangement of the schematic determines how useful it is to others. Creating fully-connected schematics is a skill one will not learn if they choose to remain in the "schematic as a collection of parts" phase, drawing only modular schematics: I'm certain this applies to myself, so I assume it applies to others too. The next step in the skill ladder after that, I believe, is to learn how to most usefully split large designs to human-sized bites, each bite on a separate sheet/page. The physical page size does not matter that much nowadays, since we tend to look at them in PDF form and rarely print out (except for archival purposes, I guess), but human cognition has its limits. (For example, most people can remember 7-digit numbers, perhaps one or two more if grouped into three or four digit groups; almost all have difficulty remembering longer numbers. Specifically, many can memorize a couple of constants like π and e, maybe ℏ and some others that they do use every now and then in their work or hobbies, say to a dozen or more decimal digits; but most have trouble remembering more than a few large numbers that do not have any physical meaning, like say ISBN numbers and such). It is a functional limitation of the typical human brain, having evolved to handle specific level of complexity, devoting specific amounts of "computational power" to different types of cognitive tasks, and not just some randomish culturally specific detail. Of course, there are cognitive tools like method of loci ("Memory palace") to overcome some of those limitations.)

author: 5U4GB
author_rank: Super Contributor
timestamp: August 06, 2025, 01:30:21 am
content: Quote from: Nominal Animal on August 05, 2025, 04:06:08 pmThis is exactly what the folks who drew thecircuit diagram I linked todid, which made it a giant pain to figure out why output-on LEDs were lighting up when the output wasn't on, I had to mentally assemble half a dozen different blocks with confusing labels (I/1, O/0), and eventually sketched out a proper circuit on a piece of paper, to figure out what the problem was.

author: amyk
author_rank: Super Contributor
timestamp: August 06, 2025, 04:33:47 am
content: I wonder if the preference for "disconnected" vs. "connected" schematics is correlated with age; I don't remember seeing the "disconnected" style before the mid 2000s at the earliest, and even then it seemed to start amongst the amateurs and "makers". To me, it's common sense that everything on the page should be connected together with wires, except perhaps with the rare exception of supply rails and grounds, as otherwise it's no better than reading a textual netlist.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 06, 2025, 04:45:52 am
content: Quote from: amyk on August 06, 2025, 04:33:47 amYou can wonder this.Professionals do it, where appropriate, to make schematics easier to read and reason about.Like most things, there's no one "right" way. Just like there's not a right way to write a book or tell a story. Part of the job, IMHO anyway, is not just doing something functional. It's doing something expressive, be it EE or software. There are a lot of different ways to express your intention, and part of the job as a pro is choosing something expressive for your audience.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 06, 2025, 03:40:13 pm
content: Quote from: amyk on August 06, 2025, 04:33:47 amOr could it be an artefact of newer types of EDA software? So not a whole pile of people deciding to do it but the software enforcing it by default?Mind you, brain rot can also spread through humans pretty quickly, for example the now-common braindamage of displaying "Something went wrong" as an error message (no shit Sherlock, I can tell something went wrong by the page not having loaded), or dating things as "Six hours ago" instead of an actual timestamp you can do something with.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 06, 2025, 10:09:48 pm
content: Quote from: 5U4GB on August 06, 2025, 01:30:21 amI disagree: I think that one is just a plain horribly bad schematic.For one, it is split into parts randomly/haphazardly, with parts interdepending on others, and is completely non-modular. (Compare to a fully-connected schematic where every wire crosses every other wire at least once, data flows in all directions, and ground is as often above as it is below the positive voltage rail. It is badly done, and not just bad because it is not fully connected. Like a set of LEGOs separated to individual pieces, with net labels describing how to put it together. If it was modular, it would show each self-contained peripheral separately, not split those into their constituent parts.)I do not like it at all, either.To be specific: The outputs are controlled by pins OT1..8 and LO0, and OT9..16 and LO1. OT1..8 is generated by U16, and OT9..16 by U32. OT1..16 are exposed as pins in pin headers RP1..4. The outputs Y1..8 are exposed in pin header P4, and Y9..16 in P5. LO0 and LO1 are apparently external logic voltage supply, exposed in pin headers P4 (LO0) and P5 (LO1), since the output is not actually isolated: it is referenced to the global ground due to diodes D20..D35 and LEDs D1..D16. All this is interdependent, so each set of 8 outputs should have been a single "module".The attachment shows how I might have drawn the first eight outputs. The second set of eight is identical except for component identifiers and the PCF8574P A0 pin, which is tied to +3V and not GND for the second set. Note how the design deficiencies suddenly become obvious, now that interdependent components are drawn connected, even if the module or "part" is separate on the schematic.I personally would not design the outputs that way, no matter what kind of output it is supposed to be. (Uh, open collector? that drifts down to LED forward voltage when inactive, pulled somewhere close to LO0 when active? Me no like it at all.)

author: Analog Kid
author_rank: Super Contributor
timestamp: August 07, 2025, 12:01:16 am
content: Quote from: John Coloccia on August 06, 2025, 04:45:52 am(Meaning they split everything apart into separate little "boxes" as illustrated in this thread)Since I never really got a satisfactory answer from @Nominal Animal, let me ask you:Don't you think that the decision of whether to so "atomize" a schematic (split it apart) or leave it connected should be determined by how big and how complex it is?I still say thatthe example that @Nominal Animal postedshouldnotbe split up. It's silly; it's a relatively small, not terribly complex circuit, and it just makes it a pain in the ass to follow connections around. Doesn't help anyone's understanding of the circuit.If the circuit was, say, a complete computer motherboard, then sure, split it up judiciously and label the connections.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 07, 2025, 01:01:05 am
content: Quote from: Analog Kid on August 07, 2025, 12:01:16 amIt's determined by a lot of things, I guess. I don't think we have a rule. And it's a matter of taste what's easier/harder to read. Like I almost never see any value in dragging rails and grounds around everywhere. Just make a net port, and use that.A lot of times I'll group together like things, even if they're extremely simple. For example, if I have a bunch of opamps buffering signals, we'll put them all in the same place so I can see the dividers, filters etc. I have on everything all in one place.In my mind, it has absolutely nothing to do with "complex or simple." Just like I sometimes have one line functions, sometimes I have very simple things on their own. Sometimes authors have a chapter that's just a paragraph long. Maybe just a couple of lines. If that gets the point across, then do it.Personally, I too didn't find 5U4GB's "bad" example easy to ready, and we would probably do it much closer to how Nominal Animal drew it.But that's just us and our preference. I've seen various standard for code, schematics, etc. and thought to myself "What moron came up with this steaming pile of garbage???" But it worked for someone...

author: 5U4GB
author_rank: Super Contributor
timestamp: August 07, 2025, 01:39:27 am
content: Quote from: Nominal Animal on August 06, 2025, 10:09:48 pmMan, I wish I'd had that a while back when I was looking at it trying to figure out why the output LED was lit even when the output wasn't on... you're right, the problems become immediately obvious once it's redrawn in non-LEGO style.Just an editorial comment in defence of the company as a whole, they're actually pretty good, they publish full circuit diagrams, lots of info on using it with ESPHome, MQTT, Home Assistant, release firmware updates every month or two, they actively support everything via their user forums, they're probably better than 99% of companies out there, including ones that charge 10x the price for the same sort of thing.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 07, 2025, 03:18:55 am
content: Quote from: Analog Kid on August 07, 2025, 12:01:16 amNever atomize a schematic like the schematic 5U4GB linked to: that is just horrible and not useful to anyone.I am only a hobbyist who has only meddled with open source designs. There, having re-usable self-contained parts as separated modules is useful, more useful for us hobbyists than a fully connected one. That doesnotmean a fully separated, "atomized", schematic is useful to anyone! For example, I absolutely hate the way some put supply bypass capacitors separately, instead of close to the chips they should be placed close to. (Except when there is exactly one per IC, all identical, of course.)Because I am only a hobbyist without proper practical experience, I absolutely do not know when or how to best split a schematic, yet. I'm still learning how to do that! So, I just don't have an opinion on that (or Analog Kid's question quoted above).I do believe that if the schematic splits apart things that are dependent on each other, like 5U4GB's example, then it is a bad schematic: hard to understand and leads to problems. I believe that the only way to split schematics into parts is when each part is modular, self-contained, with inputs and outputs clearly marked, and any dependencies to separate modules' internals very clearly marked and commented. The question ofwhensuch splitting is warranted, is above my skill level.However, even when such splitting is done because the whole exceeds what a typical good EE can grasp, I do believe the methodology should be the same: in "modular" units, with all inputs, outputs, and dependencies clearly marked.Quote from: Analog Kid on August 07, 2025, 12:01:16 amThat's perfectly okay by me. I showed it only because I tried to explainwhy: that when done in properly self-contained modules (like in mine), where each separate module can be replaced with something else — say, in mine, one could replace the PWM output and tachometer inputs with buffer ICs, or omit the I2C altogether — without any of the other modules, it makes the split schematic more useful to OSHW hobbyists: we can reuse and build on top, not just use that design as-is.Consider the case where someone builds a functional remote-controlled car out of Lego Technic.The company sends you bags of parts and build instructions. This is the equivalent of fully split apart, "atomized", schematic. It is only useful if you fully trust the schematic, and are not trying to find out how and why the end result works.When you show the built model andallits features and details to someone else, you're doing the equivalent of showing a fully connected monolithic schematic.The idea in modular schematics is to show how e.g. the front wheel drive and suspension mechanism works, how the gearbox works, how the seats are adjusted, the rear suspension and differential drive works, and so on,separately. Each of those has to be modular, separately usable and replaceable without affecting the others. Then, each of those modules can be used in other designs with little to no changes. Just like in schematics, the modules must be self-contained with all dependencies obvious, or one will end up wondering why the "gearbox" no longer works outside the original car model, or why the car will only turn left if you adjust the right-hand seat, or something similarly weird.I am not trying to say that modular schematics aregood. I am only trying to explain why specific subset of hobbyists, the OSHW hobbyist types, find these modular schematics so useful, and don't mind working with them. Simply put, they value each of those "modules" about as much as they do the whole schematic — when the schematic is correctly split.Quote from: Analog Kid on August 07, 2025, 12:01:16 amYes, but those who do and use these kind of schematics, don'twantto trace all the connections, nor understand the circuit as a whole; we're simply not at that level yet. Even if someone redrew the schematic as a fully connected one,wewouldn't get any more out from it than we do from the modular schematic.Instead of tackling the problems at the proper EE design level, we subdivide it to its self-contained parts (that I call "modules"), and solve each part separately. We trust the PCB editor (ratlines or similar) to ensure the internal tracks get fully connected. Further understanding and learning is obtained by building the thing, and testing it (sometimes to destruction) in practice.It is only the "horrible" that I object to. You wouldn't call a beginner author's first draft "horrible" either, just "simplistic" or "inexperienced" or "amateurish" — unless, of course, itishorrible like the one 5U4GB linked to. I myself consider my own example "simplistic" or "hobbyist level"; definitely not professional or proper EE design, but not "horrible" either. Much to be improved, sure, but already somewhat useful.(Apologies for the long wall of text!)

author: Analog Kid
author_rank: Super Contributor
timestamp: August 07, 2025, 03:34:59 am
content: Just so you know, I am also but a humble (or not-so-humble as the case may be) hobbyist with no further pretensions.I've looked at lots of schematics, and drawn quite a few myself. Most from other sources, as yourself, though I'm starting to be able to modify them just a little bit.I consider schematic drawing to be a noble art worth pursuing to excellence. Takes a lot of experience, not to mention a good deal of thought and lots of planning.My schematic-drawing tool is what I've been using for the last couple decades, which is CorelDRAW (currently v12). It's not at all designed for this purpose, but I've created my own "electronics parts box" template file with all the stuff I need: resistors, capacitors, semiconductors, etc. No automatic joining and routing as with true schematic programs, but it gives me a lot of tools for alignment (guidelines, snap) and it isn't difficult to create a very good-looking drawing with it.My favorite schematics, by the way, are still the ones by National Semiconductor in their datasheets and application notes. Their style just seems right to me.

author: Bud
author_rank: Super Contributor
timestamp: August 07, 2025, 04:24:55 am
content: Quote from: amyk on August 06, 2025, 04:33:47 amTo me it started by software guys when new ICs and SOCs with cool features became widely available and affordable. Lots of software creators designed their gizmos but the hardware part was nuisance to them. They never cared about quality of shematics, as long as a PCB could be manufactured in the end. And they still do not. I remember seing many absolutely horrible Eagle schematics back then.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 08, 2025, 01:04:44 am
content: Quote from: Nominal Animal on August 07, 2025, 03:18:55 amI ran into this one decades ago, whoever drew the circuit diagram decided to put all the decoupling caps off in a corner by themselves and being focused on getting the wire-wrapping of all the connections right I omitted to look in the corner (may have been on a separate page with the power supply circuitry) and see that there should be caps sprinkled at random all over the board...QuoteGiven your redraw of the KC868 circuit diagram I'd say you've figured it out better than a lot of others out there.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 08, 2025, 01:26:14 am
content: We do that because there are so many of them. And they interfere with the logical layout of the chip.But then they also get clearly labeled so you know where they go. And here is where good standards and consistency makes all the difference.Or not. It's a decision you can make. I would hope that component proximity on a schematic doesn't imply component proximity on the board. Isn't it useful to call out things like decoupling caps, so you know it's important to get them close?Maybe that's unimportant, but many people find that useful. Also, if you're wire wrapping, decoupling cap distance is almost irrelevant.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 08, 2025, 11:21:07 am
content: Quote from: Nominal Animal on August 07, 2025, 03:18:55 amDon't worry - there is 99.99% consensus among both hobbyists and professional designers to prefer modular, multi-sheet schematics, and utilize net labels to avoid having to draw endless spaghetti of wires that need to be manually tracked by running a finger across the schematic.This isn't even new - it was already obvious in 1960's or so, in any complex design (think about a TV set with power supply sections, vs. deflection units and video and audio amplifiers, and whatnot, with hundreds of signals flowing.)There is a loud minority of a few individuals for whom fight against net labels and modular schematics is a personal quest. They are just loud; not numerous.Net labels are like variable names in code: you don't need to giveevery neta label, like you don't need to assign a variable to every step in calculation like a = 5*b + c. EDA tools then automatically name these nets. But if you just create an endless wire spaghetti, then on PCB routing depend on implicit names and ratsnest alone, and struggle defining attributes like clearances or ground pour rules or impedance settings or whatever you normally do. You also lose mentally track what the signals are, and accidentally make high-current trace thin, or high dI/dt path long with excess inductance. Proper naming, say SW for Switch Node, Vin, Vout, Gate, Vin_clamped, etc. is important. And then you realize that you don't actually need to draw those 200 thin wires all over the schematics. You of course connect adjacent components together with wires. But you don't need to e.g. bring six gate drive signals over dozens of other wires into a 3-phase power stage. You label them GATE_A_LO, GATE_A_HI, GATE_B_LO and so on, which you would want to do anyway, and then leave the wire mess out.Of course any paradigm can be abused. If you place every component inside it's own module alone, place every module on its own sheet, and never draw any wires, it looks horrible. But no one does this. The naysayers I refer to rarely post actual examples of this "bad style"; instead referring to synthetic examples, which are purposely extreme, so clearly the problem isn't very real.

author: SteveThackery
author_rank: Super Contributor
timestamp: August 08, 2025, 05:07:46 pm
content: I don't agree with @Siwastaja that there's a 99.99% consensus in favour of modular, multi-sheet schematics with net labels.Rather, there is a fairly large consensus that simple circuits are best drawn with wires, and that as more complexity is encountered, buses and labels should be used. If warranted, a complex circuit can be split into modules, and if really necessary, the modules are placed on separate sheets.The inflexion points where we go from wires to buses, to modules, to sheets, are always a matter of judgement. It is important to remember that modules, sheets, wires, buses, are not your objective. Yoursoleobjective is to make the circuit as clear and understandable as possible to a human (including yourself). The software doesn't care whether your circuit is a rat's nest or has every IC on a separate sheet.It does seem to be the case that newbies often go too quickly for the modular approach with labels for virtually every connection, even with the simplest circuits (we've seen so many on this forum). It's a mistake - simple circuits benefit from directly drawn connections. Only when the connections begin to require finger tracing should we switch to buses and/or labels. A beginner's attempt at modular schematics - where the individual boxes don't really enclose a functional module, but just an IC or two - add another unnecessary layer to work through. And remember that multi-sheet schematics might seem cool, but generally it's a ball-ache having to keep switching between them.In summary: no one format is best.You should concentrate on understandability above all else, and the right architecture for your schematic is determined primarily by the complexity of the system.

author: TimFox
author_rank: Super Contributor
timestamp: August 08, 2025, 05:13:55 pm
content: Some circuits comprise merely rectangles and busses.My experience before retirement was mainly with analog circuits, where understanding the connections is important at the granular level.Drafting standards are different between those cases.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 08, 2025, 07:16:49 pm
content: Quote from: SteveThackery on August 08, 2025, 05:07:46 pmYes!This.I keep bringing this up, but somehow it just gets buried under tons of obfuscation here.The decision whether to "atomize" a schematic or not should depend on the size and complexity of the circuit.Not on "what we usually do" or "what I found on the Intertubes" or whatever.It's stupid and silly to atomize small simple circuits.It's a disservice to the readernotto atomize large complex schematics, using nets and labels.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 08, 2025, 09:26:27 pm
content: Quote from: SteveThackery on August 08, 2025, 05:07:46 pmMy point is that for us DIY OSHW hobbyist MCU circuits, that is not true: being able to distinguish and re-use a self-contained part — say the power supply section, or some MCU input or output circuitry — is at least as important. Often, even for myself, the actual objective is how to use some "modules" or "parts" in a larger schematic.If you do draw all the connections, it is much harder to balance between understandability and having the "self-contained sections" still easily separable, at least at my skill level.I've tried using faint background boxes, and seen dotted-line boxes/outlines in even old schematics, but they seem to mostly add to the clutter (and act like extra extra visual noise), whereas leaving out the traces for the very few intermodule connections reduces the clutter.My experience in visualizing scientific data indicates that to control what information is conveyed (to control how others perceive and understand the image or chart), one mustreducethe superfluous information in an image — for example, use cell-shaded cartoony sticks and balls instead of photorealism, for atomic models —, not just add more details to it.Human cognition has very hard limits, although they do vary from individual to individual. Splitting up is the age-old method to go around this. It is why telephone numbers are often split into three or four digit groups, instead of shown as a single large decimal number. (One can even ponder whether "12 345 987 506" is easier (requires less cognitive effort) than "12,345,987,506", in different contexts like a spreadsheet or among written human text.)Quote from: SteveThackery on August 08, 2025, 05:07:46 pmYes!And, as shown by the schematic5U4GB linked to in reply #33 and #40, it is an easy trap to fall into, even for not-so-young players. (I'm referring to Kincony the company, the source of that schematic; not to 5U4GB who just linked to it.)Quote from: Analog Kid on August 08, 2025, 07:16:49 pmBecause that completely ignores the needs of us DIY OSHW microcontroller hobbyists, I must partially disagree.Schematics are often just a (hopefully tested) example, with the idea being for hobbyists like me to be able to modify it and reuse the useful parts of it in our own designs. Often, we have no intention of using the whole schematic, not even as a basis for our own, and just wish to pick out and reuse specific parts. This is particularly typical with various "Arduino"-like modules, but does apply to individual peripherals, ICs, and purposes (like controlling a 12V PWM fan in my case).Of course, when the schematic is broken into parts wrong, with separate parts having interdependencies, we get lead utterly astray. Only experience helps with that.However, if you were to amend your statement by appending or footnoting something like"(unless the schematic is an "example" containing independent parts or modules intended to be reused, modified, or replaced)", then my current needs at my current skill level would be covered too.Whether my needs are at all important in general, I have no idea: I just don't have enough experience to know yet. My only purpose in this thread was toexplainwhy some like myself who can already draw at least simpler fully-connected schematics, stillchooseto draw even simple ones separately. There is a reason and usefulness to it, for us. Whether there are better ways to achieve these needs than splitting up, I don't know. I have looked at various schematics, but not yet found anything that worked as well as properly splitting does, for these DIY OSHW needs.(Apologies for spamming the thread with overlong posts. I do edit and try hard to keep them short, just not succeeding too well, yet.)

author: Siwastaja
author_rank: Super Contributor
timestamp: August 09, 2025, 07:37:06 am
content: Quote from: Analog Kid on August 08, 2025, 07:16:49 pmOf course, I don't disagree. I was of course thinking about complex enough circuits where this matters.Then again, I don't really get why some get so irritated when the "Big Boys" style is used in trivially small circuits. It isunnecessary, sure, but it also doesn't really matter either way.

author: SteveThackery
author_rank: Super Contributor
timestamp: August 09, 2025, 10:11:22 am
content: Quote from: Siwastaja on August 09, 2025, 07:37:06 amIt does, though. The problem with labels is that you need to hold in your head where every instance of a label appears, then mentally join them together, then work out from that how the circuit works. That's why directly drawn connections are better - it's because they express the functionality of a circuit more directly. You should only resort to labels when labels improve the clarity, and that only happens when direct drawn connections become too difficult to follow.

author: UnijunctionTransistor
author_rank: Frequent Contributor
timestamp: August 09, 2025, 02:56:40 pm
content: Quote from: SteveThackery on August 09, 2025, 10:11:22 amFully concur with this statement. Labels do have legitimate uses on a schematic which is to be used by humans. Mostly but not always, when the circuit is too large to fit into a single page or the resulting spaghetti would be confusing. Then a good draftsman will accompany the label with a page number and zone coordinates, such that the poor human being attempting to understand the circuit can actually follow the signal path, which could branch to several different nodes.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 09, 2025, 03:15:48 pm
content: Quote from: SteveThackery on August 09, 2025, 10:11:22 amYeah, exactly. Like I said previously, the size and complexity have nothing to do with it. If connection by net name makes for better reading, then do that in tiny circuits. If it makes it less clear, then don't do it in gigantic circuits.Like one place on even the tiniest circuits where I find it useful is connecting up Rx to Tx. I find it super useful to look on one side, and see it's called PROC_RX going into the processor's RX line.Then I look at the other side, and I see that the transceiverDO_pin -> PROC_RXDI_pin -> PROC_TX.I'd do that on the tiniest circuit because I personally find that super easy to read and understand.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 10, 2025, 12:59:22 am
content: I don't mean toor try to convince anyone about anything; I just think this is a perfect opportunity for me to learn more — that is, to learnwhypeople have the opinion on this they do, and what exactly are those opinions based on (besides personal experience). There have been some excellent examples/arguments already in this thread for-and-against in my opinion, and I'd like to go even deeper, just to learn more.I re-drew the schematic for the ATtiny85-based 12V PWM fan controller with 5V I2C connector, adding a polarity protection diode to the 12V input, in both connected and separated forms, to the best of my skills at first iteration. (I am sure I can rearrange both to be even better, but I'd need others' input for that, specifically what is difficult to see or annoying about them; and of course, sleep on it to review and edit them with "fresh eyes" myself. I spent only about an hour on this, so don't take this too seriously, just an example for discussions sake.)(Note that I did consider adding dotted/faint outlines around the modular sections in the fully connected schematic, but chose not to, because my first go made it too cluttered. I think I'd need to redraw the PWM and tach subsections first to make the grouping dotted outlines less annoying-looking. Obviously, the separated schematic was much easier to draw, too.)I do understand that the fully connected one makes it easier to grasp the schematic as a whole, and the separated one makes that more difficult.However, for reusing modular parts (DIY OSHW), I do claim the separated schematic is more useful, conveying that information much more clearly (specifically, how to reuse its parts and how to modify it) than the fully connected schematic does. I do agree that schematics where everything is disconnected are horrible; only self-contained sections should be drawn separated. I also suspect that only a small minority of DIY OSHW designs actually consider that (I only consider those that do really useful), and instead do the separated form because they find it easier.In particular, I'd like to know if members here consider the fully connected schematic superior because they value seeing the whole more, or do not see much value or importance in reusing the modular parts, or for some other reason (why?).

author: Analog Kid
author_rank: Super Contributor
timestamp: August 10, 2025, 01:30:05 am
content: Quote from: Nominal Animal on August 10, 2025, 12:59:22 amBest of both worlds:Create the schematic as a connected one.Create the "atomized" parts as well, but really atomize them--one "atom" per schematic file--then put them into your "library" (i.e., some folder). Then you can reuse them for other circuits.I still hate the "atomized" version in this case. But keep the parts for later re-use.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 10, 2025, 03:24:46 am
content: Making a "library" does not make sense when the idea is to show how to combine/separate such modulesto others.Quote from: Analog Kid on August 10, 2025, 01:30:05 amCan you explainwhy, though? Or is it just familiarity, esthetics, gut feeling?You see, the opinion alone isn't very useful, because different opinions cannot be compared; they just are. (It's like asking whether you like the number 4 more than the number 7.)However, if you can tellwhy, a reason, the reasons behind different opinions can be compared against each other and re-evaluated for each situation at hand, which makes the resulting opinion actually useful in practice. And although I do highly value the contributions and work of many members here and elsewhere, I just cannot rely on authority at all, meaning that I justcannotuse my understanding or estimate of each persons experience as the yard stick for their opinions. In my experience, that has never ever worked well, but understanding the reasons behind the opinions has not failed me yet.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 10, 2025, 03:30:10 am
content: Pretty simple, really:I don't like it because I have to consciously connect all those labels together to actuallyseethe circuit.Otherwise it's just a bunch of disembodied parts-pieces.Don't you get that?I don't know; you may be different from most of us, in which case this would be the better choice for you.If so, more power to you.Maybe it's actually a mental shortcoming onourpart.But my bet is that most of us here prefer a connected schematic for the reason I gave, assuming it's below a certain size/complexity.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 10, 2025, 03:37:05 am
content: Quote from: Nominal Animal on August 10, 2025, 03:24:46 amIf your aim is to show the sub-parts of a circuit, then how about using shading or outlines in a light color (or dashed lines)?That plus labelling should accomplish that goal.Sometimes all you need to do is to label your sub-circuits to identify them; no need to pull them apart like Legos:

author: 5U4GB
author_rank: Super Contributor
timestamp: August 10, 2025, 04:35:45 am
content: Quote from: Nominal Animal on August 10, 2025, 12:59:22 amAbsolutely the fully connected diagram, because it's possible to see what's going on. If I wanted to assemble a jigsaw puzzle I'd go to Ravensburger.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 10, 2025, 06:17:52 am
content: Those are useful comments; keep 'em coming. I think there is an useful nugget about learning schematic capture here.(I did label the modular parts, except for the PWM (Q1, R5) and Tach (Q2, R2, R7). I think moving them both up, Tach even more, would yield enough space between the two for clear dotted/light outline and label texts.)I do wonder about the need to understand the whole more than understanding the parts, however.You see, I've looked-until-understood about a hundred times as many schematics as I've drawn myself. The way I understand them, is akin to the "ear clipping method" inpolygon triangulationin computational geometry: I isolate a self-contained section, determine how it operates, then mentally replace that section with a "black box" with that operation as its label/description. Then, rinse and repeat, including collections of such "black boxes", until only a few such "black boxes" cover the entire schematic. It takes quite a lot of cognitive effort.I have to do that because I just don't have the cognitive power nor the experience to simultaneously see/parse/understand all details in the whole. (As opposed to say some typoes in written text, that "jump" at me when looking at a sentence.) Do note that I definitely focus on digital logic circuits, stuff with MCUs and USB and logic-level stuff, not analog ones; and that I've not dabbled in analog RF stuff at all.With a "properly modular" schematic, the schematic shows that initial splitting; the hard part of the work is done for me. With fully connected schematics, I have to work that myself. I do not need to cover the entire schematic with a single "black box" — i.e., understand the whole at once — because that is implicit in why I'm looking at that schematic in the first place. Essentially, if I'm looking at it, I've already been told what it is supposed to do. At my skill level, I can only detect errors/deviation from that, when examining the parts, and seeing the deviation from description there. Simply put, one does not need to understand the whole to do DIY hobbyist OSHW microcontroller stuff at this skill level, if one trusts the author at all.And once again, I do not intend this be a defence for split schematics: it is anexplanation why, as I personally see it, doing that myself. Whether one finds that reason compelling/understandable/regrettable/horrible, is for oneself to decide. My experience is way too limited (OSHW MCU circuits) for me to have an opinion outside my tiny niche.I do wonder if comparison totechnical drawingsvs.exploded drawingsis apt here? Their use cases match how I see differently-licensed and -purposed schematics: one is to create the device/part, the other is to understand the parts the device is comprised of.

author: amyk
author_rank: Super Contributor
timestamp: August 10, 2025, 08:19:58 am
content: Quote from: UnijunctionTransistor on August 09, 2025, 02:56:40 pmExactly. The other acceptable use for labels is nets with many connected components, such as supply rails and buses.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 10, 2025, 08:48:27 am
content: Quote from: SteveThackery on August 09, 2025, 10:11:22 amIt depends on how your brain processes the information, and I guess it depends on person.Maybe you like to follow the lines "oh this goes from here to there, and this there and this is here and this goes there..."But my brain does not operate this way: I want to knowwhat things are. "This is the gate drive signal, oh and this reset signal is active low and goes from here to there..." - see? Where things connect are just a small part of understanding.Labelingis the only way to describe that intent. If you have just lines, then you are mentally reverse-engineering the circuit all the time to see the purpose of signals. And that makes non-labeled circuits very difficult to follow - not just the spaghetti effect.Of course, we can have both! With simple enough circuits, spaghetti effect doesn't occur, so drawing all of the lines is OK - just don't use it as an excuse to exclude the net labels.

author: SteveThackery
author_rank: Super Contributor
timestamp: August 10, 2025, 09:25:26 am
content: So, @Nominal Animal, I prefer your fully connected diagram because I can see immediately what the circuit does, and how it does it.Let me use the jigsaw analogy. When I look at the fragmented version it's like looking at a seven-piece jigsaw where the pieces are separate and placed randomly. I have to assemble it (in my head) to see what the picture is. When I look at the connected version I can see the picture straight away. For that reason I honestly can't understand why anyone would prefer to look at the disassembled picture.However, as I've said earlier, this only applies to relatively simple circuits. There is an inflexion point where "modules", interconnected by labels, become helpful. The cost, though, is that the jigsaw is no longer assembled so more mental effort is required to piece it together in your head.Regarding @Nominal Animal's connected circuit, if I were to modify it I wouldconsiderputting the power supply circuitry in a separate module, because that wouldn't really detract from the picture. There are a few other minor tweaks I would do to component positioning to clean it up further.

author: SteveThackery
author_rank: Super Contributor
timestamp: August 10, 2025, 09:32:24 am
content: Quote from: Siwastaja on August 10, 2025, 08:48:27 amIt has emerged in our discussions that there are two uses for labels. The first use is for connecting up separate modules, and that is the usage that is a bit controversial when it is used in trivial circuits (like our newbies so often do). The second is to show theintent, as described by Siwastaja. I think few people, if any, would argue against that. @Nominal Animal has done exactly that in his connected version.It's probably helpful to clarify that when we complain about "labels", it's about their use as inter-module connections in a circuit too simple to warrant a modular architecture.

author: gamalot
author_rank: Super Contributor
timestamp: August 10, 2025, 01:59:41 pm
content: Quote from: Nominal Animal on August 10, 2025, 12:59:22 amTBH, for me, these so-called reusable modules in your circuit diagram have absolutely no value in reuse.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 10, 2025, 02:16:53 pm
content: Quote from: SteveThackery on August 10, 2025, 09:32:24 amMy point was these "two uses" are not really detached from each one - they are the same thing. Connectivityisthe intent. If I have a three-phase MOSFET bridge (e.g. motor controller), labels GATE_A_LO, GATE_A_HI, SW_A, SW_B, SW_C, SHUNT_A, SHUNT_B etc.immediatelytell me not only what these signalsare, but alsowhere they should be connected.And quite ironically, said 3-phase bridge is also the case where actually drawing all of the connections neatly (in a way that is helpful) is nearly impossible; even when the component count is quite small.But then again, you would stilldefinitelyuse a line to connect the lower-FET drain to the upper-FET source - leaving that out and adding two labels (SW_A, SW_A) right next to each other would be a joke.Taken to the extreme, really complex circuits, e.g. in integrated circuits especially digital, are not designed as drawn schematics at all, but with Hardware Description Languages - where connectivity is solely defined by names. Excellent track record - it works.Label-based design is therefore generic and scalable - every circuit can be described by it, and every designer worth their salt should be able to read it. On the other hand, drawing out the connections stops scaling already at quite low (by today's standards) level of complexity, so youneedto start dropping more and more lines, because following the lines is slower than following the labels.Make labels top priority. Use lines as additional aid when they are helpful.

author: amyk
author_rank: Super Contributor
timestamp: August 10, 2025, 08:07:12 pm
content: Quote from: SteveThackery on August 10, 2025, 09:25:26 amFor me, that point is usually when the schematic needs more than 1 page. In which case, as mentioned above, the labels had better tell me where the continuation is.For those who seem to have no problems with fully disconnected "schematics", would you be perfectly happy with reading a completely textual netlist instead of a real schematic?

author: SteveThackery
author_rank: Super Contributor
timestamp: August 10, 2025, 09:05:42 pm
content: Quote from: gamalot on August 10, 2025, 01:59:41 pmExactly! That's why I keep typing "modules" in quotation marks. When newbies do it they aren't modules; they are literally an integral part of the schematic - typically an IC, or even just a connector, FFS, - that has been extracted and then joined up again with labels. This is bullshit; it has nothing at all to do with truly modular design.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 10, 2025, 09:47:53 pm
content: But why don't we give an example of modular for the beginners out there.I can't share it here, but we designed a cute little board that takes ttl and 232 level serial, and converts it USB.Sometimes I only have room for a header, so I use our board to get our debug serial. Sometimes, I can fit the whole thing on the board, with the USB connector, so we cut and paste the basic design into the board, drop an USB connector on the board, and done.Not to say you should only use net ports or connection by net name for making modular designs.But that's what modular looks like. And I have our EE to thank for putting such things together, and for always showing good judgment. And ignoring stupid dogma.Edit:BTW, we standardized on a rotation proof 2x3 for 232, and a rotation proof 1x5 for ttl. That's another helpful tip for beginners. If you have the room (and you almost always do) make basic tooling like this rotation proof.But if we don't have the room, we can always just plug cables into our usb board, and get the info out however necessary on the target. Hope for the best, plan for the worst.In fact, this would make for a great first project, so when you're mucking around on a dev board, and you need to get serial out,, you've got a way to test it, get your protocol going, etc.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 10, 2025, 11:04:36 pm
content: Quote from: amyk on August 10, 2025, 08:07:12 pmHeh; instead of a proper schematic, here's a SPICE netlist. You oughta be able to review and build the circuit from that, right?I mean, if you're some kind of frickin' GENIUS who can visualize the circuit from that text. (Like that idiot savant engineer they just hired.)And no, you can't cheat and open it with SPICE.

author: TimFox
author_rank: Super Contributor
timestamp: August 10, 2025, 11:07:16 pm
content: Quote from: Analog Kid on August 10, 2025, 11:04:36 pmActually, I like to work from Spice netlists, when I use AimSpice to design analog circuits, before going to hardware.The text netlists avoid ambiguities that many have noticed in LTSpice schematic-looking files.However, I usually start with a normal schematic and label the nodes there to generate the text file.

author: SteveThackery
author_rank: Super Contributor
timestamp: August 11, 2025, 12:22:01 am
content: Quote from: TimFox on August 10, 2025, 11:07:16 pmI just knew someone would say that! Tim, you exist on a higher plane than me.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 11, 2025, 01:01:46 am
content: Quote from: John Coloccia on August 10, 2025, 09:47:53 pmMyreply #62contains the exact same schematic twice: once using fully connected style, and once in what I call the modular style; both roughly the first draft (both could do with some refinement, definitely).

author: John Coloccia
author_rank: Super Contributor
timestamp: August 11, 2025, 01:48:10 am
content: Quote from: Nominal Animal on August 11, 2025, 01:01:46 amMy personal opinion is that it's broken up to the point that it's hard for me to see what's going on.And the original version has too much going on and it's hard to immediately see the separate functions.For my own tastes, it didn't strike a good balance. Please don't take that as looking down on it. You have to do things in a way that speaks to you and the people you're working with. My only frame of reference that's meaningful is what me and the people I work with find pleasing. I'm not so arrogant to think that what works for us works for everyone.I could work with either one. The first one, I would mark up with a highlighter/pen and break it up myself. The second one, I might draw some lines with a pen. Whatever. I could work with either. I wouldn't draw either. Personal preference.edit:Like specifically, I don't see the purpose of breaking out the PWM or TACH on it's own. Yeah, decouple from the processor if you really want to, but just put it at the connector, all wired up. Don't make it it's completely own thing, both input and output side. It only goes one place. Put it where it goes, but I see the value in not cluttering up the processor with it.I personally like breaking out the i2c. Put all the i2c crap at the connector, because you have a dedicated IO for it....so why clutter up the processor with that?I see no reason to break out the mcu_adj thing.Doing this sensibly really requires some good taste...experience.... Maybe geting burned by schematics that are impossible to follow, for both reasons. There's a really good balance in here somewhere. And ultimately, as pros, you simply work with what you're handed and you figure it out regardless.Believe me, it doesn't matter what you do. You won't make everyone happy. You won't even make a lot of people happy. The best you can hope for is to do something EVERYONE can understand, and you just hope they're not too angry.

author: amyk
author_rank: Super Contributor
timestamp: August 11, 2025, 02:42:58 am
content: Quote from: John Coloccia on August 10, 2025, 09:47:53 pmTake a look at a random laptop/PC schematic for an example of modular where it makes sense; but clearly that's far beyond the realm of "beginner", which is why I don't think it's a good habit to get started with.

author: TimFox
author_rank: Super Contributor
timestamp: August 11, 2025, 02:43:42 am
content: Quote from: SteveThackery on August 11, 2025, 12:22:01 amI've been doing Spice since the late 1970s, starting with Hollerith cards.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 11, 2025, 02:52:30 am
content: Quote from: amyk on August 11, 2025, 02:42:58 amIMHO, the biggest mistake with teaching is teaching "beginner" VS "pro".Good practices are good. And modular or not is not relevant to good use of ports and net names.... In this particular example.People don't give beginners enough credit.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 11, 2025, 03:25:34 am
content: Quote from: SteveThackery on August 10, 2025, 09:25:26 amYup, and even AI with itsvoltage-to-fire convertersgets that one right - you can immediately see what that circuit would do if a power source is connected.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 11, 2025, 03:30:11 am
content: Quote from: gamalot on August 10, 2025, 01:59:41 pmThat's been puzzling me about the reuse case too, if I want to have an optoisolated something-to-whatever then I go to the opto manufacturer's data sheet and use the sample circuit from that, I don't go out onto the Internet and... actually I wouldn't even know where to begin to try and track down someone else's jigsaw puzzle to reuse parts of. It seems like a strawman argument.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 11, 2025, 03:33:36 am
content: Quote from: SteveThackery on August 11, 2025, 12:22:01 amThere's always one :-). Friend of mine wrote his entire thesis in Postscript. Not "PS as output from LaTeX" or similar, but raw Postscript. He'd probably also do circuit diagrams from netlists...

author: Analog Kid
author_rank: Super Contributor
timestamp: August 11, 2025, 03:36:10 am
content: Quote from: 5U4GB on August 11, 2025, 03:30:11 amThat's why I suggested making a library of modules if those are useful to you; you can incorporate them into larger circuits and not have to create them from scratch.Such a "library" could simply be a folder containing the module files. I use a similar system with small snippets of code which I can copy into source code; very handy.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 11, 2025, 03:38:13 am
content: Quote from: 5U4GB on August 11, 2025, 03:33:36 amPostScript!Are you familiar with Don Lancaster's work? The guy writes PostScript code like it was C or BASIC!

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 11, 2025, 04:26:02 am
content: Quote from: John Coloccia on August 11, 2025, 01:48:10 amNo worries; I posted it here to learn.Quote from: John Coloccia on August 11, 2025, 01:48:10 amThere are variances. PWM frequency is about 25 kHz, but TACH pulses (two per rev, and I don't use fans faster than 3000 RPM) top out at 100 Hz. Most current fans, particularly Noctua ones, also prefer the TACH signal to be pulled to 5V and not 12V (although 12V will also work). Discussing such variances is easier when the two are separate, as one is less likely to mis-apply a TACH detail to PWM, and vice versa.Quote from: John Coloccia on August 11, 2025, 01:48:10 amWhen one doesn't have a need for I2C, one can also leave that section not populated.Quote from: John Coloccia on August 11, 2025, 01:48:10 amThe potentiometer is not mounted on the PCB; it is intended to be remote (I use a 3-pin PH2.0 connector). R6, the wonky 220Ω, is there so that if there is no pot at all, or it is disconnected, shorting any of the three connections won't do anything too nasty. The resistor will drop 5V, and so generate about 1/8th of a watt of waste heat, but that's it. If the I2C is used for one or more temperature sensors (LM75 or similar), then one can omit the mcu_adj altogether and use the temp sensor to control the fan speed.In a very real sense, it is not even intended to be one specific schematic design, and more like my view on how to build this kind of fan controller circuits using a microcontroller (that controls the fan RPM, and not just the PWM duty cycle).Quote from: John Coloccia on August 11, 2025, 01:48:10 amDefinitely, yes! And alsoanalysisof why something seems to work well, and why other stuff does not. Which is why I'm posing the questions I am, and trying to explain my reasons for having done those schematics that way. Not to ask for praise or excoriation, but to dig in to the underlying reasons behind the opinions; tounderstand.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 11, 2025, 05:07:38 am
content: Quote from: Nominal Animal on August 11, 2025, 04:26:02 amWhy aren't they just laid out and connected directly to the connector? There's no value in keeping them as separate chunks. It just makes it harder to follow.Quote from: Nominal Animal on August 11, 2025, 04:26:02 amThen why is it on the schematic? The header/connector/through holes/whatever should be on the schematicLike, it doesn't bother me having a micro connected to a bunch of nets or ports.It bothers me having tiny little pieces scattered everywhere, and no obvious inputs or outputs anywhere.Stuff like this should tell a story, be it software or schematics. But that's just my opinion. Honestly, I really don't think it's easy to do it well, either with hardware OR software. We constantly struggle to do a good job, and constantly struggle to make things better if we see ways to do it better in the future.edit:I'll say again, it's important to have goals in mind. If you're making the schematic for yourself, then do whatever makes you happy. If you're doing it to convey something to others, you have to guide me. Give me a fighting chance to understand what you had in mind. And there's going to be a balance between a rats nest of wires, that makes no sense, and a bunch of disconnected components, that also makes no sense.There are a ton of different ways to express intent in any reasonably modern tool. Just like software....or writing a novel. Tell me a story

author: Siwastaja
author_rank: Super Contributor
timestamp: August 11, 2025, 05:14:30 am
content: Quote from: amyk on August 10, 2025, 08:07:12 pmThings with complexity of billions of transistors are done this way and it works. Of course, these HDLs are more than just a "netlist", but the principle is the same: connectivity described by matching names. Of course, correct module boundaries are essential (abstraction) to make this work. Which is what you can do also on schematic level.Same for software. Graphical (schematic-like) software development suites have existed for a long time but for really complex work they don't work and professionals always go back to languages.So yeah, I would be happy to, but it would require a new mindset and some learning, and getting used to. I'm perfectly sure it would work really well even for simple circuits, but it's of course a big jump. I'm not seriously suggesting it, but as a thought experiment - why not.In fact, at some point ~15 years ago my design process involved using Circad'98 EDA which had quite crappy Schematics capture features - but I kinda liked the PCB layout tool. My workflow involved placing components (so just footprints) directly on the layout tool and adding connectivity by editing pads and typing in net names; that also added rastsnest and list of unrouted nets, just like in conventional schematic -> layout workflow. Worked very well for me for quite some time, after which I started using Altium, and the "usual" workflow.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 11, 2025, 07:04:54 am
content: Quote from: Analog Kid on August 11, 2025, 03:38:13 amNo, I wasn't aware of that. I was pretty familiar with his earlier work, I assume anyone who was into electronics and computers in the 70s and 80s would be, but wasn't aware of the stuff he did with PS.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 11, 2025, 07:11:10 am
content: Quote from: Analog Kid on August 11, 2025, 03:36:10 amWould that work though? You'd potentially end up with something like Stackexchange, full of... well, see Stackexchange. And even if they were curated, you can't just pull a module, say a particular type of DC/DC converter for a specific application, out of a box and drop it into a completely different circuit where it'll magically do the right thing. You can use it as a template with lots of explanatory text covering what you need to change to do different things, essentially making it a section of a vendor data sheet, but I'm not sure you can just assemble a full device out of various black box modules like they were lego.

author: SteveThackery
author_rank: Super Contributor
timestamp: August 11, 2025, 09:25:34 am
content: Quote from: Nominal Animal on August 11, 2025, 01:01:46 amMy point is that extracting an IC to a separate box and connecting it with labels does not make it a module. It just makes it dismantled. That is what we see newbies doing all the time: theydismantlethe circuit into pieces.Just because a schematic looks like unassembled jigsaw pieces, that does not make it "modular".

author: Siwastaja
author_rank: Super Contributor
timestamp: August 11, 2025, 09:32:15 am
content: Quote from: SteveThackery on August 11, 2025, 09:25:34 amSomething connected by labels is not disconnected or dismantled. It's just connected in adifferent waythan you are used to.No one has ever provided any explanation (let alone proof) why connections by labels would be objectivelyworsethan connectivity by wires. It's just against their own intuition. You need to understand that it's not universal truth, and many others disagree.It is easy to show, however, that wires do not scale, and labels do. It is also easy to show that labels are much easier to rearrange when connections need to be changed, which is often the case in designs where a large microcontroller or FPGA connects to hundreds of signals, and pin mappings are under constant reordering during PCB layout work. No one in their right mind would be constantly redrawing all the lines, and EDA tools cannot automatically update the lines either (or if they do, they produce total mess) so lines are out.So far we have established thefactsthat:* You can do everything with labels,* You can't do everything with wires,And in the cases where both are applicable, it is, IMHO, just matter of taste; preference; what one is used to, with no objective truth which one is better.I find it quite interesting that some people are, year after year, unable to evenacceptthe facts that:* connections by labels ARE still connections, just in a different way,* many people honestly find them well readableI can well accept the fact that this is matter of taste, and different opinions exist, and that's fine.Extreme examples of either wires or labels failing to convey how things connect are possible to create artificially, of course.

author: gamalot
author_rank: Super Contributor
timestamp: August 11, 2025, 09:35:19 am
content: I finally had some time to redraw the circuit diagram for this fan PWM controller. I know everyone has their own preferences, and the EDA software used can vary, but I think the principle is consistent.The two circuit diagrams in post #62 seem to me to be at opposite ends of the spectrum. The first diagram radically connects everything possible, even the power and ground rails! The second diagram cuts the circuit down to the smallest possible unit, which is practically worthless. Generally, a more balanced approach should be adopted, and readability is the most important criterion.I've attached my own circuit diagram (may contain errors). I'm not trying to say mine is better, but simply to illustrate my concept. You might find it lacks the modularity you'd expect, but to me, such a simple circuit is a module in itself.A little off topic, as far as I know, the TACH output from the fan is open-collector, so Q2 is unnecessary. I'd use a pull-up resistor to the +5V rail instead.

author: SteveThackery
author_rank: Super Contributor
timestamp: August 11, 2025, 09:58:52 am
content: Quote from: Siwastaja on August 11, 2025, 09:32:15 amWhat a ridiculous thing to say! Nobody on the planet says labels aren't connections!The situation is simple: wires and labels both represent connections.1/Wires literally connect components together on the schematic.2/ Labels do not.Labels require the viewer to connect the components in their head.3/ Both represent electrical connections as far as the software is concerned.The facts 1/ to 3/ cannot be disputed. The only thing to be discussed is which system is more appropriate, and which is preferred by an individual viewer. Both of these are subjective, so there is no definitive right answer.However, I think it is reasonable to acknowledge that drawn wires convey the intent of the circuit more readily than labels simply because the viewerdoesn'tneed the extra step of connecting them up in their head. But there is an inflexion point in complexity where drawn wires become confusing and obfuscate the intent of the circuit. In that case labels work better.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 11, 2025, 10:06:25 am
content: Quote from: SteveThackery on August 11, 2025, 09:58:52 amThis difference I don't agree with. Both lines and labels are just symbols; neither "literally" connects anything:in both cases, the actual connection happens in your head.It is an easy mistake to make. For a short line between two points, it seems obvious there is a connection; the line is such an easy, primitive graphical element: even a 3-year old can see they are connected, even if they can't read yet.But make lines longer and longer, and this literal and automatic connection fades. You need to start following the relevant line with your eyes / finger, and be careful not to mix it with another line.And on the other hand, if you see label +5V, for someone who can already read, it is immediately and intuitively clear this connects to the +5V supply - no line needed to communicate that at all. See Nominal's above "extreme example" and compare it to the redrawn "golden middle road" version by gamalot which uses labels for power - isn't it quite agreeable to say that it is now easier to see where the power and ground are flowing?

author: RoGeorge
author_rank: Super Contributor
timestamp: August 11, 2025, 10:36:43 am
content: Aside from the wrong practices when drawing schematics, a lot of what bothers many of us today comes from the large scale integration of current ICs. The time when schematics were made of individual tubes, or transistors, opamps, or gates, is a thing of the past.The complexity of circuits and schematics exploded when compared with half a century ago. Not advocating for messy schematics. The way to go (for schematics with large scale integrated circuits), I think, is to maybe put a blocks diagram first, so to make sense of the functionality of the entire schematic.After all, what bothers the most in a badly drawn schematic is not the spaghetti interconnection of lines, but the difficulty in identifying the functional blocks/stages of that schematic.Aside from that, there were a few (failed) attempts to standardize the schematic drawings. For some unknown reason (my guess is those were noobs), instead of going with the de-facto industry drawing standards, the committee got creative, and invented new really ugly and hard to read symbols and drawing rules (for example the I3E for logic circuits, like shown here:https://www.ti.com/lit/ml/sdyz001a/sdyz001a.pdf). Only a complete outsider totally unaware of what was before would have come with such ugly symbols.

author: gamalot
author_rank: Super Contributor
timestamp: August 11, 2025, 10:48:37 am
content: Quote from: Siwastaja on August 11, 2025, 09:32:15 amFor "large" processors or FPGAs (generally those with over 100 pins for me), connecting every signal line individually is madness. Using net labels, buses, or a combination of both is a more reasonable approach. This assumes that the signals are bulky and well-grouped. If there's a special case, such as one of dozens of signal lines (like an address bus) that needs to be connected to an additional location, I'll use a wire to connect it, even if it's on a different page.As for remapping pins during PCB routing, that's not a simple task, as it involves the schematic, PCB layout, and even software development, all of which are likely done by different people. For hobbyists like myself, I try to match the pinout on the schematic symbol to the physical layout whenever possible, and consider easier routing options while I'm still in the schematic.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 11, 2025, 01:13:31 pm
content: Quote from: RoGeorge on August 11, 2025, 10:36:43 amIt is an important difference. Now we have much fewer components, and much more simple connections (wires). And with programmable devices, those connections become flexible: so that during PCB routing it is commonplace to choose any pin out of a large group of candidates. There is PCB EDA automation for this, or one can do it manually by moving the labels around. Redrawing the lines is simply totally impractical.Almost all wires today have some easily described purpose, which also loosely specifies the source and target: e.g. ADC_MISO would be part of SPI bus from ADC to any of numerous MCU pin options. People who actuallydothese designs instead of discussing how nice it was in 1970's, quickly transition into the horrible schematics because they are easier to draw, easier to read, and easier to maintain.Attached is a small excerpt of an earlier design of mine. I'm sure there's a lot to be improved in the style, but replacing labels with continuous lines, even for stuff on the same sheet, is not one of them. And it's worth noting these labels were moved around approx. 9000 times during PCB layout. (I didn't use Altium's pin swapping functionality; swapping the labels manually is fine to me, not too much work.) It's also worth noting through that I definitelydiduse wires and un-named nets, too, in some places where they make sense.With that schematic, it is trivial to write the firmware (because pin mappings can be seen at a glance), or excerpts of connector pin-out posted to others, without having to track down where the lines are going. People who actually design stuff will quickly recognize these advantages.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 11, 2025, 01:25:18 pm
content: Quote from: gamalot on August 11, 2025, 10:48:37 amThis is why I believe that one person handling schematic, PCB and firmware is a very good idea - if just capable enough person is found. Only when going from firmware to higher-level software (user interfaces, server side stuff, whatever) there is then a good separation of responsibilities, where a simple, well-designed API can do wonders.But firmware <-> layout <-> electronics design leak like madness in all directions. If done by separate people, they need to understand quite a lot of their respective fields, and communicate intensively during the design phase. For example, layout/schematic guys need to understand STM32's DMA channel mappings, that while SPI3 is available on pins X, Y and Z, and while SPI3 does support DMA, it doesnotsupport DMA on pins X, Y and Z but A, B, and C instead if UART2 isalsoused at the same time with DMA on totally unrelated pins F and G.Having one guy do all of them also works because the tasks do not parallel very well on the calendar. While youcanstart firmware development in parallel with board design, you have to work with some temporary special measures which you then need to remove; you get to full speed after HW design is locked and prototypes on your table. As one guy working with schematic + layout + fw, I just fully concentrate on the schematic + layout part while making sure that any pin mappings, DMA channels and whatever are compatible with the future firmware, and then with prototype boards ordered and in the making, I start working on the firmware, and then it's mostly next year or two or three firmware work with occasional minor hardware tweaks, if even that.

author: SteveThackery
author_rank: Super Contributor
timestamp: August 11, 2025, 02:10:29 pm
content: Quote from: Siwastaja on August 11, 2025, 10:06:25 amWrong again! You are confusing "literal" with "physical". The line in this picture actually does,literally, connect R and C.Quote from: Siwastaja on August 11, 2025, 10:06:25 amOf course, of course! Do you realise you are re-statingexactlywhat I've been saying for the last couple of pages? Connect with lines for simple diagrams, connect with labels when the lines get hard to follow.What's going on, mate? Is this some psychological need to "win", even when we are both arguing the same thing? Or last-wordism, maybe? It looks to me like we are in "violent agreement".As for me, I can't believe anyone in this thread wants me to say the same thing yet again. The first six times should be enough. So I won't.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 11, 2025, 02:43:48 pm
content: Quote from: SteveThackery on August 11, 2025, 02:10:29 pmNo, not at all; just that I'm probably mixing up different replies from different people in my head; just like those lines are easy to mix when they are too long. It seems we are in full agreement.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 11, 2025, 03:34:24 pm
content: Quote from: gamalot on August 11, 2025, 09:35:19 amI'd say that strikes a nice balance, although I'm not entirely keen on all the TV aerials with +5V above them. One thing I am certain of is that the jigsaw-puzzle version is crying out for a visit from the Narn Bat Squad.

author: smashedProton
author_rank: Frequent Contributor
timestamp: August 11, 2025, 04:31:01 pm
content: I had worked for a company called FSIP as an electronics repair technician. There were internal schematics that were internally produced reverse engineered drawings from the board. You can tell from the way they were drawn that the engineer didn't have a single clue as to how the controller worked. AC controllers had all the high side drive drawn on one page, low side drive on the other page, upside down. Wrong symbols. Inputs on both sides and outputs as pins in the middle. The wild thing was every product they serviced was pretty much the same thing. Its all some combination of embedded control, IR2110 gate drive, some kind of isolated gate switch, a 15v supply.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 11, 2025, 06:34:18 pm
content: Yes, schematic conventions matter.Circuit flow from left to right.Positive power bus on top, negative (ground) on the bottom.Upside-down PNP transistors.Etc., etc.And for chrissakes,lines connecting things on the page!, assuming a not-overly-complex or large circuit.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 12, 2025, 06:55:06 am
content: Quote from: gamalot on August 11, 2025, 09:35:19 amWell,Iam saying yours isobviously better, because it conveys the information I wanted to convey, and adding dotted/faint outlines to any sections one wants to highlight will not make it too cluttered (when e.g. discussing features or specific parts of it).I just haven't drawn enough schematics to do as well as you have here, that's all. I'm sure that even I can get there, given enough experience; wouldn't you agree?Of course, just like with any art or craft, some learn quick, or seem to have a natural knack for it. For schematics, I do not. For me, it's the result of hard work in learning the theory first, then by analysis of existing work, advice from old hands, and so on. You could say that if I can do it, any average Joe can.Quote from: gamalot on August 11, 2025, 09:35:19 amOriginal Intel 4-wire PWM Fan Specsfrom 2005 dorequirea pull-up to +12V ("shall", "will").Most current 12V PWM fans do support a pull-up to +5V, see e.g.Noctua Fan PWM Specifications.I just prefer the approach that is safe either way, NX138AK switching pretty decisively down to +2.5V or lower, and the Vgs handling ±20V.Even if I moved the pull-up to +5V instead of +12V, I'd probably still use an NX138AK, because that way, the MCU will not be harmed if the TACH signal gets accidentally shorted to the +12V rail. (This shows my "design methodology": I do one-off hobbyist parts, so making them resistant to fumbling and such is valuable to me. See the digital isolator discussions for another aspect of this.)Quote from: SteveThackery on August 11, 2025, 09:25:34 amA module isby definitionaself-contained component of a system, often interchangeable, which has a well-defined interface to the other components.In my split-apart design, every separate part is self-contained, with well-defined interfaces to the other components (using net label boxes). You can replace any of them without affecting the others, if you abide by the component limitations. For example, you can reduce the voltage rail to 3.3V, only affecting the MCU (AVRs can run faster at 5V than they can at 3.3V). You can connect any number of PWM or TACH modules to your MCU, as long as you have suitable pins. You can even remove any module that does not have a net label box on the right side (outputs) that some other module depends on, if you don't need the facility; either by not populating the related components, or by removing it from the schematic.This is my definition of modular, across all disciplines, not just in electronics or programming. I do not know a word that describes this as well as "modular" does.Newbies often make the error that they disregard the interdependencies. What they draw separately, often depends on some other separately-drawn parts, as exemplified well by the horrible example 5U4GB showed earlier. This isan error. The corresponding error newbies do with fully-connected schematics is having most traces cross each other, components in silly orientations, and so on.So yes, it is closely related to one being a newbie or just a hobbyist, with not that much experience in schematic design.However, I do dispute the idea that there is no use to it, becauseto me, a hobbyist-grade schematic properly broken out in what I call modules, is more useful than a hobbyist-grade fully-connected schematic.Do note that I do try to apply the typical conventions, like signal flow from left to right, positive power bus on top, negative or ground on bottom, and so on. I'm notignoringanything I know of that seems to work, but am limited by my skill level.As I explained earlier, I doreadschematics a lot, and I might say I'm pretty good at that already. (I'm similar with sheet music: I can read them pretty well, even though I cannot playanyinstrument even at a hobbyist level.) Because of other personal stuff, I do keep close track of my cognitive performance, and I've found that among hobbyist-grade schematics, I need to spend much less time with modular schematics than I do with fully-connected schematics, to fully understand both the overall schematic as well as each feature (or module) and their limitations; and how to extract useful snippets out of it — and to determine what parts may be involved in what kinds of physically observed problems. (Like I've said before, I like to help others by drive-by bug-hunting, because I'm mentally unable to commit to a specific project or contract, even an implied social contract.)Because of my limited experience, I do not know how many are similar to me in this. I do know fromoshwlab.coma few designers that seem to think along the same lines I do based on their published designs (wagiminatoraka Stefan Wagner, for example); and suspect from many useful OSHW schematics I've seen following same or very similar principles that in this niche, being this way is relatively common.So, no matter how much one insists that even modularly separated schematics are worse, I am saying that claim is objectively incorrect: for my kind of DIY OSHW hobbyist with very limited EE or schematic design experience, the modularly separated schematics are more useful than fully connected ones are. This is an observable fact on my own part, and supported by lots of indirect evidence in the OSHW niche.To repeat, the way newbies sometimes "atomize" schematics into individual parts, I do consider an error; one borne out of inexperience, and not understanding the necessity of tracking dependencies. I classify them with badly done fully connected schematics, and copy-paste spaghetti code in the software field. This is not in question. However, that being a very easy trap for young players to fall into, does not mean modular schematics should be classified the same; reasons above.Do note that while I definitely see the utility of modular schematics in DIY OSHW niche, I am emphatically not claiming it applies to anywhere else. The needs are very specific, and are obviously not generally shared, as clearly stated by some members here. To me, that just indicates that it may not apply generally. However, it does not mean that it does not apply in the DIY OSHW niche!The issue, for me, is when hobbyists starting in the OSHW niche progress to other fields. (It is very similar to someone learning programming in a specific environment, in a specific operating system, and then expanding to others, and finding out that whatever they thought were fundamentally true facts, turn out to be just quirks in that original one.)If I were to understand the underlying reasons for the differences of opinions regarding different types of schematics, I could help other hobbyists by explaining these before they expand outside the OSHW niche. Just like I've explained how software licensing works, and which licenses allow combining copyleft-licensed open source and proprietary non-open source, and how.This is useful.It is even possible that the reverse might happen, the best practices of OSHW modular schematics becoming more widely used; but then, I do want others to know how to determine what works (or has worked well) and what doesn't (hasn't worked well), from observable facts, instead of relying on their instincts and gut feeling and localized niche experience.The end result, say what kind of consensus there might be in ten or twenty years about schematics, I'm not that interested in: I have zero emotions invested in that. To me, it is, and should be, up to people themselves to find out and make their own mind about such things. I just want to ensure they have the best understanding of the entire subject, including context that often is ignored and disregarded, before they make up their minds. Even if it ends up just being reading this thread, or similar threads elsewhere about the subject.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 12, 2025, 07:10:17 am
content: Quote from: Analog Kid on August 11, 2025, 06:34:18 pmSpeaking of that layout, it's very 1970s/80s electronics-magazine style, see for instancethese examples, almost like sideways ladder diagrams with Vcc and GND top and bottom and the rest of the circuit flowing from left to right, input to output. Inlater formsthey've still got the common Vcc bus but individual GNDs rather than everything tied to the same bus. I rather like that form, there's usually only a few things with Vcc coming in but lots of GNDs so you've got the flexibility to have them everywhere.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 12, 2025, 08:38:08 am
content: In that vein: showing good examples and listingwhyone considers them good/better, is definitely useful and highly appreciated.(Just having general references to reference books or magazines, or just links with "these are nice" isn't that useful, because half of the matter is understandingwhyone would consider a particular schematic good. Blind emulation is not equivalent to actual learning!)

author: EPAIII
author_rank: Super Contributor
timestamp: August 12, 2025, 09:36:49 am
content: S B DQuote from: Analog Kid on August 05, 2025, 06:42:03 am

author: EPAIII
author_rank: Super Contributor
timestamp: August 12, 2025, 09:45:32 am
content: The last two are not overly bad but the first three could benefit a lot from the signal flow ideas I expressed above.I will say it again, a schematic should SHOW you how the circuit works! One way to do this would be to start with a good block diagram and then "explode" the blocks in place, keeping the block labels near the sections of the schematic that they describe.Quote from: ifonlyeverything on August 05, 2025, 09:15:30 pm

author: gamalot
author_rank: Super Contributor
timestamp: August 12, 2025, 11:46:09 am
content: Quote from: Nominal Animal on August 12, 2025, 06:55:06 amThe Intel documentation you're looking at is about the fan's technical specifications, which state that the fan's open-collector or open-drain output circuitry must be able to withstand the 12V voltage from the motherboard. This isn't a requirement for the motherboard circuitry.I've seen motherboard circuits where some directly pull the TACH signal up to a logic high level (such as 3V), while others pull it up to 12V and then pass it through two voltage divider resistors to get the appropriate logic level. The latter approach should take into account the situation you're worried about accidentally shorting to 12V.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 12, 2025, 11:57:33 am
content: Quote from: gamalot on August 12, 2025, 11:46:09 amI agree with this. Requirement for the motherboard side to pull up to 12V would be absolutely ridiculous, and it is hard to see any hardware circuitry on the fan side which would cause this sort of limitation; open-drain/open-collector outputs always have a maximum voltage rating, never a minimum. Then again, specifying that motherboardsmaychoose to pull to up to 12.6V, and thus the output transistor used in the fan must withstand that voltage, is very sensible thing to do.The specification must be poorly written, and I would create "technically non-compliant" design, pulling up to 3.3V or 5V without blinking an eye; poor choice of words in standards and documents (like datasheets) is surprisingly common, and as some wise men tend to say, reality trumps theory any day. Besides, I'm not sure if it's even "technically non-compliant", because the scope is: "Fan requirements" - not motherboard requirements.

author: SteveThackery
author_rank: Super Contributor
timestamp: August 12, 2025, 12:04:13 pm
content: Quote from: Nominal Animal on August 12, 2025, 06:55:06 amDespite being a modest chap, you aren't a newbie. I think your explanation of modules is spot on. And I'm sure you will agree that most newbies don't have that level of understanding, hence pulling out an IC, or even just a connector, is not modularising their design. It is merely disassembling it (and often making it an unintelligible mess).

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 12, 2025, 03:36:52 pm
content: Quote from: gamalot on August 12, 2025, 11:46:09 amCorrect.I just don't have enough experience to tell how fan manufacturers read those specs, so prefer to play it safe with one-offs.Quote from: gamalot on August 12, 2025, 11:46:09 amYes, it would.I'm not exactly sure what the total resistance should be, however. Something like 1mA tach signal current sounds suitable (considering the wires are flapping in the wind, and likely will get coupled with some noise), but I'd like to test a few different fans to make sure of that first, before deciding on proper values for the three resistors. For an one-off, the MOSFET is easier/safer/leaves fewer questions. And I only pay0.04€ per NX138AKR at Mouser(3.80€ for a lot of 100).Quote from: Siwastaja on August 12, 2025, 11:57:33 amSee, this is exactly whatpractical experiencegives one.I agree the Intel spec is poor (and probably not written by an EE at all), but like you said, this is common in standards and datasheets. I lack the experience to evaluate what that means in practice.Quote from: SteveThackery on August 12, 2025, 12:04:13 pmDefinitely so — butnobodyhas claimed those kind of schematics are any good. It is just the easiest trap to fall into. (Compare to say not properly organising and commenting ones source code in programming, because programming courses do not bother teaching how to write useful comments, or to check return values and errors, for some reason.)I once had to for a couple of years maintain and extend a horrible code base written in Perl by people I like in real life — literal copy-paste spaghetti — and still won't voluntarily touch Perl code. I do understand howhorrible schematicscan put off one from helping newbies, and starting threads like this one.Because those "atomized" schematics can still be used to create a PCB, the newbie authors may simply not believe you when you say such schematics are horrible, because in their very limited experience, theydowork: they used it to make a somewhat working PCB.I don't like relying on authority at all, and would prefer to have a convincing factual argument that even a newbie can understand. Thus far, I can easily explain why "atomizing" won't work in the long term — like 5U4GB's horrible example shows, the interactions between the separate parts can easily make you miss otherwise obvious flaws in the design; like crafty obfuscation in C code —, and how conventions like flow from left to right, more positive rails above, zero/ground and negative rails below, make the schematic easier to understand; these are even easily demonstrated. Anything beyond that still stumps me. Thus, my advice only leads to modular designs, which I'm not convinced is best option outside open source hardware designs (where the purposes differ).Why worry about what newbies do? Because once they "learn" something, that tends to stick. Telling someone with a few years of experience that they're doing it wrong just makes enemies. I'm sure you can see the similar in the software development world.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 12, 2025, 08:05:53 pm
content: Quote from: Nominal Animal on August 12, 2025, 03:36:52 pmYes, absolutely, which is another good reason to oppose the unnecessary use of atomized, split-apart schematics.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 13, 2025, 03:42:14 am
content: Calling them "horrible" won't have much an effect, though. I personally need a better argument, an actually useful one to newbies.

author: SteveThackery
author_rank: Super Contributor
timestamp: August 13, 2025, 11:46:49 am
content: Quote from: Nominal Animal on August 13, 2025, 03:42:14 amWell you only have to read the thread to find the arguments about appropriate use of lines vs labels, linesandlabels, and that dismantling a drawing is not the same thing as modular design.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 13, 2025, 12:13:25 pm
content: Quote from: SteveThackery on August 13, 2025, 11:46:49 amBut quite interestingly,reducingnumber of lines is a pre-requisite for modular and scalable workflow. Which is exactly why it's so popular nowadays: people, especially beginners, mimic what they see - sometimes in wrong contexts.My issue with this whole thing is some greybeards give poor oversimplified advice of "that's ugly, connect all of them with lines", usually misidentifying the real challenges with the schematic and offering a wrong solution as a silver bullet.Despite what you say, "dismantling" the schematic by taking e.g. let's say an accelerometer IC, detaching it from the microcontroller, and only connecting it with labels and zero lines,isa step towards modular design. Definition of modularity lies in reconfigurability: that things can be swapped, replaced, copied easily. And that requires remapping of IOs - and that is approximately 1000x faster to do without the lines.Try it. Swap the accelerometer to different IO pins of a microcontroller. A few seconds with labels. With wires - in lucky case the pins are next to the old ones and you just drag and drop. Average case, you end up deleting some lines and redrawing them completely, trying to keep it tidy and cross as few other lines as possible. Worst case, you redraw large part of the whole schematic.Add two more accelerometers and the whole line concept totally breaks apart. It becomes a horrible mess. By making a large mug of coffee and spending the afternoon with it, you can maybe make it nice and tidy with lines, but that's not time well spent.Maybe the beginner did not know how to instantiate a sub-module or "schematic component", or use repeat statements, or whatever (EDA-specific), so maybe they just usedcopy-paste. But as far asmodularityis concerned, copy-pasting the accelerometer and incrementing a suffix number in net labels is way way better than having to spend an afternoon redrawing lines. So while not perfectly modular, it is serious step towards modularity. Which is agood thing.Now, let's say each accelerometer uses power supply bypass capacitor, and series resistor on its MISO pin. These you would place right next to each accelerometer -and connect with wires, because their purpose is tightly coupled. Here a beginner could go too far in "dismantling".TL;DR; some amount of "dismantling" is a prerequisite for modular design, and as such helps drive the design into modular direction.

author: TimFox
author_rank: Super Contributor
timestamp: August 13, 2025, 02:21:36 pm
content: Quote from: Nominal Animal on August 13, 2025, 03:42:14 amI once had a detailed discussion with two Japanese colleagues, who often asked me about English, about the difference between “horrible” and “terrible”. I think the question was about which term to apply to their boss.We decided that Godzilla was terrible, but the bloody mess of stepped-upon bodies in his wake was horrible.

author: SiliconWizard
author_rank: Super Contributor
timestamp: August 13, 2025, 02:33:37 pm
content: When it comes to schematics and net labels, as always, I think common sense and usability should prevail.Some people seem to radically hate net labels entirely, while some others seem to abuse them.IMO, common sense is in a usable middle ground. We're used to making sense of "analog" schematics with direct wiring and proper symbols (not just boxes with pins), so for the "analog" parts of a schematic, it makes sense to favor direct wiring except for the rare cases where there are just too many crossing wires, but limit the labels to a healthy minimum.When it comes to digital signals though, it's often the other way around, except maybe for the "discrete" logic, for which we are more used to meaningful symbols (like logic gates) and direct wiring. But for connecting a large number of digital signals between two chips, labels are often best - not just to make the schematics cleaner, but also as a way of documenting the signals instead of having to follow a sea of wires. So, it's all in the use case.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 13, 2025, 02:56:12 pm
content: Quote from: SteveThackery on August 13, 2025, 11:46:49 amYou're arguing about your own preconceptions, ignoring what I've been talking about completely.See:A schematic where every component is separate is a horrible schematic, an error newbies often make. They are not modular. Nobody is defending those. To get newbies from making these, we need to give them good advice on how to do better. "Just connect everything with wires" is a command or an opinion, not rational advice with a factual basis. I'm looking for rational advice with factual basis, because that is what tends to work.Only when a schematic is split into parts where each separate part is self-contained, interchangeable, and has well-defined interface to the other parts, it is a modular schematic. I've already explained that in specific schematic use cases (OSHW MCU/SoC schematics), these are observably better than fully-connected schematics. This is an experimentally and statistically verifiable observation, and not just an opinion. Your "non-fully connected schematics are all horrible" assertion is an opinion, lacking any rational explanation or basis (yet).Please, don't just assume the two are the same thing. That is an oversimplification and a horrible error on your part, like throwing out the baby with the bathwater, or calling anyone who disagrees with your current opinion an idiot. It makes you look silly, and reduces the usefulness of this discussion for everyone.(Note: I do not claim that modular schematics are always useful. They could be, or not; I just don't know. I am not defending their use anywhere else. I only know that in that niche, they are more useful than fully-connected schematics to most participants. Currently, if I were to give advice to an even more newbie than I am about schematics, I have rational reasons and good arguments for making the schematics modular, but not for making them fully connected. I am looking for any rational reasons, the reasons that have caused you to have the current opinion, rather than your opinion alone, so that I could give better advice.)Quote from: SiliconWizard on August 13, 2025, 02:33:37 pmAbsolutely.However, even that is not a very convincing argument for a newbie making schematics where everything is separate, but is still getting functional PCBs manufactured. The arguments thus far in this thread are shrugged off with"Who cares? The PCBs work, don't they?", with the reasoned arguments I can see only pushing them as far as making each separate part self-contained (which leads to modular schematics, not fully-connected ones).I do believe convincing, reasoned arguments are needed, because unless we teach them to do better, they will continue to do what they do now since it seems to work, and the culture/art/trade of schematics will slowly degrade into component lists. Something similar is happening to written language due to instant messaging; many people today have difficulty reading and comprehending text longer than a couple of paragraphs. As the newbies' potential mentors, I think it is worth the effort to try and steer them toward better-formatted output, for future's sake.To be clear: I've yet to see any good reasons why a fully-connected schematic would be better than a modular one. Many share that as an opinion, and even I am inclined to consider that likely, but nobody has explainedwhy— other than basically personal preferences and assumptions.

author: m k
author_rank: Super Contributor
timestamp: August 13, 2025, 05:54:14 pm
content: Included is a one timer circuit of ROM copier, Arduino is the address counter.It's not really a schematics, it's a proto board wiring aid.(original was for 64, reality is 256, if memory serves)And final outcome is horizontal pairs.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 13, 2025, 09:38:39 pm
content: @Nominal Animal:With all due respect to you, to cut through some of the sophistry and over-explanation that have made up your explanations here so far, just this:This schematicis superior to this oneWhy? Because (as I've already stated too many times), it's because your brain doesn't have to do the work of connecting up all those parts/pieces. You can see the actual circuit in all its glory, all connections made.A schematic like thatmightbe appropriate for a larger or more complex circuit.And n00bs should be brought up on the first schematic style, not the second.I'm fairly certain that this is the preference of the majority of those who use schematics.Now if you have differing requirements because of the way you conceptualize or visualize or whatever schematics, and you prefer the "blown-apart" version, then that's fine--for you. No harm, no foul, and really no explanation needed. Whatever works for you.But please don't try to make a case for why others should prefer this style of drawing schematics. I think you'll just run into resistance there.

author: TimFox
author_rank: Super Contributor
timestamp: August 13, 2025, 10:01:23 pm
content: Quote from: m k on August 13, 2025, 05:54:14 pmI really dislike drawing lines across rectangular component symbols.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 13, 2025, 10:03:01 pm
content: Quote from: TimFox on August 13, 2025, 10:01:23 pmI second that emotion.But how else could that circuit be drawn? It's a tough topological problem.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 13, 2025, 10:31:05 pm
content: Quote from: Analog Kid on August 13, 2025, 09:38:39 pmUntrue.Mybrain does not need to see the wires between the separate parts. When I time myself, I understand properly separated schematics with clear net labels (not just text on top of a wire, but an actual symbol indicating an interconnection to other parts) much faster than I do fully connected ones. This is no sophistry.There are others like myself, too. Typically such schematics are about OSHW microcontrollers or system-on-chip designs. Just because you don't interact with such people do not mean they don't exist, or that I'm a proverbial unicorn.Of course, there are those like yourself who process and understand fully-connected schematics faster. Just throwing opinions around will not convince anyone either way, and I'm not interested in that anyway. What I want to know, are the reasons behind those opinions and preferences —if any. Thus far, I'm getting quite strong indications that the preference for fully-connected schematics is only a habit.Quote from: Analog Kid on August 13, 2025, 09:38:39 pmMajority preference is not a reasonable basis for a rule. Assumed majority preference, ignoring the not-that-small OSHW MCU/SoC niche, sounds silly to me, like saying that math operator precedence rules should be PEMDAS, because "that's what most people use" (i.e., US and France). (Commonwealth countries prefer BODMAS/BOMDAS/BIDMAS/BEDMAS instead.)Quote from: Analog Kid on August 13, 2025, 09:38:39 pmHow many times do I have to repeat that I am not making such a case at all?!My point is that my attitude is prevalent in a niche, OSHW MCU and SoC schematics, where the properly modular style is much preferred as more efficient form than fully connected (or fully separated) ones. I do not know whether that applies anywhere outside that niche. Thus, I cannot with a good conscience recommend modular schematics to anyone, unless they are doing an OSHW MCU/SoC schematic.I've repeatedly explained the easily observed reasons why in this niche the modular style is more efficient for both drawing and reading. Siwastaja and SiliconWizard added some additional examples and clarifications, detailing when modular schematics make more sense than fully connected ones.I want to see a rational argument for fully connected schematics over modular ones.Thus far, the only ones offered are "because we prefer that way, and we believe we are in the majority", "because I don't like the other kind", and "because it is easier formethat way". Nothing that I could use as a fact-based argument when helping newbies create better schematics.All the arguments I have thus far — detecting misleading interdependencies as in 5U4GB's example, making MCU/SoC pin assignment easier as Siwastaja listed, and so on — would steer newbies toward modular schematics, and not fully connected ones. I am asking for good, rational, logical reasons (and not just opinions) why one should prefer fully-connected schematics over modular ones, because then I can pass on that as guidance and advice to newbies I'll encounter in the future.If I cannot find any such arguments, I'd have to start looking at schematics outside my hobby focus, to see for myself if such reasons even exist.Dammit, this is simple. My posts here are only about how to get newbies and hobbyists to make better schematics, myself included. That involves a rational basis for what constitutes a "better schematic". I have observable proof that fully-connected schematics are not always superior to modular ones — and if you ever work with well-split multi-page schematics, I'm sure you'll agree. I have none that say why and when fully-connected schematics are superior; only opinions and assertions/beliefs. Opinions and majority habits and arbitrary preferences are not logical reasoning. If it were, then we'd have to conclude that shit tastes good, because tens of billions of flies cannot be wrong.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 13, 2025, 10:33:57 pm
content: My experience, across time and space, is a lot of stuff online doesn't intersect real life.When you get out into the real world, you do what's best for the situation.

author: Bud
author_rank: Super Contributor
timestamp: August 13, 2025, 10:57:21 pm
content: There you go. Just as we speak.https://www.eevblog.com/forum/eda/first-pcb-design-review-request-sensors-breakout-board/msg6003275/#msg6003275

author: John Coloccia
author_rank: Super Contributor
timestamp: August 13, 2025, 11:22:36 pm
content: Quote from: Bud on August 13, 2025, 10:57:21 pmI don't mind that. I would have preferred to see the rails separated, and the chips hooked up to each other logically, especially in Altium where you can just move the pins around. Get rid wires that aren't interesting, add ones that are if it doesn't make a mess.But it's neat, easy to understand. It's also tiny, so it would be hard to make a mess regardless.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 13, 2025, 11:40:52 pm
content: You mean this circuit, right?Don't understand your reply: there's only one rail and it's continuous, and both chips are connected.Nothing wrong with this schematic that I can see.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 13, 2025, 11:47:26 pm
content: Quote from: Analog Kid on August 13, 2025, 11:40:52 pmLiterally just personal preference. I almost never wire up rails. I would probably have just wired the logic to each other.But absolutely nothing wrong. You have to do do something really stupid before I start getting annoyed.

author: Bud
author_rank: Super Contributor
timestamp: August 13, 2025, 11:55:27 pm
content: A classic example of a horrible schematic. There was absolutely no reason to not wire the components together.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 14, 2025, 12:23:38 am
content: @Nominal Animal again:I think what you're asking for here, which is a definitive explanation of why a connected schematic is better than a disconnected one (as I and others believe), is a commendable search for answers apart from simply opinion or belief.However, it's also probably beyond the capability of at least most folks here. I know it's beyond my ken.Such an analysis would require extensive knowledge of cognitive psychology as it applies to perception, and a working knowledge of the cognition of symbols, of the graphic variations possible and of visual spatial recognition. I doubt many who post here are qualified in those areas.While I could take a stab at such an answer, make some guesses, it would be pretty useless. All of this is, as they say, above my pay grade.So I think you're going to have to be settle for people's opinions here, at least for the meantime.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 14, 2025, 12:38:09 am
content: Good taste counts for a lot. And you get that with experience and mentoring. It's hard to put into rules.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 14, 2025, 01:57:22 am
content: Quote from: m k on August 13, 2025, 05:54:14 pmWhy split the address bits that way? First A0, A1, A2, A3, A4, A5, A12, then A6, A7, A8, A9, A10, A11, A13. Why not symmetrically A0, A1, A2, A3, A4, A5, A6, then A7, A8, A9, A10, A11, A12, A13?I guess latches were needed, because the Arduino was running out of I/O pins. I personally like to use Teensies (which go as far back as Arduinos do, Teensy 1.0 used AT90USB162, 2.0 ATmega32u4, 2.0++ AT90USB1286), which have plenty of I/O pins (Teensy 2.0++ had 44 I/O pins, of which 36 very easily), and native USB for connecting to a computer. With Teensy 3.x/4.x, one would need e.g. four SN74LVC8T245 voltage translators from 3.3V to the ROM I/O voltage. I'd just use full address and data buses, so no latches needed; only the address, data, and enable/strobe pins. Easiest would be with a Teensy 2.0, I guess.Attached is how I'dfirstredraw it, to understand it better.If I were to build such a copier, I might now use CH32X035C8T6, which has plenty of I/O pins (~60), native USB (FS, can do USB PD), and works directly at 5V logic levels if needed. Under 0.65€ apiece at LCSC, and only needs a 100nF or bigger supply bypass capacitor, not even a crystal needed.

author: amyk
author_rank: Super Contributor
timestamp: August 14, 2025, 02:06:01 am
content: Quote from: Analog Kid on August 13, 2025, 11:40:52 pmI feel like I'm being trolled...

author: squadchannel
author_rank: Frequent Contributor
timestamp: August 14, 2025, 02:06:56 am
content: Quote from: Analog Kid on August 13, 2025, 10:03:01 pmuse busesalso important of the chamfer directions.It is different from mk's circuits, but it is written in the same way. Wires and buses, sometimes labeled.it's drawn by Kicad, but something's different, isn't it? Yes, customized it to resemble Eagle.

author: John Coloccia
author_rank: Super Contributor
timestamp: August 14, 2025, 02:19:22 am
content: Quote from: squadchannel on August 14, 2025, 02:06:56 amThis is nice.We have so many choices how to link things up. Do something intelligent, like this. It's not either/or. That whole discussion just seems stupid to me.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 14, 2025, 02:27:30 am
content: Quote from: amyk on August 14, 2025, 02:06:01 amNo, I just fucked up.Sheesh, your outrage trip point seems to be set a hair too low there ...

author: squadchannel
author_rank: Frequent Contributor
timestamp: August 14, 2025, 02:39:19 am
content: wiring with labels method is similar to "goto" statement. I think it's the same.I don't think it's absolutely not to use it. It's fine to use it appropriately, such as when there is no space to wire horizontally, as in my schematic, or when drawing just few pins with a long line causes confusion.but, do not label all of them.it is completely unclear where the signals are going and where they are headed.rare cases, the label frame indicates the direction, but even if it does, it is difficult to understand.Even when drawing long lines, I place labels at the start and end points to avoid confusion. " ' "(single quote) key is useful in KiCad, but doesn't work in PDF.writing styles and preferences vary depending on the writer. However, I don't want to see schematic that are mostly labeled with wiring.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 14, 2025, 02:57:21 am
content: Quote from: Nominal Animal on August 14, 2025, 01:57:22 amThat schematic looks fine to me. Very easy to follow.Of course, color helps a lot here. Won't be quite as easy to read if printed on a laser printer.

author: squadchannel
author_rank: Frequent Contributor
timestamp: August 14, 2025, 03:53:20 am
content: There is space, so it doesn't have to be a label.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 14, 2025, 04:02:39 am
content: Quote from: squadchannel on August 14, 2025, 02:06:56 amHow? I mean, my attempt below using buses isn't that much clearer, is it?Quote from: squadchannel on August 14, 2025, 03:53:20 amAh, thank you for the schematic; I quite like it.I particularly like the labels for the annoying EEPROM control signals that otherwise cross willy-nilly, and distract me.Comparing to yours, I seem to put stuff too close together; spacing them out more makes the schematic much more readable.Thanks!

author: squadchannel
author_rank: Frequent Contributor
timestamp: August 14, 2025, 04:07:03 am
content: Quote from: Nominal Animal on August 14, 2025, 04:02:39 amIt is not as clear as wires, but it is not as difficult to see as labels. The good thing about buses is that they can show that these are explicitly connected.Rather than invisible connections like labels, you can connect the starting point and the end point by tracing the bus.your bus method is the same as the method I was thinking of that doesn't use labels.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 14, 2025, 04:44:30 am
content: Quote from: squadchannel on August 14, 2025, 04:07:03 amFor me, your bus-and-labels version is much easier for me to comprehend (than my own bus-and-wires). The three buses handle parallel data, and I don't need to see each wire in a bus separately; the signal names where the signals connect to the bus suffices for me. There are thirteen net label boxes, which isn't too much either; I can immediately see where the same signal is needed. (For me, this is something like a via on a multilayer PCB: I don't need to see where it goes, as long as I see where it is available on a current layer. But in the schematic instead of PCB. If that makes any sense.)Hmm. I do believe that can actually be a basis for good advice for us newbies, something along the following (first musing, definitely needs tuning and thought):QuoteThe above is probably badly worded, but it stems from the similarities between net labels (the box type) and bus wires, with the exception that buses combine the signal into one line, instead of an invisible line as net labels do. So, with good use of buses one can still keep the "connectedness" of the schematic, while still cleaning it up and simplifying it a lot. Perhaps net labels (box kind) need to be reserved for either unique point-to-point pairs, or to signals that otherwise would meander and cross half the schematic, making it messy/cluttered and only harder to understand?(I'm pretty sure we agree that the easier a schematic is to understand, the "better" it is.)My point is, this kind of discussion is extremely useful, when members participate by posting explanations and examples and show how they'd solve a particular problem (or draw a particular schematic). Not just for the participants, but also the people who end up reading these threads later on, and the newbies and hobbyists like myself that likely pass the useful findings and arguments and examples here onwards to the next newbies. It is worthwhile.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 14, 2025, 07:15:32 am
content: Quote from: amyk on August 14, 2025, 02:06:01 amLook further, and you'll see the SPI bus also goes to the connector. I prefer this schematic over a fully wired one any day. It isinstantlyobvious which signal goes where, just by looking at the labels. And the connector pinout can be inspected in isolation. It is impossible to draw this schematic fully wired without wires crossing, and having to follow the lines with a finger. If you add labels, then the wire-following task goes away, but then I need to ask why not just remove the wires?Trying to fully wire circuits lead you into spending time into unnecessary actions: in this case you would want to modify the pre-existing components so that the SPI signals appear in the same order, for a beautiful and easy-to-follow wires. What value does such work add, if the aim is not a beauty contest, but a diagram which communicates what goes where?

author: Siwastaja
author_rank: Super Contributor
timestamp: August 14, 2025, 07:27:55 am
content: squadchannel's example is an exemplary, well-drawn fully-wired schematic which is also easy to read. It however takes some time and discipline to draw it, and if programmable/remappable devices are involved, redrawing takes a lot of time.With labels, EDA like Altium just autoincrement the number in the label when mass-placing them. And then they can be moved around freely when remapping, and no wire mess remains.Wires are a physical necessity for real circuits. And wire spaghetti when prototyping and changing connections is very real: m k's example was interesting because as I understood it, it is drawn the way it isbecause it documents the layout of a physical circuit, not because a schematic should look that way.But a schematic does not need to replicate that physical necessity; we can do better; we don'tneedto do routing on the schematics, we do that on PCB layout out of necessity.Attached is an example where Icouldhave drawn the wires which neatly combine to a bus, like in squadchannel's beautiful schematic, but did not do that, because honestly I don't see why such manual and repetitive work add any value for anyone. Labels with increasing numbers were placed with EDA autoincrement so this kind of schematic is pretty fast to draw.I claim that big part of this whole recurring discussion is preference for some kind ofbeauty, instead of objective better-ness for the technical purposes, which I could enumerate as:* Ease of drawing* Ease of modifying* Ease of reading / understanding for PCB routing* Ease of reading / understanding for documentation to others

author: SteveThackery
author_rank: Super Contributor
timestamp: August 14, 2025, 11:04:48 am
content: Quote from: Siwastaja on August 13, 2025, 12:13:25 pmStraw man. Not a single greybeard has advocated that in this entire thread.Anyway, certain people's heels are dug in deep. Probably not much mileage in going round this loop yet another time.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 14, 2025, 11:11:45 am
content: Quote from: m k on August 13, 2025, 05:54:14 pmWith something like that I'd say it's perfectly acceptable to draw the dozen or more parallel lines as just a single bus, so a broad band running from A to B encompassing all of the individual wires. It's a style that was used in 1980s and 90s MSI/LSI data books where there was no point in drawing each wire in an 8-bit or 16-bit bus individually.In this particular case if it's a wiring aid then it does make sense to draw each wire, but if you're just documenting a circuit then I'd say the bundle-common-wires approach would make more sense.Later edit: Just read subsequent posts, @squadchannel's diagram was exactly what I was thinking of, gives you all the info you need without cluttering the diagram with a spghetti of individual wires.

author: 5U4GB
author_rank: Super Contributor
timestamp: August 14, 2025, 11:16:46 am
content: Quote from: Bud on August 13, 2025, 10:57:21 pmWill a HIMARS strike do it or do we need to nuke it from orbit?Seriously though, good on them for asking for advice. OTOH if they're teaching kids these days to draw things that way, with the MISO/MOSI/SCK pins right next to each other but not connected, then I despair for the future of civilisation.

author: Bud
author_rank: Super Contributor
timestamp: August 14, 2025, 12:23:18 pm
content: I commented on the schematic, not on the person posted.

author: gamalot
author_rank: Super Contributor
timestamp: August 14, 2025, 12:59:05 pm
content: For most analog circuits, I think everyone here agrees that wires connect components.For digital circuits, especially those with high-pin-count components, it can sometimes be more efficient and flexible to use only net labels to connect pins.I've noticed that Nordic Semiconductor's schematics, created using Altium Designer, are a good example, although I think some details are less than perfect. They generally use only labels to connect digital components on same sheet, but they always use ports and harnesses for connections to other sheets.

author: UnijunctionTransistor
author_rank: Frequent Contributor
timestamp: August 14, 2025, 03:00:38 pm
content: To both @nominal animal and @squadchannel :Your schematics are both very nice and readable. Either one would work fine with me. Exactly which one is a matter of personal preference.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 14, 2025, 03:50:39 pm
content: Quote from: 5U4GB on August 14, 2025, 11:16:46 amSo is this better now? I strongly disagree, and I am happy "kids these days" are not taught to spend their time drawing schematic wires, or optimizing schematic placement and wiring and modifying symbols till the cows come home just to make it a little bit less crappy than in my revision (where I did not move any of the components).This is only salvageable by adding labels - then reader will use the labels to map things in their head. And you can then remove the wires as unnecessary.Future of civilization is very bright since we do more and more complex designs and avoid spending time for eye candy and concentrate on what is important to achieve the engineering task, and beginners are looking at these complex designs for inspiration instead of 1970's hobby magazines with "fully connected" audio circuits.

author: tom66
author_rank: Super Contributor
timestamp: August 14, 2025, 04:36:37 pm
content: If it were my design I would shuffle the pins around on the symbols to line it up neatly then route with wires. I'd label the nets too, but only to make the PCB design parts easier.

author: m k
author_rank: Super Contributor
timestamp: August 14, 2025, 06:59:00 pm
content: Quote from: Nominal Animal on August 14, 2025, 01:57:22 amGood question, seems that I'm not exactly up to date with this thing.Earlier thought was that 27256 is the receiver and 2764 sender.Program's max address is 0x2000 and only 13 addresses used, so 256 is questionable.The final and actual layout is also different, ROMs are side by side.My guess is that this way addressing was easier in practice.It's also possible that the circuit started without any papers and with different logic chips.Horrible PCB then, included is the final real thing.And as usual around here, after some manufacturing effort it became clear that the PCB is too small, but as they say, must fit...Long enough pin headers were also somewhere else, so had to add wires.Can't find any documents of this final layout either, so finally aid has been a bit less of it, I guess.It's for weak data.Can't remember how the situation was actually resolved, but can't remember any problems either.So maybe different supply for ROM was not needed, jumper is also missing.Original reader was TL866 something and it couldn't do it.Can't be sure either from where the final power was supplied.Some recollection says that it wasn't the original USB.

author: RJSV
author_rank: Super Contributor
timestamp: August 16, 2025, 04:51:41 am
content: No schematic, on my little mess of a project. (1976), Skipped the schematic, building on those white solder less proto-strip boards (that accept ends from stiff wire or components).I skipped any big schematic, mostly because the whole project was heavy into binary address bus and 4 / 8 bit counters, to test a prototype OCTAVE-izer musical effect. The device would clock in an AtoD word, at one rate, then another memory port did the reads, coming back out to a Digital to Analog output.Only 8 bits of analog resolution, on the exp device, and, (even worse) there wasn't any zero-crossing coordination, on the little audio segments being played, so the listener got lots of 'hash' and other audio artifacts. Most interesting, the device caused MAJOR TV set disruption, anything within 20 feet, as it radiated like heck !But, it worked, giving the doubled up frequency sounds, similar to the OCTAVE fingered jazz guitar. I had only used an A/D conversion at something like 3 khz (clock), so you could here the clock artifacts.(That is, 3,000 per second sample conversion rate, which should be more like 10X that, for an acceptable sound without the artifacts.I think it took up around 6 of those white prototype boards to wire all the counters up !

author: m k
author_rank: Super Contributor
timestamp: August 17, 2025, 02:44:22 pm
content: Included is something that came up with the previous situation.If supply pins are like they are on the right so be it, but how is the supply of the left side?

author: John Coloccia
author_rank: Super Contributor
timestamp: August 17, 2025, 05:14:06 pm
content: Quote from: m k on August 17, 2025, 02:44:22 pmI've lost track if this is a good schematic or a bad schematic.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 17, 2025, 07:30:59 pm
content: Quote from: m k on August 17, 2025, 02:44:22 pm? ? ? Your question doesn't make sense: what does "how is the supply of the left side" mean?The schematic looks OK to me, even though the supply is on the right side; don't know as that has to be a hard and fast rule where exactly the supply connection is.

author: m k
author_rank: Super Contributor
timestamp: August 17, 2025, 08:20:30 pm
content: When I saw that I didn't understand the supply connection of the left side.I'm quite obviously out of the loop.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 17, 2025, 08:24:04 pm
content: Quote from: m k on August 17, 2025, 08:20:30 pmWell, me too, I guess.Aren't thosedataconnections there on the left?They go to pins markedD0...D3andI0...I3. Those aren't power connections, right?

author: m k
author_rank: Super Contributor
timestamp: August 18, 2025, 09:59:06 am
content: Yes, it's a new standard layout.Downside is that discrete logics are not very usual anymore.My problem with the latest was me, my intuition had a problem with a dot on a frame.Included is what older KiCad offers.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 18, 2025, 02:05:49 pm
content: Quote from: m k on August 18, 2025, 09:59:06 amI'm not sure one can call ANSI/IEEE Std 91-1984IEEE Standard Graphic Symbols for Logic Functionsparticularly new, but yeah. It imposes internal implementation logic to the schematic symbol. Anyone interested in the details can take a look at e.g.TI SDYZ001A, Overview of IEEE Standard 91-1984, Explanation of Logic Symbols Training Booklet.The odd ones in Kicad are from the74xx_IEEE.kicad_symand4xxx_IEEE.kicad_symsymbol libraries.The other extreme is what EasyEda provides for most LCSC/JLCPCB components: a replica of the pinout. See attached for NXP 74AHC04PW,118. I don't like these either. Fortunately, it's easy to draw ones own footprints.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 28, 2025, 02:12:41 pm
content: I'm a glutton for punishment!I noticed that Kicad 9 supports net classes that I can use to distinguish connection traces/types. So, forthis thread, I drew my suggestion in a style that allows easy MCU pin re-assignment if needed:(Click to embiggen)Now, this is again just the "first version", something I only spent an hour with. (I noticed just now that the second DATA label should be bidirectional, and not an input, too.)The entire Kicad 9 project is zippedhere(and is just 17k in size), under CC0-1.0 dedication, in the Public Domain.To repeat, I use this style because it makes understanding what the circuit does easierfor me, and is well suited for making the PCB as it is very likely the I/O pins will change on the ESP-C3 Super Mini developer board (although I didn't assign any PCB footprints for the components yet). I call it "modular", because every part that is separate, is self-contained and replaceable/modifiable with all connections to other parts shown as labels, with no dependencies between nontrivial parts: other than power rails and 0V ground reference, each label is used only twice. To fulfill my "modular" definition, each label may occur only once in a nontrivial circuit, and preferably only once in a trivial circuit — trivial being MCU pin, pin header, output connector, or similar.Everything that messes with the DATA line to the Valentine One automotive device, is a single part in upper right. The AUDIO line is not used other than muted by pulled to ground through a 10k resistor. (If the audio had interesting content — it doesn't as far as I'm aware —, one could capacitively couple to it and use a buffer opamp to shift the zero level for the ESP32-C3's ADC. Plus, ESP32 has poor ADCs (noisy), so doubly not worth it.)To me, the operation of this circuit is clear: U4 (TXU0101 on the right) is an always-on input level translation for UART (57600 baud, 8 data bits, no parity, one stop bit). U3 (TXU0101 on the left) is an output level translation for that same bidirectional UART line, enabled only when TX_EN is high. MODE is an optional weak pull-up to 1.2V – 1.4V (when the load on the DATA line is less than 100µA; at 1.5mA it drops below 0.1V) required for a legacy protocol (where RX and TX will be bit-banged).Because this is automotive use, I opted for a DC-DC converter, the Oki one on the upper left corner, to generate the 5V power rail. The 3.3V rail is generated by the ESP-C3 Super Mini development board.As I explained above, I am not trying to convince others to use this style, andI am not defending or promoting this style, I just want to learn to do better. To do better, I need to know both how and why; just the opinion of what would be better does not help me or other hobbyists here.I am doing the schematic this way, because thus far, I've found it balances the understandability and usabilityas I understand it. But, because I don't have much practical experience, and basically none working with someone else on the same schematic,I do not trust this is generally true. I just don't know better, yet.Therefore, I am asking for comments on what you find difficult/annoying in this. How would you change it for the better, and why? The Why part is actually even more important than the change itself, because only understandingwhythat kind of change is needed, I will be able to apply it to my future designs and tell others why they too should do it that way. This schematic itself isn't important to me at all, I did it for another member as an example of how I'd do it; I'm asking for comments describing the difficulty others see in this kind of schematic, how they'd improve it, and especially why they believe those improvements make it better. In short, to learn to do better at this.Also, I haven't seen others use net classes this way, so I'd like to know if you find them (colors) useful. They don't bring any additional information, and are there just to help one understand the type of wire: red is for power rails, black is ground, blue is 5V signaling, and green is 3.3V signaling. ESP32-C3 does only 3.3V, but the RJ11/RJ14 connectors use 5V logic levels (CMOS-like, not TTL).

author: shabaz
author_rank: Frequent Contributor
timestamp: August 28, 2025, 04:18:41 pm
content: I have not read the entire thread, it's too long, but seems to me, there'll be no one style that fully provides the information for everyone to understand a schematic.Sometimes it may need to be augmented with other information, such as text, block diagrams and so on.If I have to convey understanding of a schematic to someone, then often I simply won't trust I can do it in a schematic alone.In my case, I like splitting the schematic, and explain each part separately. It could be in a Word document, with circuit diagrams interspersed with text, with section titles.I don't take it to the extreme, i.e. if possible, an acceptable level of splitting it for me would ordinarily be less than five, I like three : ) Example: "Power Supply", "Microcontroller Core", "Sensors and Display", for a simple environmental monitor.And provide the full schematic in whatever manner is appropriate (image, PDF, CAD files etc).I like to use the plain labels (i.e. no shape around them) for connections on the same page, just for less visual clutter, but it's a subjective personal opinion, I wouldn't object to seeing the shapes if someone else did it, if it's still understandable. Sometimes I'll re-insert clutter by adding in arrows onto a few easy-to-get-wrong signals (such as RXD/TXD) more for my benefit than others.The RJ14 symbols are something I'd change if it were me, because it's not obvious if the connector shape drawn in there is related to the pin numbering, and it could cause confusion, because on that diag it's both rotated and flipped along an axis.I'd probably change out to a generic connector symbol shape, or some other way of definitely not implying that the pins are related to the shape, because it is a little bit confusing.Also, personally I label G, D, S on MOSFETs (i.e. edit the KiCad symbol; actually twice, so the annotations are oriented correctly for popular MOSFET orientations on a schematic), because the symbols for those are so detailed, it's easy to mistake the arrow and diode direction when zoomed out, and mess up. BJT detail is easier to see from a distance.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 28, 2025, 06:16:18 pm
content: Quote from: shabaz on August 28, 2025, 04:18:41 pmAgreed. I do try to explain the schematic part-by-part, including why I chose specific components. I'm omitting that here for brevity.This thread started with examples of horrific schematics, and I subverted it into about how to draw those horrific schematics better. I found the discussion somewhat useful, too, even though it was mostly about opinions. It is useful to understand how and why others disagree, and how they see things.Even though I'm only a hobbyist with much more theoretical knowledge than practical experience, I do occasionally help others with schematic suggestions. I know I can't change the world, but useful help tends to spread out and becomea styleothers adopt, so I consider it worthwhile — as long as I do more good than harm. I am one of those people who do not or cannot do something without understanding exactly why, so I'm trawling for information in order to learn to do better, and then help other hobbyists in turn.I've modified theKicad 9 project .zip, adding transistor pin names (letters), putting the connectors in their native orientation (the pinning is a bit funny) when looking into the socket/female connector as if one was the mating cable, included missing supply bypass capacitors for the TXU0101. I didn't bother re-spinning the SVG image as I optimize those by hand in Inkscape — KiCad 9 produces visually nice SVG files, but does not optimize them well (uses a lot of groups and separate paths, which compact a lot when combined to single paths) — but attached is the PNG version.

author: squadchannel
author_rank: Frequent Contributor
timestamp: August 28, 2025, 06:46:55 pm
content: I thought about rewriting it, but my kicad settings are inherited from mil-based Eagle, and I lost the motivation.use the power symbols. 5V, 12V, 3.3V all of them. my opinion, labels are for signals. (that said, varies by person.)PS:I noticed can choose the orientation of label frames in your schematics. Thanks.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 28, 2025, 10:37:51 pm
content: I agree: using power symbols instead of labels does make the schematic easier to read. Using different symbols for signals and power makes sense, because we process them differently: signals we "trace", whereas power rails just need to be present.Updated theproject zip archive, and attached preview image.

author: Analog Kid
author_rank: Super Contributor
timestamp: August 28, 2025, 10:39:27 pm
content: Sorry, not sorry:That should still be just one unified diagram, not a bunch of disembodied parts-pieces.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 28, 2025, 11:04:34 pm
content: Quote from: Analog Kid on August 28, 2025, 10:39:27 pmI understand your opinion, and am not ignoring you. The reason it is not fully connected is that at this stage, before the PCB has been designed, making it fully connected would make changing pin assignments to get a better PCB layout very annoying. This style is a compromise, trying to maximizeusefulnessin various contexts, so cannot be optimized for ease of understanding alone. After one designs the PCB, one could finesse the schematic into a nice, fully connected eye-pleasing form, of course.If one does discover what that is, that is.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 29, 2025, 05:55:17 am
content: Quote from: Nominal Animal on August 28, 2025, 10:37:51 pmThis is a very readable and usable schematic, absolutely nothing wrong with it.

author: m k
author_rank: Super Contributor
timestamp: August 29, 2025, 03:13:18 pm
content: Yes.Though that is definitely not the case every time.Here separations are made as they should, supply pins are also vertical and discretes connected.Basic problem is that the final schematics is not drawn when it should.Then when something goes wrong and help is needed that schematics look alike design aid is offered as an actual schematics.There are even complex exceptions, but generally it's a completely different situation whether a reader is an outsider or a designer.

author: Siwastaja
author_rank: Super Contributor
timestamp: August 29, 2025, 05:30:30 pm
content: To be clear, this is also fine as a "final" schematic.

author: Nominal Animal
author_rank: Super Contributor
timestamp: August 29, 2025, 06:12:01 pm
content: In the sense of this being an open source project schematic intended as a basis rather than describing a product, it indeed is "final": all the important usage scenarios are as I described earlier, to be used for ones own PCB projects and hobbyist learning, rather than as a tool for repair or maintenance for an existing product.I do believe it is very important to think how a particular schematic will be used. I can imagine that for a mass-produced product, you'd want a repair-oriented schematic — just like e.g. mechanical hardware drawings are different for machinists making the parts than the ones in manuals for repair and maintenance, even though they convey much the same information.One interesting example of this is the Teensy series of developer boards designed by PJRC.com, where an user-orientedschematicis provided for those who need to know the details, or (secondarily) as a start for those who want to make their own compatible boards using the PJRC programmed proprietarybootloader ICthat also handles power-up sequencing.Thus, I'd also say that one should consider creating variants of their schematics for other use cases, just remembering to propagate all changes correctly to affected versions. For myself, I do believe that using theFile>Plotfacility in KiCad to save an SVG vector graphics version, then editing that in Inkscape, and exporting it as a PNG image (to be optimized withpngcrush -brute -l 9 -reduce) and/or Optimized SVG, is a good path for that, because then my only "proper" schematic is the KiCad one, and the other variants are just vector graphic images. (Just as something for others to consider too.)