[G2 and Desire Z Android Development] kbeezie:
I don't know if it's because it's T-Mobile USA specific, but I did not get H/H+ (HSDPA) indicator until after I set the following property in build.prop from 2 to 3. (EDIT: I noticed the latest build.prop in the 706 rom is set to 3 when I unzipped it, can you confirm that you changed this from earlier builds?).

ro.ril.hsxpa

In case anyone else has a T-Mobile G2, which would have different radio bands for the higher speeds.

This is my current build.prop (With the T-Mobile G2 branding and google client ID for tmobile) modified off the original 706 rom build.prop

#Wed Jul 11 11:01:24 EDT 2012
ro.product.manufacturer=HTC
ro.rommanager.developerid=teamkang
ro.com.android.wifi-watchlist=GoogleGuest
persist.sys.usb.config=mass_storage,adb
ro.aa.mainsku=531
ro.product.model=T-Mobile G2
ro.ril.hsupa.category=7
ro.ril.disable.power.collapse=1
ro.build.fingerprint=tmobile/htc_vision/vision:4.0.4/IMM76I/87995:user/release-keys
ro.ril.rscp.threshold.nv=110
ro.lge.proximity.delay=250
ro.build.product=vision
debug.qctwa.statusbar=1
media.a1026.nsForVoiceRec=0
keyguard.no_require_sim=true
ro.build.version.sdk=15
net.bt.name=Android
debug.composition.type=gpu
ro.ril.enable.dtm=0
ro.build.host=K6789AC
debug.sf.hw=1
rilswitch.ganlibpath=/system/lib/libganril.so
ro.aa.skulist=531
ro.build.display.id=IMM76I
ro.max.fling_velocity=6000
ro.aa.romver=2.16.531.5
ro.mot.buttonlight.timeout=1
ro.product.locale.region=US
wifi.interface=wlan0
ro.ril.hep=1
net.tcp.buffersize.evdo_b=6144,262144,1048576,6144,262144,1048576
ro.telephony.default_network=3
ro.da1.enable=true
ro.error.receiver.system.apps=com.google.android.feedback
ro.media.enc.jpeg.quality=99
ro.ril.enable.r8fd=0
ro.camera.preview=true
ro.sf.compbypass.enable=0
ro.url.legal=http://www.google.com/intl/%s/mobile/android/basic/phone-legal.html
dalvik.vm.heapstartsize=14m
net.tcp.buffersize.wifi=262144,524288,1048576,262144,524288,1048576
mot.proximity.delay=250
net.tcp.buffersize.hsdpa=6144,262144,1048576,6144,262144,1048576
ro.ril.oem.ecclist=911
ro.vold.umsdirtyratio=20
ro.ril.disable.fd.plmn.prefix=23402,23410,23411,23420
ro.ril.enable.sdr=0
ro.ril.hsdpa.category=10
debug.gr.swapinterval=0
ro.product.brand=tmobile
wifi.supplicant_scan_interval=55
profiler.force_disable_err_rpt=1
ro.config.notification_sound=Proxima.ogg
ro.build.date.utc=1340642014
ro.board.platform=msm7x30
dev.pm.dyn_samplingrate=1
ro.com.google.locationfeatures=1
ro.setupwizard.enable_bypass=1
profiler.force_disable_ulog=1
ro.ril.hsxpa=4
ro.product.device=vision
ro.product.locale.language=en
htc.audio.alt.enable=0
ro.aa.taskid=215074
media.a1026.enableA1026=1
ro.ril.oem.cnap=1
ro.setupwizard.enterprise_mode=1
ro.ril.ecc.HTC-WWE=999
ro.ril.rxd.mode.nv=10
ro.aokp.version=elitemodded_aokp_vision_build-40_20120625
hwui.render_dirty_regions=false
ro.ril.ecc.HTC-ELL=92,93,94
ro.min_pointer_dur=0
ro.build.characteristics=default
dalvik.vm.dexopt-flags=v=a,o=v,u=y,m=y
ro.build.id=IMM76I
net.tcp.buffersize.lte=262144,524288,1048576,262144,524288,1048576
ro.com.android.dateformat=MM-dd-yyyy
net.tcp.buffersize.default=6144,87380,110208,6144,16384,110208
net.tcp.buffersize.umts=6144,87380,110208,6144,16384,110208
rilswitch.vendorlibpath=/system/lib/libhtc_ril.so
ro.aa.cidlist=T-MOB010
rild.libpath=/system/lib/librilswitch.so
ro.product.name=htc_vision
debug.enabletr=false
ro.build.tags=release-keys
ro.config.alarm_alert=Cesium.ogg
ro.com.google.networklocation=1
ro.min.fling_velocity=3000
ro.product.board=vision
ro.build.description=4.0.4 AOKP release-keys
ro.build.version.codename=REL
debug.performance.tuning=1
ro.config.nocheckin=1
mobiledata.interfaces=gannet0,rmnet0,rmnet1,rmnet2
video.accelerate.hw=1
ro.product.cpu.abi=armeabi-v7a
ro.ril.ecc.HTC-GCC=999,112,997
ro.aa.project=Vision_Gingerbread_S
dalvik.vm.heapgrowthlimit=42m
ro.goo.developerid=aokp
ro.kernel.android.checkjni=0
ro.sf.lcd_density=240
dalvik.vm.heapsize=64m
ro.goo.version=18
dalvik.vm.stack-trace-file=/dev/null
dalvik.vm.checkjni=false
htc.audio.hac.enable=0
ro.com.google.clientidbase=android-tmobile-google
ro.com.google.clientidbase.vs=android-hms-tmobile-us
ro.com.google.clientidbase.ms=android-hms-tmobile-us
persist.adb.notify=0
net.tcp.buffersize.edge=6144,26280,35040,6144,16384,35040
dalvik.gc.type=precise
ro.ril.update.org.acoustic=1
net.tcp.buffersize.gprs=6144,8760,11680,6144,8760,11680
ro.ril.fast.dormancy.rule=1
ro.build.date=pon, 25 cze 2012, 18:33:34 CEST
ro.com.android.dataroaming=false
ro.ril.gprsclass=12
ro.ril.def.agps.feature=1
ro.ril.enable.ganlite=1
ro.com.google.gmsversion=2.3_r3
ro.build.version.release=4.0.4
ro.ril.enable.amr.wideband=0
ro.product.cpu.abi2=armeabi
net.tcp.buffersize.hspa=6144,87380,262144,6144,16384,262144
# a53 1 = increased security 0 = increased performance
ro.ril.enable.a53=0
ro.ril.enable.a52=0
ro.aa.modelid=PC1010000
ro.ril.bler.threshold.nv=125
ro.goo.rom=aokp
windowsmgr.max_events_per_sec=60
ro.telephony.ril.v3=signalstrength
ro.url.legal.android_privacy=http://www.google.com/intl/%s/mobile/android/basic/privacy.html
ro.build.user=android-build
ro.opengles.version=131072
ro.aa.maincid=T-MOB010
ro.aa.rid=341
ro.ril.enable.gea3=0
ro.ril.radio.svn=2
ro.config.ringtone=Girtab.ogg
persist.sys.camera-sound=1
dalvik.vm.lockprof.threshold=500
ro.ril.enable.rxd=1
debug.qctwa.preservebuf=1
ro.aa.customizationid=219420
ro.build.type=userdebug
ro.secure=0
com.qc.hardware=true
ro.build.version.incremental=eng.ja.20120625.183246
ro.wifi.channels=
persist.sys.strictmode.visual=0
ro.ril.fast.dormancy.timeout=10
net.dns2=8.8.4.4
net.dns1=8.8.8.8
# agps mode from 1 to 2
ro.ril.def.agps.mode=2
ro.telephony.call_ring.delay=500
com.qc.hdmi_out=false
ro.gsm.2nd_data_retry_config=max_retries=3, 2000, 2000, 2000

