ASN.1 encoding off RSASSA-PSS default parameters
Bouncy Castle is correct. Bouncy Castle contains a BER/DER encoder that changes ASN.1 objects into encoding by explicitly coding it that way - manually, as far as I understood. As this structure is represented using the distinguished encoding rules (DER) the structure should be empty. DER uses the minimum number of bytes to encode values.

DEFAULT ASN.1 values - just like XML default values in XSD schema's - should be filled in when the structures are parsed. So the HSM should automatically replace the values when parsing the data. If it doesn't contain a fully featured ASN.1 parser it may be that this needs to be coded explicitly (making this relatively vulnerable to implementation mistakes). 

As I'm currently at home I'll use the venerable "A Layman's Guide to a Subset of ASN.1, BER, and DER" instead of directly quoting from the ITU-T X.690 / ISO/IEC 8825-1 specs:


  Contents octets are the same as the BER encoding, except that if the value of a component with the DEFAULT qualifier is the default value, the encoding of that component is not included in the contents octets.


Note that that quote is for the encoding of a SEQUENCE.