Author Topic: ARM-Cortex with 16 bidirectional USB endpoints  (Read 2154 times)

0 Members and 1 Guest are viewing this topic.

Offline josipTopic starter

  • Regular Contributor
  • *
  • Posts: 163
  • Country: hr
ARM-Cortex with 16 bidirectional USB endpoints
« on: July 06, 2023, 06:01:12 am »
I know for Freescale Kinetis and RP2040. Is there any other ARM-Cortex devices with 16 bidirectional USB endpoints?

 

Offline GromBeestje

  • Frequent Contributor
  • **
  • Posts: 294
  • Country: nl
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #1 on: July 06, 2023, 04:21:29 pm »
What do you mean by bidirectional endpoints, as IN and OUT endpoints are individual things.
Do you need 16 IN  and 16 OUT endpoints (do you count endpoint 0x01 and 0x81 as bidirectional endpoint 1)
or are you fine with 8 IN and 8 OUT endpoints, adding them up to 16?
Also, does this count include or exclude the SETUP endpoint 0  (0x00 / 0x80) ?
 

Offline josipTopic starter

  • Regular Contributor
  • *
  • Posts: 163
  • Country: hr
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #2 on: July 06, 2023, 07:40:38 pm »
I know that most devices are with about 8 bidirectional (8 IN and 8 OUT) endpoints. This is not what I am looking for.

Kinetis family is with 16 bidirectional (16 In and 16 OUT) endpoints. I am looking for something like this but with more horse power.
 

Offline GromBeestje

  • Frequent Contributor
  • **
  • Posts: 294
  • Country: nl
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #3 on: July 06, 2023, 08:14:49 pm »
I've looked through some datasheets I've in my collection, (STM32, XMC4, EFM32, PSoC4, PSoC5, nRF52) but it seems SETUP + 7 IN/OUT is the max there.
The RP2040 you already mentioned is the only one I could find.
 

Offline Nominal Animal

  • Super Contributor
  • ***
  • Posts: 7531
  • Country: fi
    • My home page and email address
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #4 on: July 06, 2023, 09:45:58 pm »
I too have never seen anything more powerful in the microcontroller class than (now NXP) Kinetis K66 (180 MHz, etc.) with 16 bidirectional USB endpoints.

In particular, the i.MX RT1062 (600 MHz) as used in e.g. Teensy 4.x only has 8, as is usual.

In theory – there being no reason why it wouldn't work, I just haven't seen anyone do it – you could use something like i.MX RT1062, which has two high-speed USB devices (one is OTG, as is usual, but both are capable of low-speed, full-speed (12 Mbit/s) and high-speed (480 Mbit/s) USB) with 8 bidirectional endpoints each, connected to a two-port hub.  It would show up as a hub and two separate devices to the OS, but since you need many endpoints (which in e.g. Linux can be exposed each as a separate device), it should not be a problem.  With a normal USB hub, the overall bandwidth is still limited to at most 480 Mbit/s (and not twice that), though.
 

Offline SiliconWizard

  • Super Contributor
  • ***
  • Posts: 16283
  • Country: fr
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #5 on: July 06, 2023, 09:49:39 pm »
Why do you need 16 endpoints though?
Are you sure you really need that?
 

Online XIVN1987

  • Newbie
  • Posts: 1
  • Country: cn
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #6 on: July 07, 2023, 03:48:27 am »

CH32V305 USBHS has 16 bidirectional endpoints.
 

Offline GromBeestje

  • Frequent Contributor
  • **
  • Posts: 294
  • Country: nl
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #7 on: July 07, 2023, 06:07:54 am »
I didn't have a look at RISC-V MCUs for this, but as you mention the CH32V3 series, it shares its peripherals with the CH32F2 series.
So if you're looking for a Cortex-M based MCU, it seems the CH32F203 might be an answer as well.
 

Offline josipTopic starter

  • Regular Contributor
  • *
  • Posts: 163
  • Country: hr
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #8 on: July 07, 2023, 08:39:58 am »
Well, I was looking at CH348 (high speed USB to Octal Serial Ports) and didn't thinking in direction that they (WCH) probably have IP hardware part (high speed USB with more than 8 endpoints) that is included in their microcontrollers.

Now (thanks to XIVN) AFAIK, WCH is only device with HS USB module with 16 bidirectional endpoints, and FS USB too. Unfortunately they don't have SPI with 4 data lines (and I need this).

Kinetis K26 and K66 are with 16 bidirectional endpoints in FS USB module. HS USB is limited to 8, like in most micros today.

I am working on K32L2A (KL28 remake) that have all that I need. Searching few days over mouser and digikey, for same but more horse power and HS USB, ended without result.

Just to comment IMXRT. I was also thinking about 2 HS USB module inside micro bridged with extra USB HUB chip on board. IMXRT need extra flash chip, half of the pins are not GPIO, there is special power on/off sequence and there is no DAC (except 1170). Not for me.
 
The following users thanked this post: Nominal Animal

Offline JPortici

  • Super Contributor
  • ***
  • Posts: 3630
  • Country: it
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #9 on: July 07, 2023, 09:10:41 am »
Well, I was looking at CH348 (high speed USB to Octal Serial Ports) and didn't thinking in direction that they (WCH) probably have IP hardware part (high speed USB with more than 8 endpoints) that is included in their microcontrollers.

Now (thanks to XIVN) AFAIK, WCH is only device with HS USB module with 16 bidirectional endpoints, and FS USB too. Unfortunately they don't have SPI with 4 data lines (and I need this).

Kinetis K26 and K66 are with 16 bidirectional endpoints in FS USB module. HS USB is limited to 8, like in most micros today.

I am working on K32L2A (KL28 remake) that have all that I need. Searching few days over mouser and digikey, for same but more horse power and HS USB, ended without result.

Just to comment IMXRT. I was also thinking about 2 HS USB module inside micro bridged with extra USB HUB chip on board. IMXRT need extra flash chip, half of the pins are not GPIO, there is special power on/off sequence and there is no DAC (except 1170). Not for me.

I checked on microchip's side.. and to my surprise while PIC32MZ EF has high speed usb, it "only" has 8 bidirectional endpoints, whereas a much more lowly PIC24 (PIC24FJ GU series) has full speed USB, 16 bidirectional endpoints, and of course nowhere the grunt required. PIC32MK has the same full speed USB IP core as in the PIC24, so you would get your 16bidirectional endpoints (and the 100pin variants actually come with two USB modules) but it will surely lack in other areas, i would put it on par with a Cortex M4
ATSAME70 has 9 bidirectional endpoints, but probably ticks all the other boxes

I wonder what could be the use care for all those endpoints anyway?
 

Offline josipTopic starter

  • Regular Contributor
  • *
  • Posts: 163
  • Country: hr
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #10 on: July 07, 2023, 09:29:05 am »
PIC using the same FS USB IP core as Kinetis. PIC USB documentation is better than Kinetis, and I was reading PIC manuals during USB coding on KL27.
 

Offline JPortici

  • Super Contributor
  • ***
  • Posts: 3630
  • Country: it
Re: ARM-Cortex with 16 bidirectional USB endpoints
« Reply #11 on: July 07, 2023, 01:30:54 pm »
PIC using the same FS USB IP core as Kinetis. PIC USB documentation is better than Kinetis, and I was reading PIC manuals during USB coding on KL27.

Ah! did not know that
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf