The Museum of HP Calculators

HP Forum Archive 21

[ Return to Index | Top of Index ]

hp clock does not talk to hp 71
Message #1 Posted by Hans Holzach on 27 July 2012, 5:20 p.m.

hi all,

i am a bit desperate. i have an hp 71b connected via HP-IL to an hp 82169C HP-IL/HP-IB interface (DEVID$ is HP82169A, though). an HP digital clock HP59309A is connected to the HP-IB interface.

the IL/IB interface is in translator mode, hp-il address 3. the clock is addressable, address is 12.

i can control the clock (set time, stop etc.) without problem (e.g. OUTPUT 12;"R" resets the clock). but i am not able to read from the clock. i tried ENTER 12;A$ (and a lot more) and then the system freezes. same with SPOLL(12).

any help to solve this problem would be much appreciated!

thanks, hans

      
Re: hp clock does not talk to hp 71
Message #2 Posted by Craig Ruff on 27 July 2012, 6:38 p.m.,
in response to message #1 by Hans Holzach

Does the clock need to be told to return the time with a command you send before attempting the read?

            
Re: hp clock does not talk to hp 71
Message #3 Posted by Hans Holzach on 28 July 2012, 8:05 a.m.,
in response to message #2 by Craig Ruff

i am not sure if i understand your question correctly, but i think the answer is NO. i think that ENTER should include all necessary instructions to fetch data from the clock. well, at least this is how i fetch data from the multimeter...

                  
Re: hp clock does not talk to hp 71
Message #4 Posted by Craig Ruff on 28 July 2012, 8:12 a.m.,
in response to message #3 by Hans Holzach

Its been a long time since I collected data from an HP instrument over HP-IB, but I seem to recall that the volt meter I would use to collect data from various lab instrument outputs needed to be told to put itself into "free running" mode so that when you read from the meter it would take a reading and return it.

I ran a quick test with my 3468A over HP-IL. There are two settings, T2 is the single trigger mode and T1 is the internally generated trigger mode. If the meter is single trigger mode, and I do not send the TRIGGER command before the ENTER, the 71 hangs until I abort the command.

RESTORE IO
D = DEVADDR("HP3468A")
REMOTE D
OUTPUT D;"T2"
ENTER D;A$     <-- hangs here
<ATTN>
RESTORE IO     <-- recover loop after hang
REMOTE D
OUTPUT D;"T2"
TRIGGER D
ENTER D;A$     <-- read completes

Edited: 28 July 2012, 9:24 a.m.

                        
Re: hp clock does not talk to hp 71
Message #5 Posted by Sylvain Cote on 28 July 2012, 5:46 p.m.,
in response to message #4 by Craig Ruff

Test done with HP75C + I/O-ROM + HP3468B

! Device is now accepting commands from it's HP-IL/IB interface
REMOTE ':E1'
! Setup device as listener
! Send reading configuration (DC Volt [F1] + Autorange [RA])
! Trigger the reading [T2] and save it in the read buffer
SENDIO ':E1','LAD#', 'F1RAT2' 
! Setup device as talker
! Send data from read buffer
E$ = ENTIO$(':E1','TAD#,SDA')
! Display data after removing the CR & LF
DISP USING '"DC Volt = ",K'; LEFT$(E$,LEN(E$)-2)
! Device is now accepting commands from it's front panel interface
LOCAL ':E1'

Doing the above always return read data at [T2] time.

Sylvain

Edited: 28 July 2012, 6:46 p.m.

                              
Re: hp clock does not talk to hp 71
Message #6 Posted by Hans Holzach on 29 July 2012, 7:06 a.m.,
in response to message #5 by Sylvain Cote

please see my reply to craig. i am quite new to this kind of devices and find it rather difficult to translate the commands written for a specific hp calculator/interface to commands for a different configuration. however, thanks for you help!

hans

                        
Re: hp clock does not talk to hp 71
Message #7 Posted by Hans Holzach on 29 July 2012, 6:47 a.m.,
in response to message #4 by Craig Ruff

i have a 3468 multimeter, too, and have never had problems fetching data from it. the multimeter is usually set to internal trigger, so i don't use a TRIGGER command, but get the data directly with ENTER.

when starting to play with the hp-ib clock i thought i may use it the same way i use the multimeter, but, alas...

anyway, thank you!

            
Re: hp clock does not talk to hp 71
Message #8 Posted by Eric Smith on 28 July 2012, 6:54 p.m.,
in response to message #2 by Craig Ruff

The 59309A manual section 3-26 says:

Quote:
When the 59309A is addressed to talk, the ADDRESSED indicator illuminates and the time value is output on the bus in the format shown below.

It seems pretty clear from this that (unlike some multimeters) you don't need to send it a command before reading from it. However, if you're previously addressed it to listen or talk, you'd best send it an UNL or UNT first (as appropriate, or just send both), then try to read from it.

When you attempt to read from it, does the ADDRESSED indicator illuminate?

                  
Re: hp clock does not talk to hp 71
Message #9 Posted by Hans Holzach on 29 July 2012, 7:32 a.m.,
in response to message #8 by Eric Smith

