I am attempting to model a screw so that I can 3d print them if my son looses them. I thought this would be a good time for me to play with the new blender 2.80. (why do people keep calling this Blender 2.8?) I have modeled all of the cylinders and the Philips cavity into one part (I used bools to merge all of this but always check for clean results) and then the screw threads in a separate object. Both of these objects (named "Screw" for the cylindrical post and "Threads" for the threads) are manifold and look good from a geometry point of view. When I try to do a boolean union between the two, I get a lot of internal faces and manifold problems. I have two clean meshes here which I thought would play nicely with the boolean operations.
I obviously need to have a clean mesh to support the printing efforts. I have attached the blend file here for easy checking. Any pointers?
As an aside, I typically avoid using booleans but it seemed in this case that would be the easier approach.