This appears to be an unintentional side effect of a recent update to the PWM system. In earlier releases all calculations were handled in scaled values until the PWM was being sent to the hardware at which point the scaling was converted. This inserted a multiply and divide into an interrupt handler which caused excessive processor load. The newer firmwares(4.1.27+) converted the internal calculations to hardware range before entering the interrupt. Since GetPWMs(Command 48) just sends out the current calculated PWM values being used by the interrupt handler, previously it was properly scaled and now it is not.
I've added the scaling to the output command itself(Command 48) so the next release will have the proper +-32767 scaling range again. If you would like a pre-release for this please email
support@basicmicro.com.