Should this be

    if (! this->WritePadData(0x2000))

Strange that this module seems to have "this->" all over the place needlessly. (Not your fault, and DON'T change it as part of this review!)