yes, i can address the clock (address is 11) to talk (SEND TALK 11 or SEND CMD 75 or SEND CMD "K"). then the addressed-indicator is permanently on until i send UNT or change to a different talker.

what i do not understand is how to read from the clock. i only know ENTER, but ENTER :11;A$ freezes the loop (like SPOLL(11)). i also tried the IL message "send data": SEND CMD 96. the addressed-indicator blinked and nothing froze, but where is the data sent, and how can i get it on the display of the hp71 or into a variable?

i also connected an hp41 to the IL/IB interface. INA or IND resulted in a TRANSMIT error.

heck, this is really challenging! at least i was able to write a short program to set the clock with the hp 71. oh well...

thank you, hans

                        
Re: hp clock does not talk to hp 71
Message #10 Posted by Craig Ruff on 29 July 2012, 8:42 a.m.,
in response to message #9 by Hans Holzach

Do you have the LF->EOT option of the IL-IB interface enabled?

                              
Re: hp clock does not talk to hp 71
Message #11 Posted by Hans Holzach on 29 July 2012, 9:04 a.m.,
in response to message #10 by Craig Ruff

no, it was disabled. so i tried OUTPUT :3;"E1" but did not notice a difference (address of IL/IB interface is 3).

                        
Re: hp clock does not talk to hp 71
Message #12 Posted by Sylvain Cote on 29 July 2012, 9:35 a.m.,
in response to message #9 by Hans Holzach

I just went through the manual and I now understand the behaviour of the device.

If I understood correctly the device will send it clock continuously on the loop when it becomes the talker (TAD) and stop when he received an untalk (UNT)

So the sequence should be ...
- configure device
- send untalk
- make device the talker
- read from the loop
- send untalk
- parse, extract and format data
- show/use the formatted data

Have you tried reading from the loop but with a limit on the number of bytes ?

In packed format the unit should send 9 bytes repeatedly. Since we do not known when the snapshot will happen, we need to dimention the input buffer 2 times the size of the data and then find the start record in the buffer.

Using the above procedure, at the "read from the loop" line the following should do the trick

ENTER LOOP USING "18A";D$

Sylvain

PS: To have a better understanding of what happen on the loop I suggest that you buy the PIL-Box from JF Garnier and use the Virtual HP-IL softwares from Christoph Gießelink. Those will allow you to have a sniffer on the loop and then see what is happening on it.

Edited: 29 July 2012, 9:48 a.m.

                              
Re: hp clock does not talk to hp 71
Message #13 Posted by Hans Holzach on 29 July 2012, 12:10 p.m.,
in response to message #12 by Sylvain Cote

thank you very much for your help! unfortunately the system is not working (yet), but a few things became clearer.

the loop still freezes, although i used your ENTER line. i took a look at a program sequence for a 9830 in the clock manual and there the number 13 appears in the ENTER line. i did not understand why, but with your help it became quite obvious, that it is a limitation of the number of bytes: if you want to read date and time, you need 13 bytes, or 9 bytes if you only read the time.

however, neither USING "18A" nor "9A" worked, same for "26A" and "13A". but i will investigate a bit further in this direction, maybe i am lucky.

hans

                                    
Re: hp clock does not talk to hp 71
Message #14 Posted by J-F Garnier on 29 July 2012, 2:54 p.m.,
in response to message #13 by Hans Holzach

Try

ENTER 12 USING "#,9A";D$

to avoid waiting for EOL.

                              
Re: hp clock does not talk to hp 71
Message #15 Posted by Eric Smith on 29 July 2012, 2:36 p.m.,
in response to message #12 by Sylvain Cote

No, unless the clock is set to "continuous talk" mode, which shouldn't be used with any controller in the look, it will only send the time ONCE each time it is addressed to talk.

      
Re: hp clock does not talk to hp 71
Message #16 Posted by Hans Holzach on 29 July 2012, 4:13 p.m.,
in response to message #1 by Hans Holzach

gentlemen, you are so kind and helpful, but i am afraid that i am just wasting your time. despite all your help i am not able to fetch time and date from the clock.

however, just in case someone would like to give another hint, here a brief summary of my latest attempt to make this work:

address IL/IB-interface: 3
address clock: 11
enable status bytes: 0

what i did:

RESET HPIL
RESTORE IO
SEND TALK11 (ADDRESSED light is now permanently on)
ENTER :11 USING "#,9A";D$ (i also tried 10A, 11A etc.)
--> loop freezes, hp71 does not respond to pressed keys, T/R light and ADDRESSED light are permanently on.

and just to make this clear: i do all this just for fun. my idea was simply to use an external clock instead of the internal one of the hp71 to control data acquisition from the multimeter. i lose nothing if i can't make this work (well, a few hours of sleep), so please do not waste your time with my "problems". but thanks a lot to those who do!

best regards, hans


[ Return to Index | Top of Index ]

Go back to the main exhibit hall