Estimation of state-of-charge (SOC) is a key criterion to evaluate the battery management system (BMS). Due to the flat open-circuit voltage (OCV)–SOC curve of LiFePO4 batteries, it is a great challenge to estimate the SOC accurately. Here we present a dual-circuit state observer for SOC estimation of LiFePO4 batteries. It is a combination of an open loop based current integrator and a proportional-integral (PI) based state observer. We also employed an easy but practical drifting current corrector to restrain the influence of the drifting current. The experiment results show that error of the estimated SOC is less than 2.5% by the proposed method when the initial SOC is unknown. We proved that with no matrix operations, the proposed method is lighted-weighted and high efficient, which is suitable for embedded systems.