Code Monkey home page Code Monkey logo

Comments (24)

emard avatar emard commented on September 15, 2024

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

hm. yes, I see. I think I'll add some notes for clarification. PR coming soon.

but on this topic, I'm wondering if perhaps the - + label on the PCB for J2 might be reversed?

Note from the pic above, that differential pair 14 is near the end of the connector closest to Pin 1. As the 14 is near the bottom of J2, I assume this means the physical board numbering is reverse of that on the schematic, right? (this would make sense, since it is rotated 180 degrees as compared to J1.

image

However, if indeed Pin 1 of J2 is at the bottom of the PC board near the 3.3+, that would make pin one, and all the odd numbers of J2, the negative side of the differential, right?

Note the tiny - + printed on the board between the 14 and 15 of J2.

For clarity, here's J2 schematic upside down, but oriented the same as viewing the PC board with the USB and DVI connectors at the top:

image

The negative side of the differentials should be to the right, correct? (odd J2 pin numbers on the bottom of the connector as view in the pic)

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

yes, I did find that the silkscreen on the board is correct - but the schematic is not? It does appear all of the even numbers are GNxx; (as indicated by the - + on the J2 silkscreen) and the odd pin numbers, closest to the edge of the board are GPxx (of J2, I did not check J1).

For me, this became most evident when my AD/DA was not doing any conversions. I found the CLK on pin 29 of my board, needed to be connected to GN14 on pin 6, even though pin 6 (on the inverted J2 image, above) is labeled as GP14.

It is certainly good news that the silkscreen is correct. Unfortunately I was working from the schematic for quite some time before I realized that.

I've certainly had my share of where is pin 1 issues over the years... ;) however that was usually with the cable. Regardless of male or female connector, pin one on the PC board remains the same, no? I do believe all the P/N notations on the schematic are reversed - and it would be really great to also invert the connector on the schematic to reflect the inverted orientation on the PC board, do you agree?

As further evidence, check out this view of the KiCad, J2 from above - viewing front of board:

image

And here it is rotated 180 degrees:

image

Note this view is from the top of the board. The only way that pin 1 would be on the left when looking from above, is if in fact the connector was on the back of the board. Do you agree? (see also this pic on wikipedia)

Also: Perhaps on the next version of silkscreen, you could add something to make pin 1 abundantly obvious?

If you agree with all this, I'd be happy to implement and submit a PR :)

Edit: it appears J1 is also reversed. Admittedly, I soldered on my own header - but surely the side with the display and connectors is considered "top" no? The only way for this numbering to work is to solder the connector on (what I would consider) the "back" of the board:

image

Edit 2: replaced above pic to show the "front" (F.Cu) of the board in KiCad, with the numbering reversed, expected to have the header on the back?

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

Well, I don't mean to be so persistent that I am annoying - but respectfully, I disagree. :) I'm also certainly willing to be wrong.

For one, I do not believe that changing between male and female headers changes the numbering scheme on the board. I think the reversal you are thinking of, is looking at the cable connector, or the device connector.

First, do we agree the "Front" of the ULX3S is as labeled in KiCad - the side with the display and connectors?

Let's take a look at another example, the J8 header mounted on the front of the board for the Raspbettery Pi. See the Schematic:

image

Pin 1 is in the same position on the physical board of the RPi, (to the left when looking down at the connector on the front of the board) regardless of male or female connector that may be soldered on, as well as regardless of straight or angled. Agreed?

And here's where they document Pin 1 as the 3v3 for the header, which would be Pin 1 for a male or female connector when the header is mounted on top of the board:

image

For reference, here's a Molex angled connector from Mouser:

image
image

I drew the red connection showing pin 1 reference, assuming the same orientation as the RPi connector, above. In both the case of looking down at the PC board, or looking at the connector, Pin 1 is to the left.

I think the issue with ribbon cables, is more whether they have the connector crimped on upside-down or not.

Here's a random female connector ribbon cable from superuser (which I agree are the most common and the headers should be male). In this case, I assume we are looking into to holes of the connector, and is completely consistent with the numbering shown above.

image

Note how Pin 1 is to the right when looking at the cable connector, but to the left looking at the device header (PC Board ). You'd flip this cable upside down to plug it in to the Molex sample above, and both Pin 1's would align.

So returning to our example of the ULX3S, the only way for Pin 1 to be to the right on the PC Board here, assuming we are looking at the front of the board, is to have the header mounted on the back of the board:

image

Note for the cable pic shown above, the only way for Pin 1 to align is to plug the cable into the bottom of the board, exactly as oriented in both pictures.

My apologies if you believe I am wrong... I'm only looking for accuracy here - and to hopefully help others others avoid the frustration I had over the weekend. If you still believe that I am incorrect - I am certainly willing to listen, if you can show me otherwise :)

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

Aha - you know... I stand corrected. Indeed if the on-board connector is female, Pin 1 is to the right as shown in this Mouser datasheet

image

I was too fixated on the standard male header, above - and even missed this part when you mentioned the PMODs (which are male and expect a female header).

image

I wonder if the header should be male like most dev boards, particularly with something that looks like a ribbon cable connector, with PMOD adapters? That way end users can have breakouts like the ones for the Raspberry Pi's such as this one from Adafruit

Well, thanks for checking. :)

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

But wait! (oh no, I think I am going crazy) The original issue was regarding the reversal on the schematic. Note on the schematic, Pin 1 is drawn to the left (the standard for male header), but on the PC Board, Pin 1 is on the right (expecting a female connector).

My whole point was to be consistent, as I was following the schematic, incorrectly assuming it was also a physical wiring diagram - but note the GN/GP for differential pair 14:

image

The original issue was how the silkscreen - + is correct. Note the first message for this issue (above): you comment in the constraint file that SITE "U18"; # J2_5+ but the positive differential is actually on Pin 6, no? Pin 5 is labeled on the schematic as GN14

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

Well, I certainly appreciate your patience here... Clearly I've not been very effective in communicating the issue. ;)

First: Ironically, despite the GP/N14 differential pins in question being ADC pins, I am not actually using them for that. My AD/DA converter is external, connected to the ULX3S as shown here and in operation here - having nothing to do with the fact that those ULX3S pins are also differential A/D pins (I was referring to the general topic of differential P/N for all naming of the pins).

The issue I am trying to convey is the schematic has Pin 1 reversed, shown on the left, and the PC Board has Pin 1 on the right:

image

So for instance when looking at the schematic for GN14, I connected my wire here:

image

Which I thought was this position on the header, Pin 5:

image

But the PC Board (Female connector as you noted) has that numbered as Pin 6 for both J1:

image

and J2:

image

Pin 6 is actually GP14, correctly noted on schematic, but illustrated on the opposite side when actually viewing the connector.

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

old? OLD!? LOL. You mean "old" as in the version prior to the one you edited just yesterday?? ;)

well then: yes! that's great! :) Just like that. (and yes, I feel rather silly for ranting on above, but in the end, it appears you agreed with me that the old schematic was misleading).

I did see your changes yesterday regarding default page orientation and text searching - both excellent updates - but I had not noticed the connector changes!

This is great, much more helpful:

image

image

Thank you for making those changes. :)

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

yes, indeed. :)

Regarding this comment, from above:

this was remains of my pin numbering required for kicad to "understand" differential so my "logic" was to use odd connector pins like j1_5 for the pair j1_5+ j1_5- problem is with kicad, it would not "understand" that j1_5+ j1_6- belong to the same differential pair because in kicad, differential pins must be named the same except being different by trailing - or +, then kicad autodetects this as "pair". But anyway, just ignore this J1_x+ pinning, use GP,N which is more logical

I wonder if perhaps since this was your "logic" - perhaps the notation should be removed from the constraint file? (using the rationale that if it was confusing to me, it may be to others as well?) Or clarified: J1_5_6+ and J1_5_6- - particularly now that the note had been added to the schematic about the change in numbering based on a male or female header.

I do agree GP,N is more logical.

btw - you may with to add some text to the schematic that states why the default as shown is a female connector, specifically to accommodate PMOD connectors without an adapter.

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

Hi, ok.

so while I have your attention... :)

can you tell me the significance of GR_PCLK3_0

image

Is this simply a work in progress? Other pins have similar labels that could be added (and imho, would be cool to have them indicated). Just wondering if there's any importance to this particular one?

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

hello @emard - I noticed this issue from several months ago is still open. I think you resolved this with the latest schematic updates? As I opened this issue - are you waiting on me to close it or is it left open for some other reason?

cheers

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

thank you for the schematic updates :)

from ulx3s.

emard avatar emard commented on September 15, 2024

from ulx3s.

gojimmypi avatar gojimmypi commented on September 15, 2024

Hello @emard - yes, for you - certainly! Thank you again for all your help and patience as I learn some of this stuff. Send me a gmail dot com; email same as my github name. I have extra headers that I can include and/or solder on for you, if you'd like.

For reference, my KiCad docs for this board are still on the development branch of my ulx3s-adda project. Which reminds me: I think I need to make my OshPark project public. I was really quite happy with myself in getting this initial pass-through working:

image

I am looking forward to seeing what you can do with that AD/DA board! The ScopeIO project looks very cool.

from ulx3s.

Related Issues (15)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.