So I need some guidance here on how to arrange things. Obviously some power & signals could be read as EMI on neighboring wires. And there could be safety issues of wrong signals or even too high of voltages crossing if pins in a connector get bent. I'm choosing to use keyed connectors for everything, so no need to consider reversibility (e.g. USB-c). And what am I _not_ thinking of...
How you _you_ allocate these needs?
RSO <--> Padbox, PadBox <--> PadBox
+12V
Gnd
RS485/Modbus_A 5V
RS485/Modbus_B 5V
RSO_MasterArm 12V
FaultAlarm 5-12V
RSO <--> LCO
+12V
Gnd
I2C_SCL 5V
I2C_SDA 5V
FaultAlarm 5-12V
PadBox <--> Warnings
+12V
Gnd
SPI_MISO 5V
SPI_MOSI 5V
SPI_SS 5V
StobeSiren 12V
Thanks for your help.
Putting ground between 12v and data is a good idea. Running I2C between 2 boxes could prove problematic. It was designed to communicate within devices on the same board/enclosure and usually has issues with distance(even for a small hop). Maybe if they are right next to each other it will be fine. You should probably test first before being committed to any design.
I would use the Cat 5 or 6 standards. Twisted pair everything. That has the smallest risk of EMI. There is also a PoE standard but that is 44 VDC minimum for 350 mA. There is a PoE++ that can handle a little more. If you do decide to use cat 5 or 6, shielded is well worth the money for preventing EMI. Also remember that both side would be the same so you would have to mirror the receiving end.
I am a little surprised to see power running from RSO to pad boxes. I thought you would have one of the batteries out there dedicated to that. If you want DC to run that far(I think I saw 5-100'), you would probably have to step up the voltage and probably store the charge for the igniters so you don't draw it all at once(unless it is actually the other way around but that doesn't sound right either).
I am a little surprised to see power running from RSO to pad boxes. I thought you would have one of the batteries out there dedicated to that. If you want DC to run that far(I think I saw 5-100'), you would probably have to step up the voltage and probably store the charge for the igniters so you don't draw it all at once(unless it is actually the other way around but that doesn't sound right either).
The bulk of the power is local to every box. Especially the tidal wave of current for the 10 igniters on each PadBox! However for "chip-free, logic-free, complication-free" remote disconnect of the power before even the RSO goes to the launch pads, for immediate E-Stop of the whole system....I am running power from the RSOBox to the PadBox for the relay coil between the PadBox and the buss feeding all of the igniter sub-circuits. So the power to the igniters is PadBox-local, but the control is forwarded from the RSOBox.
@madmisha We're thinking the same about shielded cables. Cheap insurance against outside noise. And Cat6A STP has good EMI protections inside of the cable between pairs. However there is the issue of possible bent pins in a RJ45 socket...
Not as sure of the construction of XLR cables. These do have more solid connectors. These also ensure Pin1 connects first. But they are also more expensive.
Do RS485, SPI, and I2C signals travel well with their own mates? Can you say RS485 A & B are on the same pair, or must these be on separate pairs? Same for SPI....all of the sub-component signals together, or separated? And same for I2C...
I think in audio, the balance signals for a channel travel on the same pair. But this little 5-12V stuff may be more sensitive?
However there is the issue of possible bent pins in a RJ45 socket...
I don't know for sure but I doubt that the positive pin in the connector could bend far enough over. You could leave a space, add extra ground in-between. You have 8 pins and it sounds like you won't use all of them. Putting power and skipping a few would probably work. If you want extra safety, think about an optocoupler.
Do RS485, SPI, and I2C signals travel well with their own mates? Can you say RS485 A & B are on the same pair, or must these be on separate pairs? Same for SPI....all of the sub-component signals together, or separated?
Same pair. The point is that if EMI or RFI gets in, it will get into both the positive and negative and effectively cancel itself out equally, at least that's the theory. It has a lot to do with equal loops. It will also help prevent crosstalk. But I still have doubts on the amount of travel you can get out of I2C. A quick search of I2C says no longer than 1 meter but it's not designed for that. RS-485 modules are easy to work with.
I think in audio, the balance signals for a channel travel on the same pair. But this little 5-12V stuff may be more sensitive?
They do. A balanced audio cable to a piece of equipment has the benefit of common mode rejection. I guess it is possible to implement CMR on any differential pair but I would have to look into it. Mic level cables carry between 12v-48v(48v being phantom power) and can easily drop lower. I'm not sure what the lower limit would be though. Voltage drop on long runs would be my biggest concern. I think that's why they boost the voltage in PoE; to reduce the current needed. Same reason they use high voltage in power lines, to reduce the amount of energy lost over distances.
I did forget to mention, you could always use cat6 cable and terminate it with phoenix connectors. They're keyed and cheap. It won't be as robust though. A cannon connector could work too. Strain relief would need to be considered though.
@madmisha When I am setting up and tearing down, no problems. I will intimately know the cabling & connectors' limitations. But given that I'm donating this to the Scouts, others will inevitably end up running it. So need to make it somewhat rugged, and/or easy to replace cables.
That is why I have no problem with my industry moving digital. You have a bad snake and you have to find a special place to buy it and your out $2000-$6000 or it could end the show. Cat6 can be bought cheap and terminated yourself or you can find pre terminated with strain relief just about anywhere. Any electronics, office supply and even Home Depot!
One thing you might need to think about is what if somebody tries to use a crossover cable. I think it would be fine if 7 or 8 was the power pins. But if 1 or 2 are then you would get 12v onto 3 or 6.
I don't know if this will be of any interest, but I tried setting up the RSO-LCO connections using one Arduino in each (only 1 Arduino for both LCO panels) and assuming connections via software serial. I added a WS2812B (10) LED strip to facilitate launch, countdown and testing phases. I also put a single WS2812B LED at each LCO individual location.
Since 100' is a long way and may be difficult for some vision-impaired scouts, I located a 10 LED strip on each LCO panel. This can be used to verify station launch continuity, assist countdown by starting with, say 10 green lights and turning one off each second (or vice versa) until countdown is complete and then the strip will turn red to indicate that the timer is running and the station should launch immediately. It turns blue afterwards to show that the timer is off and no more launches are possible.
This will eliminate the need for the distant clock (although the RSO may still want to issue a verbal countdown for the assembled crowd 🙂
This only requires 3 core connection between the RSO and LSO panels.
The (new) LCO panel and station layout ...
The Arduino pin connections
The RSO and LCO command codes and actions
Anything seems possible when you don't know what you're talking about.
Hi @lydara,
I have always regarded both I2C and SPI as very short range comms, which was their original remit. Hence, I2C and SPI ports on 'general purpose' chips like microcontrollers have only low drive power, etc. expecting only a low capacitance loading. They are not designed to drive transmission cables terminated to 50-100 Ohms. Also, the inputs are only designed to cope with 'text book square-ish" waveforms, with only have limited capability of coping with voltage offsets, reflections, and so on. The waveforms typically emanating from longer wires are often far from 'text-book shape'!
I haven't personally worked on I2C, though I recall its invention by Philips to enable the different chips in TV to 'talk' with very little silicon or extra TV wiring overhead. I have done a project that used SPI, but the connection distances were measured in centimetres, not metres! (And I automatically discounted the idea of using it for longer range.)
Please accept my apologies if the stuff below is well-known to you ... I have compiled it in good faith.
------
I knew I2C had spawned a range extender chip, but never needed to follow it up (until now). Seeing your question above, a quick Google came up with this tech note form NXP:
which mentions uses of Cat 5, amongst other things, that I thought might be helpful if you hadn't seen it before. I note it is nearly 10 years old, so I have no idea if devices mentioned are still available.
I2C is of course relatively low frequency, so it is 'less' affected by timing issues, etc.
SPI, by contrast is typically used for higher frequency applications, so that in addition to signal strength issues, timing also tends to play a part. Of course, you have some design control over this.
------------
Again Google offered a paper, this time by TI.
https://www.ti.com/lit/an/slyt441/slyt441.pdf
It is far less 'upbeat' about attempts to use SPI with long wires, and does not offer any specialised chips, instead refering to old favourites RS-485 and RS-422 to do the long distance stuff.
I also note this more specialised Analog Devices chip
https://www.mouser.co.uk/new/analog-devices/adi-ltc4332-extenders/
-------------
I hope this gives a little background.
The cynic in me, notes that a lot of work goes into longer data transmission systems, like twisted pair Ethernet and CANbus, as well as the RS-xxx variants for a reason ... trying to replicate that capability with other systems designed for short range might be hard work!
------------------
As for allocation of pins in plugs, etc., high integrity systems have rules including, leaving an extra, unconnected pin to guard against bent pin shorts that would cause 'real problems', and having physicall separated paths, separate plugs, etc. when a short would be hazardous. Also, it should be physically impossible to plug a system together wrongly. In brief, assume that every possible fault and mistake will occur, so prevent them from causing a hazard. Note that an unconnected pin will not be very effective in reducing crosstalk/leakage ... so you might need earthed intervening pins as well unconnected pins in some situations.
--------------
Best wishes,
Dave
What do you all think?
Seems immune to if someone mistakenly brought out a crossover cable. Although doing that used up the extra/spare wires.
Any bent pins on the low-order pins should trigger a FaultAlarm. Any bent pins on the high-order pins should either trigger a FaultAlarm or prevent the RSO_MasterArm from enabing the PadBoxes' igniter power supply bus. Any bent pins in the mid-order pins might trigger a FaultAlarm or burn out 5V networking logic. Do not see how any bent pins could enable a launch.
Think I've got complementary signals within individual wire pairs.
Does anyone see something I missed? Thanks.