Is it possible to program barebones Atmega328 using an Arduino Uno with SMD mounted chip (unremovable)? The guides I found require the chip to be removed to upload a sketch. Is there any way around this without having to buy the USB converter or other hardware?
Yes. You can temporarily convert your SMD Uno to be an ISP programmer, using the ArduinoISP sketch. Then you can burn a bootloader or a sketch to your barebones atmega328.
Step 1: upload the ArduinoISP sketch to the Uno.
Step 2: attach an "anti-reset" capacitor to the Uno.
Step 3: set up the barebones atmega328 on a breadboard with a "minimum circuit" (no crystal necessary unless you want one).
Step 5: connect the Uno to the breadboard as described in the ArduinoISP tutorials.
Step 6: upload your sketch, or a bootloader, to the barebones atmega328 using the Uno as an ISP programmer.
Ok that explains a guide I found that used a removable looking uno template picture. They weren't explicit about moving the chip.. I thought it was an undesired omission. I wanted to make sure before heading to the shop.
Is there a guide you can recommend for what I'm trying to achieve? My shop offers atmega328 with bootloader installed and not installed (for an extra $2?)
Ah, well, there's no point paying the extra $2 unless you have a USB-serial adaptor. The adaptor lets you upload sketches to the chip on using "serial programming" like you would on a regular Uno. For that to work you need the bootloader installed on the chip. If you don't have the adapter, you can't do serial programming with an SMD Uno, as far as I know. But you can use your Uno as an ISP ("In-circuit Serial Programmer"), in which case a chip that comes with the bootloader installed is just a waste of money, buy a truly "bare" chip for less.
Can you rephrase your statement? There is terminology I'm not familiar with yet. I've read about the different communication methods, I was hoping not to fry my chips with trial and error.
They are selling 328 with bootloader for $7.50 and without bootloader for 11.50 which seems backwards for the extra work. I also have a Pi 4 if that helps things.
In that case let me inform you. If there is a bootloader on the chip other than the UNO bootloader (eg nano or pro-mini), you can use an UNO without issue, as long as the sketch on the UNO doesn't interfere with the Serial port in any way.
An empty sketch, blink or it's variants anything really as long as there is no Serial.begin() and pin 0 & 1 are not used in any way. RX to RX & TX to TX, basically connects the 16u2 and with there now being 2 different id's it won't interfere.
Other option is to create a constant hw Reset by connecting the reset of the UNO to GND i think, that is not a method i ever use.
Yep, backwards to me as well, but i just buy a pro-mini for less than E2,- on Ali. I doubt if the Pi 4 helps.
The method that @PaulRB describes in reply #2 is the most straightforward and consistent. It works either way, with bootloader or to burn the bootloader.
Yes, I guess that could work. The sketch on the Uno must not use Serial.begin(). But how do you prevent the Uno from getting reset and uploading the sketch intended for the standalone atmega328 (with bootloader) ?
You don't prevent it from getting reset, and the bootloader must be for a different type say Pro-mini or Nano, or you have to reset it all the time (rather than using DTR)
Manually just before the upload is attempted, that means just after the IDE reports the complete compilation, one can release a manual reset button. (that would have to be created)
This is the way i used to upload to pro-mini boards (until i found that connecting reset on the UNO & Pro-mini also worked if oi just had an empty sketch on the UNO.
Thanks everyone for the information. I found a few Pi guides that appear to work which I am more familiar with though I imagine I'll end up trying a few methods. I'll be picking up a few ATTiny85 chips as well which will simplify my 'Arduino' projects for $3 each. Its quite a bit pricier buying OEM components but at least I'll be starting out without bugs. I've had some bad experiences with knock offs.
I've also been looking into barebones ESP32 modules. These are available online from reputable dealers for $4 each with wireless capabilities. Feels like AT chips are old news now.