I didnt set a PVID on port 2. Wont this lock the port to only accepting packets from a specific VLAN? Port 2 is going to the Opnsense LAN port which would be carrying mixed packets, i guess this is what you might call a trunk from what ive read (the ability to carry multiple VLANs over one cable?). Ive only set a PVID on port 8 since this is absolutely going to be going to a device that should be on VLAN 9.
You did write above that the client is untagged on port 2 and the opnsense as a trunk on port 8. So, PVID on port 2, no pvid on port 8.
Also, try not to mix tagged and untagged on port 8, it will probably not work.