Thanks for the comprehensive critique, I do appreciate the time taken. I have done a lot of smaller scale stuff but nothing this complex which as you say, is showing. Part of learning is knowing when to ask for help, so here I am. I don’t want to eat up more of your time so you can read more about where I’m at with everything or just skip it.
Wall of text.txt
There are indeed a tonne of errors here, the 180K resistor should be in the ohms range, not kilo ohms, and still needs to be tuned to the Vgs etc values for the MOSFET, Pin 2 on U8 has to go to VSS as it is being driven by the RasPi. I will throw my hand up on the PSU layout though. You are right, it looked clear to me but someone (else) is going to need to review this at some point, I will revert to convention there. FWIW, putting the voltage flow "down to up" on those electrocaps did feel off.
As to the VDD/VSS - 12V_REG/5V_REG situation, the idea was to have all logic running from the 5V/GND pins of the Pi (VDD/VSS) with all “noisy” devices (relays, motors, contactors/SSR’s for control of AC/DC switching) being powered by the regulated circuit with optoisolators bridging the gap between logic level and power level. Primarily to keep power lines clean, but also to build in some fail-to-safe fallbacks if either the uC or one of the regulators fails for whatever reason (which is also why I’m using an external WDT). There is potential for user injury if the motors continue to operate without functional feedback mechanisms to keep them in check. Again, there’s going to be errors here, as I mention below, this is a concept schematic at this time.
That file/sheetname? I got nothing. As you can see I use CamelCase for everything, though one of the earliest iterations of this was created under the assumption I could have a PCB per sheet in the project manager, and that was the first sheets I started on. I may have munched something trying to rename it to fit the new scheme. That has been corrected, it itches my OCD knowing it’s there.
Bus labels are also not just names. They define the signals names in the bus.
The bus labels are a symptom of the cause, and again, it was at that point (and especially when I added J3 at the root and thought “wait, should these have signal names or function names?”) I thought I am doing something wrong here, which is why the i2c lines are plumbed into a bus at the root level but still have global labels on all other sheets. That was the point where I stopped. I mention an example schematic you posted o the forum below, based on that I have realised I need to split out my buses into sub-buses, {U3 GPA[0…3]} bussed to the direction relays for the outriggers, {U3 GPA[4…5]} to the relevant relays, {U3 GPA[6…7]} to their end points etc. That has not been done yet as I am still trying to work out if my hierarchy is correct or not.
The only thing that has been redacted is the name of the project and my company name, for obvious reasons. Nothing was removed apart from those names before upload, if it’s blank on your side it’s blank on mine, again because I got to this point and realised that yes, I’m not sure how but I’m doing this wrong.
At this time I am simply trying to work out how to lay this all out in the application so I have some sort of structured guide I can use as I further develop subsections of the circuit; a mind map using a schematic editor instead of butchers paper as it were. While I am doing my best to be correct as I go, there is a lot of placeholder stuff that needs to be breadboarded and tested before I come back and finalise values, component specs etc. Once that is established I will fine tooth comb everything on the way back through. Like I said. Lots of placeholder sheets and interconnects, likely incorrect values for components that I am yet to bench test and correct, and I’m still getting my head around buses, so please ignore the madness.
TL;DR of that block is that yes, to someone who knows this game inside out the schematic is a load of hot nonsense right now, which is why I was hesitant to post it. I recognise and acknowledge that it my approach may not be optimal, but this is how I as an individual operate and learn in this early stage of knowledge expansion I suppose. It is at least giving me an opportunity to error check before I get it 90% filled out then realise I need to redo great swaths of it.
You have already helped on bus labels in this thread however. I had figured based on the formatting requirements that they defined the signal names on the bus, but I am not clear on how I am supposed to know on the other end that U4 GPA3 is the signal line to trigger the tamper alarm?
I did find your excellent example here which has already helped me greatly, but it also seems to imply that you can arbitrarily create label names. What I failed to get from it was how to to tie the name “FR_PWM” to {U6 OUT0} so when you’re unfolding wires on the receiving end you would have something that allowed you to go “yup, this motor, I need to plumb it in over here”. For example, I’m not clear on where the additional 5 labels (Re, Fa, mohammad etc) came from in this bus, which is likely half my issue.
I feel like I am getting away from the point of the thread though. Have I at least got my sheet hierarchy set up correctly for what I’m trying to achieve? Everyone seems to have their own style (if YouTube and a lot of threads here are anything to go by), but I can’t seem to make the the Complex Hierarchy and Electrical Connections > Buses pages gel nicely in my head. Knowing I at least have the former dialled in will make me less fearful that errors will undermine my exploration of the later.
Thanks again for your time man.