tepples wrote:
hyarion wrote:
why would you need an extra GND for a differential signal?
In order to move the signal and ground paths for that signal closer together on the connector.
Yet, you'd still be using essentially the same path as you would normally. For example, with a device on the cart side, you'd be utilizing pin 16-20+51-5, and pin 72; on the EXP conn side, you'd be using local GND for any modules. I'm pretty sure that the length is essentially equidistant, and even if it isn't, the difference is likely to be so marginal that nobody would ever notice.
Consider that you could place a CAN component on the cart board so that its signal path is closer to GND just as easily as adding an extra GND path to place it closer, so what is the positive advantage of bridging the GND signal from EXP p02/47 to cart 53 (EXP7) for a device on the cartridge? I guess I'll have to follow the trace to see if it's meaningful, as the EXP bus isn't on the EDC schematics and I don't have any others handy.
I can see wanting the CAN bus close tot he EXP pins for signal quality, but on the NES, all GND paths are effectively shared. IF you really----really---need a GND on the EXP bus for that particular appllication, make it selectable somehow. Obviously, you'd need to be able to enable GND to cart vs. GND to EXP bus on the cartridge end as well as the EXP conn end, but this is easier in the long-run than the deisgn of a gate-array that adds the GND bus.
I say, test it with the cart GND pin and see if all is well before dedicating this function. A sawbuck says there'd be little if any detectable or even noticeable difference, save on a scope.
I just think that, unless you make it possible for multiple EXP pin settings, it's frivolous, but I'm giving my idea of a software programmable array of functions serious consideration, pending replies from the others involved or in the forum. I think a CPLD or even a simple PLD is ideal for this and would allow for any function on the EXP conn to be placed on the EXP pins via software control.
That way, the decision of what is available is entirely up to the designer of expansion-enabled cartridge hardware, which if done well, would permit infinite flexibility. Otherwise, you can resort to manual jumpering, which is doable, but a pain for the user. The (C)PLD method is user-invisible, and this the easiest for those folks that don't want to have to meddle, or even those too lazy to move their NES once everything is plugged into it underneath.
The last option is to make a full UnderDeck(TM) module that snaps under the control deck, with a lot of space for hardware and switches on the front. The problem here is cost, as moulding a plastic shell is uber-expensive, whereas the positive benefit is expanded working space for cool stuff, and even a possible future expansion protocol (e.g. micro-slots) to add new modules to it in the future.
If I had first-hand access to injection moulding equipment, I'd have considered this first, as it's the nicest solution, but if we'd need to shell out a fortune for it, that kind of $$$ is best saved for a complete system casing or something equally neat.
I am working on some side-projects to help fund this though. Nothing spectacular, but they'll sell to a boatload of people, with a decent margin, so I can put the majority of the gross into this project, which is a cash-eater to set up. :/
CAN Bus info:
Application for License
The patent in question, USPTO#6208924 will expire somewhere between 2019 and 2020.. I sure hope this'll be done before then, as I'd like to see it realized before Im six-feet-under, but there are licensed CAN technologies to consider, as well as application for licensing the patent. Alternatively, you walk the grey line of ambiguity, but I prefer never to do that. It only gets you deeper in debt than licensing the stuff in the first place. ...