You can use the YAVNE addon or manually change smooth of mesh
BlenderTools support that smooth data and create a custom split normal to save it
but if you want to have sharp edge MUST use Edge Split modifier
(Blender 2.90)
For Auto splitting based on angle
1. Add Edge Split modifier
2. Check Edge Angle
3. And change the value as you want
For Manual split
1. Select edges you want to be sharp
2. Ctrl + E and click (Mark Sharp)
3. Add Edge Split modifier
4. Uncheck Edge Angle
5. Check Sharp Edges
And also you can combine them
I have this question too before and you can read it in
viewtopic.php?t=275516