Error Sending/Receiving HART commands (SFB52/53): "Faulty, Without Data"


Thread Starter


Hi there,

I'm trying to send a HART command to a measurement device (Endress+Hauser Micropilot FMR50). This device is connected via 2DMU to a AI 8x0/4...20mA HART (331-7tf01-0ab0), which is linked with a ET200M (153-2ba10-0xb0) to transmit the information via PROFIBUS DP to the CPU (317-2ek14-0ab0). I'm using SIMATIC Manager (STEP 7) to do this.

I can receive the analog value fine and also the additional HART variables (set via HW Config) are displayed properly (via addresses 272/277/282/287).

In order for me to be able to get diagnostic information or more variables from multiple devices, I need to send commands to the device - like this one for command 0: . I'm trying to do this with the WRREC/RDREC (SFB53/52) blocks, like this: - this function is called from OB32, which calls it every second - this to make sure the blocks get the time to do their thing.

Both the WRREC and RDREC blocks indicate they were executed succesfully (WRREC, DONE = 1 - RDREC, VALID = 1). However when examining the response in DB20, it only displays "07 60" - which according to the ET200M HART Analog Modules manual (p. 82-84) indicates "faulty, without data" (07) and that there is a HART communication error and check HMD parameters (60):

I've taken the following steps to try and solve this:

- Change measurement device

- Change software to take a extra cycle before reading (to give device time to interpret the command)

- Change the command message (RECORD in WRREC)

- Try several addresses (ID in WRREC/RDREC)

I'm considering the following scenarios:
- The address (DW#16#102) I'm sending to is not correct - but what else could it be?

- I read online that there should be a resistor (at least 250 ohm) in the loop, but I'm getting these other variables?

- The message I'm sending is not correct, but no change to it changed the response.

I'm really hoping someone around here can help me out. I've been looking through Siemens manuals, device manuals and websites for a few weeks, with no result.

Thanks a lot in advance!
Unfortunately I can only comment on the "250 ohm series resistor in the loop" issue.

Your statement, 'but I'm getting these other variables' is on target - that fact that you can read variables says that there is sufficient loop resistance for the HART signal to develop.

The input wiring diagrams on pages 16, 17, and 18 in the Siemens manual (your link) shows a rectangle with two arrows on either side bracketing the word HART. The rectangle is a series resistor in the loop and it's there to develop the HART signal, as one would expect with a HART enabled analog input card.

So, insufficient loop resistance is not preventing the HART command from working.
I'm coming from an ICT background, so I hadn't noticed this symbol directly. It was an unlikely scenario, but thanks for debunking it.

Sadly it doesn't bring me much closer to a solution. Let's hope someone else around here has some knowledge about it.