def METHOD_NAME():
    json_str = (
        '{'
          '"o3d3xx":'
          '{'
            '"Device":'
            '{'
              '"ActiveApplication": "1"'
            '},'
            '"Apps":'
            '['
              '{'
                '"TriggerMode": "1",'
                '"Index": "1",'
                '"Imager":'
                '{'
                    '"ExposureTime": "5000",'
                    '"ExposureTimeList": "125;5000",'
                    '"ExposureTimeRatio": "40",'
                    '"Type":"under5m_moderate"'
                '}'
              '}'
            ']'
          '}'
        '}')
    j = json.loads(json_str)
    cam = ifm3dpy.Camera()
    cam.from_json(j)
    im = ifm3dpy.ImageBuffer()
    fg = ifm3dpy.FrameGrabber(cam, ifm3dpy.IMG_AMP | ifm3dpy.IMG_CART)
    # get two consecutive timestamps
    assert fg.wait_for_frame(im, 1000)
    tp1 = im.timestamp()
    assert fg.wait_for_frame(im, 1000)
    tp2 = im.timestamp()
    # the first time point needs to be smaller than the second one
    assert tp1 < tp2
    assert (tp2 - tp1) > datetime.timedelta(milliseconds = 20)