Need hardware recommendation

Greetings all,

A bit new to the Arduino scene... I'm looking for some recommendations of what chip best suits a current project. Would like to accomplish the following:

  1. USB connection to a host PC, emulating a MIDI device. Is it possible to emulate multiple MIDI devices at the same time?
  2. Physical 10/100 Ethernet connection, with the capability of a few simultaneous TCP/IP socket connections
  3. Two independent UARTs capable of 115.2k baud

All three of those things, at the same time. What chip(s) should I start looking at?

Thanks!
Bob

There is no chip that has all that functionality. However, when we look at boards, I think a Beaglebone Black could do all that. A Raspberry pi also perhaps, not sure.

An Arduino Mega would also be able to handle it, but you'd need an external Ethernet connection.

Gotcha. I'm looking for something that can boot fairly quickly, or at least start listening to the UARTs within a couple seconds of being powered on. The PIs need an external board for the second serial port, and are a bit of overkill in terms of hardware (not to mention currently very expensive!), so wanted to see what was on the Arduino side. I'm not opposed to adding another board (like for ethernet connectivity), but am not familiar with all the current chips and their capabilities.

Are there supply chain issues / high costs with any of these like there are with the PIs?

I believe the STM32H7 series has all that... MIDI implementation will be "roll your own" but it has the USB support for it.

Including the PHY for this: "Physical 10/100 Ethernet connection?"

Not that I've seen. I had someone contact me last year about a project that I was going to spec the pi for. By the time she got back to me, even the Model 2 B+ was over $100 but the Beaglebone price hadn't budged from $55. And I already had one on hand just in case...

Maybe one of the Teensys?
(Though you may need to solder your own Ethernet connector)

I'm certainly not opposed to add hardware to existing boards. I'm really just trying to find what chip has the capabilities that I need for this project. If there is an existing board that has everything I need, great... but if it needs some added stuff, that's ok.

The STM32H7 series - I'll look into that. Is this an example? https://www.mouser.com/ProductDetail/STMicroelectronics/NUCLEO-H743ZI2?qs=lYGu3FyN48cfUB5JhJTnlw%3D%3D

Bob

Is that processor really fast enough to handle a whole network stack with a few sockets, as well as keep up with the serial ports?

I don't know (I have no requirement for Ethernet, and so haven't tried it), but the Teensy4 runs at 600MHz.

=1 for the Teensy (4.1) it does seem a logical choice. Does have Ethernet on board although you do need to solder the connector.

Fast, heaps of memory and flash, 8 UARTS, etc .......

In looking over the specs, it does appear the Teensy 4.1 should be ideal. Thanks for all the ideas!

Do you have such code?

I will, once I write it! There will be both a TCP server, as well as a UDP server.

Then you better start looking at toolchain and middleware support options for the processors that you are considering.

Oh? I can't just create sockets in C++?

It's your project.

Not without an operating system or library that actually implements the underlying network stack.

The Teensy 4.1 board I got has a RJ45 network interface, as well as a USB. Where do I look for such an OS / dev platform?

This was the first hit on DDG: GitHub - vjmuzik/NativeEthernet: Native Ethernet library for Teensy 4.1