Contradiction in spectral sequence calculation of $H_*(BO(2))$ $\newcommand{\Z}{\mathbb{Z}}$
For this post I am going to assume the answer namely $H_*(BO(2))=\Z_2[w_1,w_2]$.
Consider the fibration $S^1 \hookrightarrow BO(1) \to BO(2)$. The $E^2$ page has $E^2_{i,0}=E^2_{i,0}(\Z/2)^{i+1}$.  Since the cohomology of $H_*(BO(1))=\Z/2$ in all dimensions, $ H_i(X)=\oplus_p E^\infty_{p,i-p}=Z/2$.
Now the contradiction:  There is nothing to get rid of $E^2_{1,0}$ so no matter what there will be a $(\Z/2)^2$ summand in $\oplus E^\infty_{p,1-p}$. In more detail the $d_2$ differentials coming out of and into this spot must be zero because they are maps to or from zero groups; Thus $E^2_{1,0}=E^3_{1,0}$.  Now $E^3=E^\infty$.  So we obtain that $(\Z/2)^2 \subset H^1(RP^\infty)$.  What is wrong?

edit I had made some errors in my first posting.  There shouldn't be any now.
 A: The class $w_2$ is in degree $2$, not $1$, so it is not true that $H^i(BO(2))$ has dimension $i+1$ (I assume you mean to be talking about cohomology, though often you write homology instead).  In particular, $H^1(BO(2))$ is generated by $w_1$ and thus is $1$-dimensional.
A: $\newcommand{\Z}{\mathbb{Z}}$
I am going to work backwards for the first part
Since $H_*(BO(2))=\Z_2[w_1,w_2]$ where $w_1$ and $w_2$ are vector space duals of the respective stiefel whitney classes, by degree we get that $H_n(BO(2))=\lfloor \frac{n+2}{2} \rfloor$.
We get two rows of this on the $E^2$ page.  The nonzero differentials on the $E^2$ page are the surjective differentials from a $(\Z/2)^i$ entry to $(\Z/2)^{i-1}$ entry(two to the left and one up).
Thus on the $E^\infty$ page we get $\Z/2$ for $E^\infty_{p,0}$ and 0 otherwise.  This is all good because the sums along the diagonals are $\Z/2$.
On the other hand it is not hard to see that this is the way the differentials must have been structured to get the diagonal sums $\Z/2$ on the $E^\infty$ page. So this actually proves that the homology is what it is.
Getting the torsion is easier: Let the coefficients be in $\newcommand{\Q}{\mathbb{Q}} $ $\Q$.  Since $H_*(RP^\infty)=Q$ in dimension 0 and 0 otherwise, everything must die on the $E^\infty$ page. Looking at the $E^2$ page, the bottom $H_1$ must survive so it has to be 0.  This implies that the differential going to $E^2_{1,0}$ must be 0, and the $E^2_{3,0}$ also survives and must be 0.  Hence $H_i=0$ for $i$ odd by induction.  For $i$ even we need a $\Q$ to kill the $E^2_{0,1}$ term, $H_2=\Q$ and thus $H_i=\Q$ for all $i$ even.
There is no $p-$ torsion for $p>2$ because the $E^\infty$ page is exactly the same as the torsion case, and since the differentials on $E_2$ were uniquely determined in the torsion case from this information, the $H_i(BO(2),\Z/p)=0$ for $i$ odd and $\Z/p$ for $i$ even.  But this is exactly what we would get from universal coefficients from the torsion terms.  So there is no $p-$ torsion.
Thus $H_i(BO(2))$ is $\Z^{n/2} \oplus (\Z/2)^{\frac{n+2}{2}-\frac{n}{2}}=(\Z/2)^{n/2}\oplus \Z$ for $n$ even and $(\Z/2)^{(n+1)/2}$ for $n$ odd.

edit:  my piecing together of the $p-primary$ parts and the argument that there is no $p-$torsion is a bit sketchy and possibly incorrect.  I got class now but I will fix it up when I get back.
