For call waiting to work, it must be enabled for the extension (Applications → Extensions → (edit desired extension) → Advanced. Under Extension Options, set Call Waiting to Enabled.
Also, it must be enabled on the device. That’s usually the default, but if it’s not working, check the device settings.
If both are enabled and it’s still not working, paste the Asterisk log for a failing call, including pjsip logger, at pastebin.com and post the link here.