Hmm, yes you are close. I have to say that I have only played with this a little and mostly under Ubuntu and that was a few years ago!
My own modem turned out to be supported by u3g on FreeBSD so I didn't need usb_modeswitch.
Does your modem have an SD card slot?
It looks like it's doing it's thing. From the log you see it has removed the virtual cd drive and you can see it receives the '1' response it's looking for.
From memory the creation of a new serial port does not generate any log entries which is why I initially thought my modem wasn't working.
Check the contents of /dev.
There are two ways in which serial ports are represented by FreeBSD and both are shown just to confuse you. Here is the output from my box before I connect my modem:
[2.0.1-RELEASE][root@pfsense.fire.box]/dev(2): ls
ad0 ata cuau0 devctl klog mem ptmx stdout ttyu1.lock urandom
ad0s1 bpf cuau0.init devstat kmem nfslock pts ttyu0 ufs usb
ad0s1a bpf0 cuau0.lock fd led null random ttyu0.init ufsid usbctl
ad0s2 console cuau1 fido md0 pci speaker ttyu0.lock ugen0.1 xpt0
ad0s2a crypto cuau1.init geom.ctl md1 pf stderr ttyu1 ugen1.1 zero
ad0s3 ctty cuau1.lock io mdctl ppi0 stdin ttyu1.init ugen2.1
And after:
[2.0.1-RELEASE][root@pfsense.fire.box]/dev(3): ls
ad0 console cuaU0.2.init devstat mdctl pts ttyU0.1.init ttyu1.lock xpt0
ad0s1 crypto cuaU0.2.lock fd mem random ttyU0.1.lock ufs zero
ad0s1a ctty cuau0 fido nfslock speaker ttyU0.2 ufsid
ad0s2 cuaU0.0 cuau0.init geom.ctl null stderr ttyU0.2.init ugen0.1
ad0s2a cuaU0.0.init cuau0.lock io pass0 stdin ttyU0.2.lock ugen1.1
ad0s3 cuaU0.0.lock cuau1 klog pass1 stdout ttyu0 ugen2.1
ata cuaU0.1 cuau1.init kmem pci ttyU0.0 ttyu0.init ugen2.2
bpf cuaU0.1.init cuau1.lock led pf ttyU0.0.init ttyu0.lock urandom
bpf0 cuaU0.1.lock da0 md0 ppi0 ttyU0.0.lock ttyu1 usb
cd0 cuaU0.2 devctl md1 ptmx ttyU0.1 ttyu1.init usbctl
cua and tty devices are all serial ports. Those with a capital 'U' in the name are USB connected serial ports. You can see that my modem add three serial ports.
Steve