I have posted a new question about a problem close to yours.
In my case, I didn't have any problems of full scale output with PiPyADC. The example.py given needs to be modified because it's a test case of the Waveshare card (potentiometer and Light sensor on firts ADC channels, ....) but when you have made these changes, everything works well to me.
I think you have followed all the jumpers and wiring procedure but in case, you can verify that you don't have the jumper of Vref on 3,3V, ... as described in the PDF.
You have some configuration informations that you can also try to change in ADS1256_default_config.py
To make a test, you can also try to use directly the functions defined in the pipyadc.py file as :
read_continue
read_sequence
I used them into my own Python program directly and it works well, and the digital output reaches 5V...
If this can help you...
Good luck, best regards