We always recommend mechanical preparation. Either diamond grinding(preferred) or shotblasting. 

It is essential that you have a profile on the concrete for the epoxy to bite onto. 

Be careful with shotblasting because it can leave patterns in the floor that can be seen through the coating. 

I do not ever recommend acid etching due to the fact the acid will penetrate into the cracks and joints and in most cases cannot be neutralized properly. When you put a coating on top of it, the moisture builds up under the coating reactivates the acid and begins to deteriorate the surface of the concrete and eventually pushes the coating off. 

I would recommend always installing a primer. Primer is the cheapest insurance against delamination. The primer is a lower viscosity material designed to penetrate into the concrete, therefore you were next coat of epoxy will bond to a material that is penetrated into the substrate. 

No you do not need to fill the joints in the floor. You can, but it is highly likely the concrete will expand or contract and crack through the coating.

If you are a contractor, make sure your customer understands the risk of filling the joints. 

If you do fill the joints, fill them with an epoxy mortar or semi rigid joint filler to support the epoxy under load. 

That depends on the material and the temperature.

Epoxy is very temperature reactive, the warmer it is the quicker it sets. Typically when you mix it in a bucket you want to pour it on the floor as quickly as possible. You normally have at least 20 minutes to squeegee it and roll it before it starts to get sticky. 

By pouring it on the floor, it slows down the chemical reaction. If you leave it in the bucket, it is referred to as “pot life” and will set up much quicker typically within 15 or 20 minutes. 

Believe it or not, yes there is. If installing epoxy in an area that is exposed to changing temperatures, as the temperature rises, it pulls vapors out of the concrete and can create bubbles just like heat rises. 

I typically try to install the prime coat in the afternoon when the temperatures are starting to drop. That reduces the chance of bubbles forming in the coating. Any subsequent coat after that doesn’t matter because the primer has sealed the floor.

Yes there is, you want to apply every subsequent coat of epoxy around 24 hours after the previous coat. If you wait any longer, oils can release out of the previous coat of epoxy and prevent bonding from the following coat. That is referred to as amine blush. If you are installing in high temperatures, that window of time may be shorter.