Was the CharacterController touching the ground during the last move?
using UnityEngine;
public class Example : MonoBehaviour { CharacterController controller;
void Start() { controller = GetComponent<CharacterController>(); }
void Update() { if (controller.isGrounded) { print("CharacterController is grounded"); } } }