Live data from Hacker News

Show HN: Interactive pinout for the Raspberry Pi Pico 2

pico2.pinout.xyz

31–36 of 36 posts

Re: Show HN: Interactive pinout for the Raspberry Pi Pico 2

#31

I wish many manufactures would begin adding Pin mux inside MCU, like espressif. So most of the time you don't care which pin has which function, and make designing pcb for it much less painful.

Nordic's nRF family is the major other vendor I've seen doing this, almost all peripheral can be on any pin. It's definitely a big help for designing boards.

Re: Show HN: Interactive pinout for the Raspberry Pi Pico 2

#32

I wish many manufactures would begin adding Pin mux inside MCU, like espressif. So most of the time you don't care which pin has which function, and make designing pcb for it much less painful.

Definitely - the ESP32S3 is an absolute joy to work with and layout.

How do you go about designing a PCB with this in mind though? At least in KiCad, the requirement to make nets first and layout last makes it so I basically have to do a draft layout in my head, connect the pins in the circuit diagram and then do the final layout.

Do you have a better workflow for this?

I'd love to have something that I can just feed a list of tags for each pin and have it pick the pins and make the layout in the fewest layers and/or with fewest vias possible (the latter would be amazing for making perfboard prototypes). Something like MCU_PIN1={uart1_tx,gpio_out,gpio_in,gpio_in_pullup...}, J2_PIN1={uart1_tx}, ... and then it just...figures it out and gives me pin table that I can use in the code (like a bunch of #defines).

Re: Show HN: Interactive pinout for the Raspberry Pi Pico 2

#33
This is really cool!

I especially love the ability to flip and reverse things, since I try to avoid comparing any two objects in different orientations, to cut down on mistakes.

It would be really cool if the community had a more general purpose open standard interactive diagramming tool for this sort of thing.

I guess the easy way would be to mark up photographs with pin locations, which would map to pins in a table, allowing for multiple tables in a document.

I'm not sure how you'd capture the data in a way that could be rendered to something like a screen reader or a more abstract diagram though, without a lot of complexity and edge cases.

Would it be enough to just verbally describe the mapping between pin numbers and the physical layout, as in "Across then down, starting at upper left", or would you need a meta data scheme for that?

Re: Show HN: Interactive pinout for the Raspberry Pi Pico 2

#34

This is really cool! I especially love the ability to flip and reverse things, since I try to avoid comparing any two objects in different orientations, to cut down on mistakes. It would be really cool if the community had a more general purpose open standard interactive diagramming tool for this sort of thing. I guess the easy way would be to mark up photographs with pin locations, which would map to pins in a table…

I've thought about this on and off for years, trying to find a way to boil the stuff I've learned making Pinouts into some kind of tool.

There are a surprising number of pitfalls, since there's always some complexity most top-level diagrams don't reveal, but I feel is necessary to capture/avoid duplication of work- specifically, I mean documenting the pinout of the chip (RP2350, ATMEGA32U4, STM32H750, RP2 etc) and then translating that to a board layout.

I think the closest I've come is a prototype Pinout rewrite which started with chip [1] and board [2] JSON files.

Then, as you explore, there's the whole problem of presenting this information. I chose to capture information such as header type, orientation and pin-count but sometimes a header is too small (or there are too many headers) to document in-band so the kinda skeuomorphic presentation of the Pico pinouts doesn't work.

Perhaps that's where something like the minimap [3] from my "advanced" RP2350A pinout comes in.

Having a small representation of the board with the pin headers separate could work. It's been a while, IIRC a Fritzing [4] part involved creating a vector graphic of a part and naming the individual pin objects such that they could be mapped to a table of signals. I think SVG is compatible with this approach but... yeah, requiring people to create detailed board artwork (as good as it looks) is a stretch. The same could work for a good photo and just a table of offsets, as you suggest.

TLDR: This is a great idea and something I've wanted to do for ages. But I don't think I've got enough breadth of experience to do it alone.

1. https://github.com/pinout-xyz/pinout-2024/blob/main/chips/bc... 2. https://github.com/pinout-xyz/pinout-2024/blob/main/boards/r... 3. https://rp2350a.pinout.xyz

Re: Show HN: Interactive pinout for the Raspberry Pi Pico 2

#35

Earlier quoted context omitted.

Definitely - the ESP32S3 is an absolute joy to work with and layout.

How do you go about designing a PCB with this in mind though? At least in KiCad, the requirement to make nets first and layout last makes it so I basically have to do a draft layout in my head, connect the pins in the circuit diagram and then do the final layout. Do you have a better workflow for this? I'd love to have something that I can just feed a list of tags for each pin and have it pick the pins and make the l…

I will tend to do make the schematic. I’ll use labels for most connections from the mcu to any peripherals.

On the PCB, the most critical thing to my mind, is component placement. I’ll do that before any wiring up and then use that to determine the most sensible GPIO pins to use.

For the routing I’ll modify the pins used to make it easier/simpler.

It’s definitely an iterative process with a lot of back and forth between schematic and PCB.

The nice thing with the flexibility of the GPIOs is that I don’t need to do much upfront design. I’ll just label pins up in the schematic and if needed tear it up and redo.

The real trick in the schematic is not “wiring” all the connections up. Just use labels that are easy to move around.

Re: Show HN: Interactive pinout for the Raspberry Pi Pico 2

#36

This is really cool! I especially love the ability to flip and reverse things, since I try to avoid comparing any two objects in different orientations, to cut down on mistakes. It would be really cool if the community had a more general purpose open standard interactive diagramming tool for this sort of thing. I guess the easy way would be to mark up photographs with pin locations, which would map to pins in a table…

I've thought about this on and off for years, trying to find a way to boil the stuff I've learned making Pinouts into some kind of tool. There are a surprising number of pitfalls, since there's always some complexity most top-level diagrams don't reveal, but I feel is necessary to capture/avoid duplication of work- specifically, I mean documenting the pinout of the chip (RP2350, ATMEGA32U4, STM32H750, RP2 etc) and th…

It seems like the "Photo and offsets" approach is pretty commonly used, and I can't personally say I have any complaints, even though the CLI enjoyers might disagree.

Maybe it could be paired with a basic image generator for common layouts?

Or maybe it could just have a set of selectable hardcoded layout engines, since "counterclockwise from upper left" and "across then down" cover a lot of things.

"Base64 of an images plus and offsets table" could just be a layout type, and people could submit PRs for anything else.

Maybe it could be something like: Your pin(or callout) Tables

Your Sections, which could have an image and some text

Your Images, that would either be literal pictures or rendering instructions that reference a table

So you could have a complete cheat sheet for any device on one page.

Post reply on HN