Is smarmengol Modbus software serial compatible with half duplex RS485 modules?

What would be the point of that logic? Incomplete implementation?

Seems like it. Stepping on Serial's registers is not a Good Thing.

If you use AltSoftSerial, you could call flushOutput. It will wait for the last stop bit to be shifted out. I don't know if the ModBus library has an ISR for TXComplete, so if you don't want to block at flushOutput, you'll have to modify AltSoftSerial (or use the one I modified, NeoICSerial). I'm adding the TxComplete callback now...