Bonus heroes have the same rarity as the character you pull.So you will not get a 4* bonus hero from a 3* pull.So it doesn't help to only set a 4* character as a bonus hero - you will get a random 3* BH from a 3* pull.Same applies for the 5* tier but I'm guessing you got a 3* BH and were expecting a 4* one.