Changing and then doing an EFS wipe put the changes into effect (and as such showing the H indicator and verifying in network info).

and my gps.conf I mentioned from earlier:

NTP_SERVER=us.pool.ntp.org
AGPS=http://derekgordon.com/gps-files/bin/xtra.bin
XTRA_SERVER_1=http://derekgordon.com/gps-files/bin/xtra.bin
XTRA_SERVER_2=http://xtra3.gpsonextra.net/xtra.bin
XTRA_SERVER_3=http://xtra2.gpsonextra.net/xtra.binSUPL_HOST=supl.google.com
DEFAULT_AGPS_ENABLE=TRUE
DEFAULT_USER_PLANE=TRUE
DEFAULT_SSL_ENABLE=FALSE
INTERMEDIATE_POS=1
ACCURACY_THRES=3000
QOS_ACCURACY=50
QOS_TIME_OUT_AGPS=95
QOS_TIME_OUT_STANDALONE=80
QosHorizontalThreshold=1000
QosVerticalThreshold=500
AssistMethodType=1
AgpsUse=1
AgpsServerType=1
AgpsServerIp=3232235555
AgpsMtConf=0
AgpsMtResponseType=1
SUPL_HOST=supl.google.com
SUPL_PORT=7276
SUPL_NO_SECURE_PORT=3425
REPORT_POSITION_USE_SUPL_REFLOC=1
C2K_HOST=default
C2K_PORT=0
CURRENT_CARRIER=common
PHONE_TYPE=UMTS

Which I've been able to lock around 8 to 12 satellites down to about 10ft (sometimes 6ft) accuracy.