An Ethernet switch for $6.9 directly from JLCPCB is pretty incredible, thank you for making this product sector a tiny bit better :)
[1] https://sagarpatil.me/projects/cms-avi-hw
[2] https://botblox.io/products/micro-gigabit-ethernet-switch
An Ethernet switch for $6.9 directly from JLCPCB is pretty incredible, thank you for making this product sector a tiny bit better :)
[1] https://sagarpatil.me/projects/cms-avi-hw
[2] https://botblox.io/products/micro-gigabit-ethernet-switch
Some thoughts:
- Agreed with not using I2C, I2C has been identified as a root cause in several cubesat mission failures: https://pure.tudelft.nl/ws/portalfiles/portal/10531886/art_3... and https://webapps.unsworks.library.unsw.edu.au/fapi/datastream... (yes clock stretching is evil). I2C should be banned for multi board communication
- Classic CAN have very small 8 byte MTU with frame preemption, which is actually useful for its intended purpose of time critical automotive data transfer. If that 4 byte brake packet is blocked by a 1500 byte packet then your car will crash and explode. But the tradeoff is that this makes it very slow for bulk data transfer
As an example, the Nintendo Switch used I2C over a ~2m cable to communicate between the controller and nunchuck. Worked fine even in noisy household settings with wifi and microwaves and whatnot.
At work we've used sensors for data logging that communicate using I2C over distances more than 20 meters, using plain Cat5 cable.
A longer cable means more bus capacitance, which means with the same pullup resistor the signal rise time will be higher, which means you need to reduce the bus speed. A stronger pullup will reduce the rise time (allowing a higher bus speed), but each chip's driver has to be able to overpower the pullup too. If the pullup is too strong for the drivers, you end up being unable to send a zero.
In practice your cables can be quite long, you just have to run it at a lower speed. If you really want to push it, there's always transceivers like the PCA9615 which turn it into a differential bus.
https://www.latticesemi.com/what-is-serdes
Someone else mentioned the PCA9615 which looks like it'd to the job.
https://learn.adafruit.com/adafruit-wii-nunchuck-breakout-ad...
Also thank you, I've loved working on the PSP rocket! Bi-propellant rocketry is a pretty rare to do as an undergraduate, and you should consider applying to these schools if that's something that motivates you:
- Purdue: https://purdueseds.space/
- Berkeley: https://www.berkeleyse.org/
- UCLA: https://www.rocketproject.seas.ucla.edu/
- Georgia Tech: https://www.gtspaceprogram.com/
- ERAU: https://daytonabeach.erau.edu/about/labs/rocket-laboratory
This is a non-exhaustive list of schools I know that have undergraduate-run liquid rocketry programs.
https://www.pdx.edu/psu-space#psas
Undergrads, not catching on fire in space!
There are products at different price points on the market, for example this 55x55mm switch from my company Brainboxes[1] is sub $50. We choose that size so that we could also produce a gigabit option with the exact same footprint. We opted for microMatch[2] style connectors as you can get board to board as well as board to cable options.
Your co-leads decision to buy-in is quite common, as you can reduce time to market and also not have to manage the component lifecycle if you go with an off the shelf option.
[1] https://www.brainboxes.com/product/pure-embedded/pe-505
[2] https://www.te.com/en/products/brands/micro-match.html?tab=p...
By "buy-in" I was referring to the parent comment and how the electronics guy chose to buy-in a pre-made module rather than design their own.
Not sure if that justified the price difference