[Galaxy S I9000 General] LiverpoolFCfan:
I am on Vodafone in Ireland, and they similarly released 2.3.3 recently.

Search for CheckFusDownloader_v0.5.exe

I used it to download the firmware, then flashed with Odin.

The Vodafone command to Check and Download was

CheckFusDownloader_v0.5.exe -dl I9000XWJPA/I9000OXXJP7/I9000XXJPP/I9000XWJPA GT-I9000HKDVDI

where the long string is made up of PDA/CSC/MODEM/PDA and as far as I can tell only the last 3 characters of the Product Code string are relevant.

Here is what the output looks like for a -c (check) option. The -dl (download) option will download the updated firmware for you. Read up on the need for the decryption dll from Kies before starting your download.

C:\Download>CheckFusDownloader_v0.5.exe -c I9000XWJPA/I9000OXXJP7/I9000XXJPP/I9000XWJPA GT-I9000HKDVDI
Model: GT-I9000
PDA: I9000XWJPA
CSC: I9000OXXJP7
PHONE: I9000XXJPP
PCODE: VDI

------== Retrieved info ==------
LATEST_FW_VERSION: I9000XWJVH/I9000VDIJV1/I9000XXJVO/I9000XWJVH
BINARY_NAME: GT-I9000_VDI_1_20110706174225.zip.enc2
LAST_MODIFIED: 20110706174231
BINARY_CRC: 2797483747

C:\Download>

You basically need to replace the product ID and product code strings with the O2 equivalent - I got these from a colleagues phone that was still running Froyo. The key is you have to have a legitimate string before it can find and download the appropriate firmware for you.

EDIT :- Just tried making an O2 string, and it looks like it worked

Based on the title of your post, and the format of the latest Vodafone string, I just tried the following, and it appears to be correct for your purposes.

C:\Download>CheckFusDownloader_v0.5.exe -c I9000XWJVH/I9000O2IJV3/I9000XXJVO/I9000XWJVH GT-I9000HKDO2I
Model: GT-I9000
PDA: I9000XWJVH
CSC: I9000O2IJV3
PHONE: I9000XXJVO
PCODE: O2I

------== Retrieved info ==------
LATEST_FW_VERSION: [B]I9000XWJVH/I9000O2IJV3/I9000XXJVO/I9000XWJVH[/B]
BINARY_NAME: GT-I9000_O2I_1_20110706165346.zip.enc2
LAST_MODIFIED: [B]20110706165352[/B]
BINARY_CRC: 383734098

C:\Download>

EDIT:- END

Note: This process will not reset your Product Code - so you will still not be able to update it again through Kies without further steps.

For Vodafone (VDI) - I downloaded a MultiCSC ROM from Ramad's thread http://xdaforums.com/showpost.php?p=14273101&postcount=1

In the Europe section there is a ROM that contains most European carriers. It mentions O2C but not O2I - perhaps an oversight, or maybe it is not in there.

XWJVH/XXJVO/OXXJV9/Sbl (CSC: MultiCSC): Download (142.5 MB) (Build date: Wed May 4 18:03:59 KST 2011)

(MultiCSC: AUT, BSE, CNX, COA, COS, CPW, CRO, CYO, CYV, EUR, IRD, KOR, MET, MOZ, MSR, MTL, O2C, ONE, ORO, ORS, SEB, SIM, SMO, SUN, TMZ, TOP, TPH, TRA, TRG, TSR, TWO, VDH, VDI, VIM, VIP, VVT, XEH, XEO, XEZ, XFA, XFC, XFE, XFM)

In any case probably worth your while to try. If O2I is not in there. Alternatively, there are 2.2 releases further down the page that do have O2I in them.

I flashed this, then used the *#272*IMEI# method to bring up the Sales Code selection menu. I picked VDI from there, and allowed it to reboot. This restored the VDI product/sales code. Then, I flashed the VDI version of 2.3.3 over the top.

Now Kies recognizes the ROM, and says it is the latest available.

Good luck!