• RP400 40-pin connector

    From John Larkin@3:770/3 to All on Sunday, August 11, 2024 11:53:20
    XPost: sci.electronics.design

    I want to use an Raspberry Pi 400 (the keyboard thing) as the
    dev/debug system for an RP2040 based product.

    https://www.amazon.com/Raspberry-Computer-Keyboard-Layout-Kabel/dp/B08QCQVWH2

    It has a 40-pin connector on the back. Various sources say that pins 1
    3 and 5 are either GPIO ports 8 9 and 7 or maybe 2 3 and 4.

    Sometimes the pins are labeled WPI and BCM. Wot's that?

    https://www.amazon.com/Coolwell-Waveshare-Raspberry-Adapter-Expansion/dp/B08RZCR7S8

    I can fix most mistakes there in software, just by reassigning port
    names. But two pins are critical, the SWDIO and SWCLK debug lines out
    to a Pi Pico or to the 2040 chip.

    I suspect that on the Pi 400 pin 18 is GPIO5 = SWDIO and pin 22 is
    GPIO6 = SWCLK.

    Is that right? Does that actually work?

    I also note that some people also connect the UART tx/rx between the
    Pi400 and a Pico for debugging. Should I do that too? Does it help
    software development?

    Thanks!

    --- SoupGate-Win32 v1.05
    * Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)
  • From Edward Rawde@3:770/3 to John Larkin on Sunday, August 11, 2024 16:22:04
    XPost: sci.electronics.design

    "John Larkin" <jjlarkin@highlandtechnology.com> wrote in message news:d21ibjdvt6odqium3ado62ob1e7sa6n9hc@4ax.com...
    I want to use an Raspberry Pi 400 (the keyboard thing) as the
    dev/debug system for an RP2040 based product.

    https://www.amazon.com/Raspberry-Computer-Keyboard-Layout-Kabel/dp/B08QCQVWH2

    It has a 40-pin connector on the back. Various sources say that pins 1

    This connector?
    https://www.pi4j.com/1.3/images/pi4j-rpi-400-pinout.png

    3 and 5 are either GPIO ports 8 9 and 7 or maybe 2 3 and 4.

    Sometimes the pins are labeled WPI and BCM. Wot's that?

    https://www.amazon.com/Coolwell-Waveshare-Raspberry-Adapter-Expansion/dp/B08RZCR7S8

    If that's just a connector then continuity check it to the above drawing of the connector on the Pi.


    I can fix most mistakes there in software, just by reassigning port
    names. But two pins are critical, the SWDIO and SWCLK debug lines out
    to a Pi Pico or to the 2040 chip.

    I suspect that on the Pi 400 pin 18 is GPIO5 = SWDIO and pin 22 is
    GPIO6 = SWCLK.

    Is that right? Does that actually work?

    I also note that some people also connect the UART tx/rx between the
    Pi400 and a Pico for debugging. Should I do that too? Does it help
    software development?

    Thanks!

    --- SoupGate-Win32 v1.05
    * Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)
  • From John Larkin@3:770/3 to invalid@invalid.invalid on Sunday, August 11, 2024 13:59:36
    XPost: sci.electronics.design

    On Sun, 11 Aug 2024 16:22:04 -0400, "Edward Rawde"
    <invalid@invalid.invalid> wrote:

    "John Larkin" <jjlarkin@highlandtechnology.com> wrote in message news:d21ibjdvt6odqium3ado62ob1e7sa6n9hc@4ax.com...
    I want to use an Raspberry Pi 400 (the keyboard thing) as the
    dev/debug system for an RP2040 based product.

    https://www.amazon.com/Raspberry-Computer-Keyboard-Layout-Kabel/dp/B08QCQVWH2

    It has a 40-pin connector on the back. Various sources say that pins 1

    This connector?
    https://www.pi4j.com/1.3/images/pi4j-rpi-400-pinout.png

    Yes.


    3 and 5 are either GPIO ports 8 9 and 7 or maybe 2 3 and 4.

    Sometimes the pins are labeled WPI and BCM. Wot's that?

    https://www.amazon.com/Coolwell-Waveshare-Raspberry-Adapter-Expansion/dp/B08RZCR7S8

    If that's just a connector then continuity check it to the above drawing of the connector on the Pi.

    The real question is whether pin 3 is GPIO8 or GPIO2, and which two
    pins are the SW debug.

    On the Pi4, pin 3 is GPIO2. It seems like the pins are renamed on the
    Pi 400, where pin 3 is GPIO8. Why would they do that?

    --- SoupGate-Win32 v1.05
    * Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)
  • From Jan Panteltje@3:770/3 to jjlarkin@highlandtechnology.com on Monday, August 12, 2024 00:03:52
    XPost: sci.electronics.design

    On a sunny day (Sun, 11 Aug 2024 11:53:20 -0700) it happened John Larkin <jjlarkin@highlandtechnology.com> wrote in <d21ibjdvt6odqium3ado62ob1e7sa6n9hc@4ax.com>:

    I want to use an Raspberry Pi 400 (the keyboard thing) as the
    dev/debug system for an RP2040 based product.

    https://www.amazon.com/Raspberry-Computer-Keyboard-Layout-Kabel/dp/B08QCQVWH2

    It has a 40-pin connector on the back. Various sources say that pins 1
    3 and 5 are either GPIO ports 8 9 and 7 or maybe 2 3 and 4.

    Sometimes the pins are labeled WPI and BCM. Wot's that?

    https://www.amazon.com/Coolwell-Waveshare-Raspberry-Adapter-Expansion/dp/B08RZCR7S8

    Expensive
    Just some ideas... things I used with normals Pis :-) https://www.panteltje.com/pub/rtl_sdr_dump1090_via_FDS132_matrix_display_Raspberry_Pi_driver_IMG_4149.JPG
    https://www.panteltje.nl/pub/FDS132_matrix_display_Raspberry_Pi_interface_board_IMG_4129.JPG
    https://panteltje.nl/pub/raspberry_pi_interface_to_pic_programmer_IXIMG_1345.JPG


    I can fix most mistakes there in software, just by reassigning port
    names. But two pins are critical, the SWDIO and SWCLK debug lines out
    to a Pi Pico or to the 2040 chip.

    I suspect that on the Pi 400 pin 18 is GPIO5 = SWDIO and pin 22 is
    GPIO6 = SWCLK.

    Is that right? Does that actually work?

    I dunno, have no 400 here.


    I also note that some people also connect the UART tx/rx between the
    Pi400 and a Pico for debugging. Should I do that too? Does it help
    software development?

    Debugging via RS232 is a good thing.

    --- SoupGate-Win32 v1.05
    * Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)
  • From Jan Panteltje@3:770/3 to jjlarkin@highlandtechnology.com on Monday, August 12, 2024 00:03:52
    XPost: sci.electronics.design

    On a sunny day (Sun, 11 Aug 2024 13:59:36 -0700) it happened John Larkin <jjlarkin@highlandtechnology.com> wrote in <u29ibj5vrgievu9lbvqmthavn4bguj9h8h@4ax.com>:

    On Sun, 11 Aug 2024 16:22:04 -0400, "Edward Rawde"
    <invalid@invalid.invalid> wrote:

    "John Larkin" <jjlarkin@highlandtechnology.com> wrote in message news:d21ibjdvt6odqium3ado62ob1e7sa6n9hc@4ax.com...
    I want to use an Raspberry Pi 400 (the keyboard thing) as the
    dev/debug system for an RP2040 based product.

    https://www.amazon.com/Raspberry-Computer-Keyboard-Layout-Kabel/dp/B08QCQVWH2

    It has a 40-pin connector on the back. Various sources say that pins 1

    This connector?
    https://www.pi4j.com/1.3/images/pi4j-rpi-400-pinout.png

    Yes.


    3 and 5 are either GPIO ports 8 9 and 7 or maybe 2 3 and 4.

    Sometimes the pins are labeled WPI and BCM. Wot's that?

    https://www.amazon.com/Coolwell-Waveshare-Raspberry-Adapter-Expansion/dp/B08RZCR7S8

    If that's just a connector then continuity check it to the above drawing of the connector on the Pi.

    The real question is whether pin 3 is GPIO8 or GPIO2, and which two
    pins are the SW debug.

    On the Pi4, pin 3 is GPIO2.

    GPIO2 and I2C1 sda


    It seems like the pins are renamed on the
    Pi 400, where pin 3 is GPIO8. Why would they do that?

    Yes,
    https://www.pi4j.com/1.4/pins/rpi-400.html
    But see the warning, also about reconfiguring the serial port for hardware
    Have not tried it, no 400 here.

    There were also changes between Pi1 and Pi2 IIRC:
    https://panteltje.nl/panteltje/newsflex/download.html#freq_pi
    encountered that...

    Why? The world is changing...

    --- SoupGate-Win32 v1.05
    * Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)
  • From Theo@3:770/3 to John Larkin on Monday, August 12, 2024 17:39:35
    XPost: sci.electronics.design

    In comp.sys.raspberry-pi John Larkin <jjlarkin@highlandtechnology.com> wrote:
    On Sun, 11 Aug 2024 16:22:04 -0400, "Edward Rawde"
    <invalid@invalid.invalid> wrote:

    "John Larkin" <jjlarkin@highlandtechnology.com> wrote in message news:d21ibjdvt6odqium3ado62ob1e7sa6n9hc@4ax.com...
    I want to use an Raspberry Pi 400 (the keyboard thing) as the
    dev/debug system for an RP2040 based product.

    https://www.amazon.com/Raspberry-Computer-Keyboard-Layout-Kabel/dp/B08QCQVWH2

    It has a 40-pin connector on the back. Various sources say that pins 1

    This connector?
    https://www.pi4j.com/1.3/images/pi4j-rpi-400-pinout.png

    Yes.

    Be aware that WiringPi pin numbers are only useful if you want to use that library (or similar which use the same mapping). The real BCM pin numbers
    are likely more useful.

    I normally go by:
    https://pinout.xyz/
    which gives all the optional features if you click on a pin. It also shows
    the differences between boards (eg pin 13 is different on Pi 1 rev 1).

    It seems the 400 is identical to the 4, since it's the same SoC in a
    different case.

    3 and 5 are either GPIO ports 8 9 and 7 or maybe 2 3 and 4.

    Sometimes the pins are labeled WPI and BCM. Wot's that?

    WiringPi pin numbers and Broadcom pin numbers probably.

    https://www.amazon.com/Coolwell-Waveshare-Raspberry-Adapter-Expansion/dp/B08RZCR7S8

    If that's just a connector then continuity check it to the above drawing of the connector on the Pi.

    The real question is whether pin 3 is GPIO8 or GPIO2, and which two
    pins are the SW debug.

    Pin 3:

    "GPIO 2 (I2C Data)
    Alt0 Alt1 Alt2 Alt3 Alt4 Alt5
    I2C1 SDA SMI SA3 DPI VSYNC AVEOUT VSYNC AVEIN VSYNC

    Physical/Board pin 3
    GPIO/BCM pin 2
    Wiring Pi pin 8
    GPIO/BCM pin 0 on Rev 1 ( very early ) Pi

    SDA (I2C1 Data) is one of the i2c pins on the Pi, learn more about i2c.

    SDA includes a fixed, 1.8 kΩ pull-up to 3.3v, which means this pin is not suitable for use as a general purpose IO where no pull-up resistor is
    desired."
    https://pinout.xyz/pinout/pin3_gpio2/

    Pis 0-4 (inc 400) don't have SWD debug, they have JTAG (pins 13, 15, 16,
    18). I think you need something in config.txt to enable ARM-side JTAG.

    (the Pi 5 does use SWD, on a separate header).

    On the Pi4, pin 3 is GPIO2. It seems like the pins are renamed on the
    Pi 400, where pin 3 is GPIO8. Why would they do that?

    That's the WiringPi confusion.

    (I think in the early Pi 1 days the pin numbering - like other parts of the hardware design - was quite confused, and WiringPi came up with their
    numbers to make sense of it. I think they're mostly just an additional headache now)

    Theo

    --- SoupGate-Win32 v1.05
    * Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)
  • From albert@spenarnc.xs4all.nl@3:770/3 to jjlarkin@highlandtechnology.com on Thursday, August 15, 2024 13:13:57
    XPost: sci.electronics.design

    In article <d21ibjdvt6odqium3ado62ob1e7sa6n9hc@4ax.com>,
    John Larkin <jjlarkin@highlandtechnology.com> wrote:
    I want to use an Raspberry Pi 400 (the keyboard thing) as the
    dev/debug system for an RP2040 based product.

    https://www.amazon.com/Raspberry-Computer-Keyboard-Layout-Kabel/dp/B08QCQVWH2

    It has a 40-pin connector on the back. Various sources say that pins 1
    3 and 5 are either GPIO ports 8 9 and 7 or maybe 2 3 and 4.

    Sometimes the pins are labeled WPI and BCM. Wot's that?

    https://www.amazon.com/Coolwell-Waveshare-Raspberry-Adapter-Expansion/dp/B08RZCR7S8

    I can fix most mistakes there in software, just by reassigning port
    names. But two pins are critical, the SWDIO and SWCLK debug lines out
    to a Pi Pico or to the 2040 chip.

    I suspect that on the Pi 400 pin 18 is GPIO5 = SWDIO and pin 22 is
    GPIO6 = SWCLK.

    Is that right? Does that actually work?

    I also note that some people also connect the UART tx/rx between the
    Pi400 and a Pico for debugging. Should I do that too? Does it help
    software development?

    Is the schematics from the R Pi 400 not available?
    I have the orangepi 800. The schematics are such that I can trace the
    connector pins to the soc pins. The RK3399 is fully documented.
    Mapping the io I can do "das blinken light" on the 26 pin (rp1
    compatible) connector, using ciforth (a Forth developed by me).
    Or light the upper case or numlock leds.


    Thanks!
    --
    Don't praise the day before the evening. One swallow doesn't make spring.
    You must not say "hey" before you have crossed the bridge. Don't sell the
    hide of the bear until you shot it. Better one bird in the hand than ten in
    the air. First gain is a cat purring. - the Wise from Antrim -

    --- SoupGate-Win32 v1.05
    * Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)
  • From john larkin @3:770/3 to albert@spenarnc.xs4all.nl on Thursday, August 15, 2024 08:23:59
    XPost: sci.electronics.design

    On Thu, 15 Aug 2024 13:13:57 +0200, albert@spenarnc.xs4all.nl wrote:

    In article <d21ibjdvt6odqium3ado62ob1e7sa6n9hc@4ax.com>,
    John Larkin <jjlarkin@highlandtechnology.com> wrote:
    I want to use an Raspberry Pi 400 (the keyboard thing) as the
    dev/debug system for an RP2040 based product.
    https://www.amazon.com/Raspberry-Computer-Keyboard-Layout-Kabel/dp/B08QCQVWH2 >>
    It has a 40-pin connector on the back. Various sources say that pins 1
    3 and 5 are either GPIO ports 8 9 and 7 or maybe 2 3 and 4.

    Sometimes the pins are labeled WPI and BCM. Wot's that?
    https://www.amazon.com/Coolwell-Waveshare-Raspberry-Adapter-Expansion/dp/B08RZCR7S8

    I can fix most mistakes there in software, just by reassigning port
    names. But two pins are critical, the SWDIO and SWCLK debug lines out
    to a Pi Pico or to the 2040 chip.

    I suspect that on the Pi 400 pin 18 is GPIO5 = SWDIO and pin 22 is
    GPIO6 = SWCLK.

    Is that right? Does that actually work?

    I also note that some people also connect the UART tx/rx between the
    Pi400 and a Pico for debugging. Should I do that too? Does it help
    software development?

    Is the schematics from the R Pi 400 not available?

    Yes, but the port pin nunbering is different from the Pi 4 and 5, so I
    was concerned about which pins to connect to a Pico (or a 2040 chip)
    for program loading and debugging.

    This apparently works

    https://www.dropbox.com/scl/fi/sd8mkqz3rw55fcevjouvi/OKdo_Pi400_debug_Pico.jpg?rlkey=kb5xjo75n5e5k3ncy4qs2caur&raw=1

    and one can actually count the pins on the connectors.

    One of my guys is hacking some connections and verifying. We're laying
    out some PCBs for debugging and production test, and we need to get
    the pins right.



    I have the orangepi 800. The schematics are such that I can trace the >connector pins to the soc pins. The RK3399 is fully documented.
    Mapping the io I can do "das blinken light" on the 26 pin (rp1
    compatible) connector, using ciforth (a Forth developed by me).
    Or light the upper case or numlock leds.


    Thanks!

    --- SoupGate-Win32 v1.05
    * Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)
  • From Theo@3:770/3 to All on Thursday, August 15, 2024 17:46:40
    XPost: sci.electronics.design

    In comp.sys.raspberry-pi john larkin <jlarkin_highland_tech> wrote:
    Yes, but the port pin nunbering is different from the Pi 4 and 5, so I
    was concerned about which pins to connect to a Pico (or a 2040 chip)
    for program loading and debugging.

    This apparently works

    https://www.dropbox.com/scl/fi/sd8mkqz3rw55fcevjouvi/OKdo_Pi400_debug_Pico.jpg?rlkey=kb5xjo75n5e5k3ncy4qs2caur&raw=1

    and one can actually count the pins on the connectors.

    One of my guys is hacking some connections and verifying. We're laying
    out some PCBs for debugging and production test, and we need to get
    the pins right.

    Ah, that's SWD *output*. None of the Pis have specific hardware to act as
    an SWD debugger, so it's just bitbanged GPIOs. For that it's just down to whatever pins your software has decided to use. You can presumably
    reconfigure it to use any GPIO pins.

    (5 and Pico have dedicated SWD input connectors, but that's to allow *them*
    to be debugged)

    Theo

    --- SoupGate-Win32 v1.05
    * Origin: Agency HUB, Dunedin - New Zealand | Fido<>Usenet Gateway (3:770/3)