We already know that DA=DB=DI. Because DI=AB, triangle ADB is equilateral. But ∠ACB+∠BDA=180∘, we deduce that ∠ACB=120∘.
Because ∠BOA=2∠BDA=120∘, we deduce that ∠OAB=30∘. On the other hand, we have ∠CAH=90∘−∠CBA−∠BAC=30∘. By applying cosine law in the triangle AOH we obtain
OH2=AH2+R2−2R⋅AHcos(∠BAC+60∘),
where R is the circumradius of triangle ABC. This is equivalent to
2AHcos(∠BAC+60∘)=R.

Because HC is perpendicular to AB and BC is perpendicular to AH, we have ∠AHC=∠CBA. On the other hand, we have ∠HCA=180∘−∠AHC−30∘=90∘+∠BAC. We deduce, by applying sine law to the triangle ACH that
sin(90∘+∠BAC)AH=sin∠CBAAC=2R.
Therefore, AH=2Rcos∠BAC. By plugging this into our previous relation we obtain
2cos∠BAC⋅cos(∠BAC+60∘)=21.
This is equivalent to
cos(2∠BAC+60∘)+cos60∘=21,
and therefore, ∠BAC=15∘. Thus
∠ BAC = 15∘,∠ CBA = 45∘,and∠ ACB = 120∘.