I would try to debug that with good old console.log and print out if that element is returning true to isVisible() function
Other than that you can always waitFor some state changes like await this.element.waitFor( {state: "visible"} ) Additionally you can add a bigger timeout