OnCollisionEnter works a little differently when one of the colliding objects has a character controller on it. It will fire when an object with a rigidbody hits the character controller, but not the other way around. Take a look at OnControllerColliderHit and see if you have any luck with it.
I’ve had this problem before, and although this may not be the correct answer, I hope I can help. I assume you are using a rigidbody on the Character Controller, and you are calling it a “gameObject”. Instead: