Bare-bones arduino with USB to serial converter

Hey, I got a question,

I want to make a barebones Arduino that can take in USB serial input (ROS commands). I was planning to use a raspberry pi for the ROS code then send it to the Arduino via USB but I am unsure if this is possible without additional components. I am using at atmega328 chip. do I need the atmega16U2 chip to convert the USB ROS commands to serial (RX, TX) for the Arduino to understand or can I just connect the RX, TX pins to the D-,D+ pins for the female USB socket? Any and all help would be greatly appreciated!
Thank you,

Use an FTDI module, I use the ones from
USB-B Mini connector, USB-B Micro connector options.

328P can't do anything with D+/D-. There is V-USB interface, but it's a bit of a kludge. FT232 will give you more consistent results for $6.90. No need to program the FT232. Get a driver for it at if needed.
Here is one plugged onto a '1284P board

Mouser also carries one that can be solidly mounted on a board if desired, Mikroe-483

No need to get USB involved, the Raspberry Pi has serial ports. Just keep in mind that it uses 3.3V. If you run the ATmega at 3.3V/8MHz, you can just connect them directly, if you run it at 5V, you'll have to use a level shifter.


The USB will make it easier to down load code into it, without having to go thru the Pi. Also a handy tool to have for a future project.

Ok thank you all for the many replies! I think I will go with using the FTDI module since it seems the easiest to implement.