P1477 reed switch not open-
Im going throught this problem also P1477 code on my E46/99 bmw 328i, also dont forget to check all the vacume lines, it is very common on this car that the hoses they use go rotten very quick, along with the intake tubes or elbows, i found massive holes on my mine also many vacume lines damaged, i still have the 1477 code, but ive seen various post were people swapped the fuel breather valve, i checked all the canister tours the rear of the vehicle, they all seemed fine , no broken lines, everything is tight but the fuel breather valve its only between 80 to 100$, compare to the 350$ canister... go figure, and its fixed quite a few cars, so ill give it try, wipe the codes, and hope it doesnt come back, good luck....