add select mechanism for read add poweron function comm/bgm add reset function comm