HP/Agilent/Keysight E9304A vs E9304A H18 power sensor - Page 1
Forum section: electronics / testgear

author: dxl
author_rank: Regular Contributor
timestamp: May 02, 2025, 08:41:06 am
content: Hi,i got a E9304A power sensor which works fine. This one goes up to 6GHz but i noted that there's option H18 - extend frequency range up to 18GHz. Of course it is tempting to add that option.I'm assuming the Sensor hardware is always the same, as these sensors have an EEPROM inside which store calibration factors and you can't enter one manually. I connected the sensor to one of my sweepers, and the measured level at 18GHz is +/- 0.1dB compared to a 8481A power sensor. So i think this confirms my assumption.I've read the eeprom from the power meter with the following python script:Code:#!/usr/bin/python3import pyvisarm = pyvisa.ResourceManager()inst = rm.open_resource('TCPIP0::192.168.0.50::gpib0,13::INSTR')with open("eeprom.bin", "wb") as file:for i in range(0, 2048):s = inst.query(f'DIAG:DET:EEPR? {i},1')value = int(s, 10)file.write(value.to_bytes(1, 'big'))file.close()Spent some time to figure out the decoding, which gives me:Code:$ ./parseTable 0: 1 (Linearity) v1, @ 0x0028 Size 259 Checksum 0xc8Table 1: 2 (Temperature compensation) v2, @ 0x012b Size 426 Checksum 0x3bTC count 2Table starts at 0, contains 9 entriesTable 2: 3 (Calibration factors) v2, @ 0x02d5 Size 398 Checksum 0x46256 frequency pointsLow path:0: 9.000000e+03Hz: low 98.5229% high 98.5229%1: 3.000000e+04Hz: low 98.7732% high 98.7732%2: 5.000000e+04Hz: low 98.7549% high 98.7549%3: 1.000000e+05Hz: low 98.7732% high 98.7732%4: 3.000000e+05Hz: low 98.7793% high 98.7793%5: 5.000000e+05Hz: low 98.7488% high 98.7488%6: 1.000000e+06Hz: low 98.8037% high 98.8037%7: 3.000000e+06Hz: low 99.0784% high 99.0784%8: 5.000000e+06Hz: low 98.9563% high 98.9563%9: 1.000000e+07Hz: low 99.8474% high 99.8474%10: 3.000000e+07Hz: low 100.0122% high 100.0122%11: 5.000000e+07Hz: low 100.0000% high 100.0000%12: 1.000000e+08Hz: low 99.9023% high 99.9023%13: 3.000000e+08Hz: low 99.7681% high 99.7681%14: 5.000000e+08Hz: low 99.6887% high 99.6887%15: 8.000000e+08Hz: low 99.8047% high 99.8047%16: 1.000000e+09Hz: low 99.8840% high 99.8840%17: 1.200000e+09Hz: low 99.8291% high 99.8291%18: 1.500000e+09Hz: low 99.7070% high 99.7070%19: 2.000000e+09Hz: low 99.4080% high 99.4080%20: 3.000000e+09Hz: low 99.1699% high 99.1699%21: 4.000000e+09Hz: low 98.8647% high 98.8647%22: 5.000000e+09Hz: low 98.6877% high 98.6877%23: 6.000000e+09Hz: low 98.6267% high 98.6267%High path:0: 9.000000e+03Hz: low 97.8333% high 97.8333%1: 3.000000e+04Hz: low 98.0103% high 98.0103%2: 5.000000e+04Hz: low 97.9858% high 97.9858%3: 1.000000e+05Hz: low 98.0347% high 98.0347%4: 3.000000e+05Hz: low 98.0835% high 98.0835%5: 5.000000e+05Hz: low 98.0164% high 98.0164%6: 1.000000e+06Hz: low 98.0103% high 98.0103%7: 3.000000e+06Hz: low 96.8506% high 96.8506%8: 5.000000e+06Hz: low 97.9614% high 97.9614%9: 1.000000e+07Hz: low 98.1506% high 98.1506%10: 3.000000e+07Hz: low 99.7803% high 99.7803%11: 5.000000e+07Hz: low 100.0000% high 100.0000%12: 1.000000e+08Hz: low 99.8352% high 99.8352%13: 3.000000e+08Hz: low 99.9146% high 99.9146%14: 5.000000e+08Hz: low 100.3601% high 100.3601%15: 8.000000e+08Hz: low 101.6663% high 101.6663%16: 1.000000e+09Hz: low 102.6611% high 102.6611%17: 1.200000e+09Hz: low 103.0945% high 103.0945%18: 1.500000e+09Hz: low 103.1067% high 103.1067%19: 2.000000e+09Hz: low 102.7954% high 102.7954%20: 3.000000e+09Hz: low 102.3804% high 102.3804%21: 4.000000e+09Hz: low 102.0325% high 102.0325%22: 5.000000e+09Hz: low 101.8005% high 101.8005%23: 6.000000e+09Hz: low 101.8555% high 101.8555%Table 3: 4 (Header) v1, @ 0x0463 Size 92 Checksum 0x63Sensor model E9304A, serial MY41495552 type STD cal date: 63191830Table 4: 5 (Misc) v2, @ 0x04bf Size 31 Checksum 0x310=0, 1=0 2=f600 4=0 5=0 7=40000 b=40000 f=5064c30 13=7 14=23 15=7 16=23 17=666 19=3e8 1b=3e8 1d=1600Haven't finished linearity data and thermal compensation data.My plan is to extend the calibration table up to 18 GHz by adjusting it against my other power sensors. This is not as precise as a factory calibrated sensor, but should be good enough for hobby use.I'm just wondering what a E9304A H18 sensor would report as type in response to a 'SERV:SENS:TYPE?' query. Does anyone have such a sensor? Even better would be to fetch a EEPROM dump with the python scripts above...Thanks!