A self-adaptive battery management system (BMS) based on CAN-bus for power Li-ion battery was designed in this paper. It is designed distributed and composed of sampling modules, a master module and some aid devices. The sampling module is used to sampling the voltage of the cells and the temperature in the pack. And it keeps the temperature in safe range by controlling the fans in the pack. The master module receives the information from the sampling modules, samples the current of the main road, estimates the state of charge (SOC), the state of health (SOH), controls the main road relays. The modules communicate with each other by CAN-bus. The fault and temperature management are performed adaptively. It is shown that this self-adaptive BMS extend the battery lifetime and guarantee safe operation. And the self-power consumption is very low.