options: parameters: author: '' category: '[GRC Hier Blocks]' cmake_opt: '' comment: '' copyright: '' description: '' gen_cmake: 'On' gen_linking: dynamic generate_options: qt_gui hier_block_src_path: '.:' id: scope max_nouts: '0' output_language: python placement: (0,0) qt_qss_theme: '' realtime_scheduling: '' run: 'True' run_command: '{python} -u {filename}' run_options: prompt sizing_mode: fixed thread_safe_setters: '' title: Arduino Voltmeter / Oscilloscope window_size: '' states: bus_sink: false bus_source: false bus_structure: null coordinate: [20, 20] rotation: 0 state: enabled blocks: - name: input_voltage_max id: variable parameters: comment: '' value: reference_voltage * resistor_in_ohm / resistor_ground_ohm + reference_voltage states: bus_sink: false bus_source: false bus_structure: null coordinate: [1491, 193] rotation: 0 state: true - name: input_voltage_min id: variable parameters: comment: '' value: -1 * reference_voltage * resistor_in_ohm / resistor_ref_ohm states: bus_sink: false bus_source: false bus_structure: null coordinate: [1494, 94] rotation: 0 state: true - name: reference_voltage id: variable parameters: comment: '' value: '4.11' states: bus_sink: false bus_source: false bus_structure: null coordinate: [457, 222] rotation: 0 state: true - name: resistor_ground_ohm id: variable parameters: comment: '' value: 10e3 states: bus_sink: false bus_source: false bus_structure: null coordinate: [892, 124] rotation: 0 state: true - name: resistor_in_ohm id: variable parameters: comment: '' value: 100e3 states: bus_sink: false bus_source: false bus_structure: null coordinate: [926, 26] rotation: 0 state: true - name: resistor_ref_ohm id: variable parameters: comment: '' value: 10e3 states: bus_sink: false bus_source: false bus_structure: null coordinate: [925, 222] rotation: 0 state: true - name: sample_rate_hz id: variable parameters: comment: '' value: '1044.4' states: bus_sink: false bus_source: false bus_structure: null coordinate: [58, 173] rotation: 0 state: enabled - name: blocks_add_const_vxx_0 id: blocks_add_const_vxx parameters: affinity: '' alias: '' comment: '- V_ref * R_in / R_ref' const: input_voltage_min maxoutbuf: '0' minoutbuf: '0' type: float vlen: '1' states: bus_sink: false bus_source: false bus_structure: null coordinate: [1116, 324] rotation: 0 state: enabled - name: blocks_message_debug_0 id: blocks_message_debug parameters: affinity: '' alias: '' comment: '' states: bus_sink: false bus_source: false bus_structure: null coordinate: [991, 817] rotation: 0 state: true - name: blocks_multiply_const_vxx_0 id: blocks_multiply_const_vxx parameters: affinity: '' alias: '' comment: (1 + R_in / R_gnd + R_in / R_ref) const: '1 + resistor_in_ohm / resistor_ground_ohm + resistor_in_ohm / resistor_ref_ohm ' maxoutbuf: '0' minoutbuf: '0' type: float vlen: '1' states: bus_sink: false bus_source: false bus_structure: null coordinate: [816, 324] rotation: 0 state: enabled - name: blocks_probe_rate_0 id: blocks_probe_rate parameters: affinity: '' alias: '' alpha: '0.15' comment: '' maxoutbuf: '0' minoutbuf: '0' mintime: '10000.0' type: short vlen: '1' states: bus_sink: false bus_source: false bus_structure: null coordinate: [391, 781] rotation: 0 state: true - name: blocks_short_to_float_0 id: blocks_short_to_float parameters: affinity: '' alias: '' comment: '' maxoutbuf: '0' minoutbuf: '0' scale: 1024 / reference_voltage vlen: '1' states: bus_sink: false bus_source: false bus_structure: null coordinate: [483, 324] rotation: 0 state: true - name: qtgui_freq_sink_x_0 id: qtgui_freq_sink_x parameters: affinity: '' alias: '' alpha1: '1.0' alpha10: '1.0' alpha2: '1.0' alpha3: '1.0' alpha4: '1.0' alpha5: '1.0' alpha6: '1.0' alpha7: '1.0' alpha8: '1.0' alpha9: '1.0' autoscale: 'False' average: '1.0' axislabels: 'True' bw: sample_rate_hz color1: '"blue"' color10: '"dark blue"' color2: '"red"' color3: '"green"' color4: '"black"' color5: '"cyan"' color6: '"magenta"' color7: '"yellow"' color8: '"dark red"' color9: '"dark green"' comment: '' ctrlpanel: 'False' fc: '0' fftsize: '1024' freqhalf: 'False' grid: 'False' gui_hint: '' label: Relative Gain label1: '' label10: '''''' label2: '''''' label3: '''''' label4: '''''' label5: '''''' label6: '''''' label7: '''''' label8: '''''' label9: '''''' legend: 'False' maxoutbuf: '0' minoutbuf: '0' name: '""' nconnections: '1' showports: 'False' tr_chan: '0' tr_level: '0.0' tr_mode: qtgui.TRIG_MODE_FREE tr_tag: '""' type: float units: dB update_time: '0.10' width1: '2' width10: '1' width2: '1' width3: '1' width4: '1' width5: '1' width6: '1' width7: '1' width8: '1' width9: '1' wintype: firdes.WIN_BLACKMAN_hARRIS ymax: '0' ymin: '-100' states: bus_sink: false bus_source: false bus_structure: null coordinate: [897, 459] rotation: 0 state: enabled - name: qtgui_number_sink_0 id: qtgui_number_sink parameters: affinity: '' alias: '' autoscale: 'False' avg: '0' color1: ("black", "black") color10: ("black", "black") color2: ("black", "black") color3: ("black", "black") color4: ("black", "black") color5: ("black", "black") color6: ("black", "black") color7: ("black", "black") color8: ("black", "black") color9: ("black", "black") comment: '' factor1: '1' factor10: '1' factor2: '1' factor3: '1' factor4: '1' factor5: '1' factor6: '1' factor7: '1' factor8: '1' factor9: '1' graph_type: qtgui.NUM_GRAPH_HORIZ gui_hint: '' label1: Voltage label10: '' label2: '' label3: '' label4: '' label5: '' label6: '' label7: '' label8: '' label9: '' max: input_voltage_max min: input_voltage_min name: '""' nconnections: '1' type: float unit1: V unit10: '' unit2: '' unit3: '' unit4: '' unit5: '' unit6: '' unit7: '' unit8: '' unit9: '' update_time: '0.10' states: bus_sink: false bus_source: false bus_structure: null coordinate: [1490, 428] rotation: 0 state: enabled - name: qtgui_number_sink_0_0 id: qtgui_number_sink parameters: affinity: '' alias: '' autoscale: 'False' avg: '0' color1: ("black", "black") color10: ("black", "black") color2: ("black", "black") color3: ("black", "black") color4: ("black", "black") color5: ("black", "black") color6: ("black", "black") color7: ("black", "black") color8: ("black", "black") color9: ("black", "black") comment: '' factor1: '1' factor10: '1' factor2: '1' factor3: '1' factor4: '1' factor5: '1' factor6: '1' factor7: '1' factor8: '1' factor9: '1' graph_type: qtgui.NUM_GRAPH_HORIZ gui_hint: '' label1: '' label10: '' label2: '' label3: '' label4: '' label5: '' label6: '' label7: '' label8: '' label9: '' max: '1024' min: '0' name: '"Arduino Reading"' nconnections: '1' type: short unit1: '' unit10: '' unit2: '' unit3: '' unit4: '' unit5: '' unit6: '' unit7: '' unit8: '' unit9: '' update_time: '0.10' states: bus_sink: false bus_source: false bus_structure: null coordinate: [452, 499] rotation: 0 state: disabled - name: qtgui_time_sink_x_0 id: qtgui_time_sink_x parameters: affinity: '' alias: '' alpha1: '1.0' alpha10: '1.0' alpha2: '1.0' alpha3: '1.0' alpha4: '1.0' alpha5: '1.0' alpha6: '1.0' alpha7: '1.0' alpha8: '1.0' alpha9: '1.0' autoscale: 'False' axislabels: 'True' color1: blue color10: dark blue color2: red color3: green color4: black color5: cyan color6: magenta color7: yellow color8: dark red color9: dark green comment: '' ctrlpanel: 'False' entags: 'True' grid: 'False' gui_hint: '' label1: Signal 1 label10: Signal 10 label2: Signal 2 label3: Signal 3 label4: Signal 4 label5: Signal 5 label6: Signal 6 label7: Signal 7 label8: Signal 8 label9: Signal 9 legend: 'False' marker1: '-1' marker10: '-1' marker2: '-1' marker3: '-1' marker4: '-1' marker5: '-1' marker6: '-1' marker7: '-1' marker8: '-1' marker9: '-1' name: '""' nconnections: '1' size: int(sample_rate_hz*2) srate: sample_rate_hz stemplot: 'False' style1: '1' style10: '1' style2: '1' style3: '1' style4: '1' style5: '1' style6: '1' style7: '1' style8: '1' style9: '1' tr_chan: '0' tr_delay: '0' tr_level: '0.0' tr_mode: qtgui.TRIG_MODE_FREE tr_slope: qtgui.TRIG_SLOPE_POS tr_tag: '""' type: float update_time: '0.10' width1: '2' width10: '1' width2: '1' width3: '1' width4: '1' width5: '1' width6: '1' width7: '1' width8: '1' width9: '1' ylabel: Voltage ymax: input_voltage_max ymin: input_voltage_min yunit: '"V"' states: bus_sink: false bus_source: false bus_structure: null coordinate: [1462, 292] rotation: 0 state: enabled - name: qtgui_time_sink_x_0_0 id: qtgui_time_sink_x parameters: affinity: '' alias: '' alpha1: '1.0' alpha10: '1.0' alpha2: '1.0' alpha3: '1.0' alpha4: '1.0' alpha5: '1.0' alpha6: '1.0' alpha7: '1.0' alpha8: '1.0' alpha9: '1.0' autoscale: 'False' axislabels: 'True' color1: blue color10: dark blue color2: red color3: green color4: black color5: cyan color6: magenta color7: yellow color8: dark red color9: dark green comment: '' ctrlpanel: 'False' entags: 'True' grid: 'False' gui_hint: '' label1: Signal 1 label10: Signal 10 label2: Signal 2 label3: Signal 3 label4: Signal 4 label5: Signal 5 label6: Signal 6 label7: Signal 7 label8: Signal 8 label9: Signal 9 legend: 'False' marker1: '-1' marker10: '-1' marker2: '-1' marker3: '-1' marker4: '-1' marker5: '-1' marker6: '-1' marker7: '-1' marker8: '-1' marker9: '-1' name: '""' nconnections: '1' size: int(sample_rate_hz*2) srate: sample_rate_hz stemplot: 'False' style1: '1' style10: '1' style2: '1' style3: '1' style4: '1' style5: '1' style6: '1' style7: '1' style8: '1' style9: '1' tr_chan: '0' tr_delay: '0' tr_level: '0.0' tr_mode: qtgui.TRIG_MODE_FREE tr_slope: qtgui.TRIG_SLOPE_POS tr_tag: '""' type: float update_time: '0.10' width1: '2' width10: '1' width2: '1' width3: '1' width4: '1' width5: '1' width6: '1' width7: '1' width8: '1' width9: '1' ylabel: Arduino Input Voltage ymax: reference_voltage ymin: '0' yunit: '"V"' states: bus_sink: false bus_source: false bus_structure: null coordinate: [881, 627] rotation: 0 state: disabled - name: serial_source_block id: epy_block parameters: _source_code: "import gnuradio\nimport numpy\nimport serial\n\n\nclass SerialSourceBlock(gnuradio.gr.sync_block):\n\ \ def __init__(\n self, port=\"/dev/ttyUSB0\", baud_rate=115200, buffer_max_length=10,\ \ timeout=2\n ):\n gnuradio.gr.sync_block.__init__(\n self,\ \ name=\"Serial Source Block\", in_sig=None, out_sig=[numpy.int16]\n \ \ )\n self._serial_port = serial.Serial(\n port=port,\ \ baudrate=baud_rate, bytesize=serial.EIGHTBITS, timeout=timeout\n )\n\ \ self._buffer_max_length = buffer_max_length\n\n def work(self, input_items,\ \ output_items):\n # pylint: disable=unused-argument\n buffer\ \ = self._serial_port.read(\n 2 * min(len(output_items[0]), self._buffer_max_length)\n\ \ )\n assert len(buffer) % 2 == 0\n buffer_samples_count\ \ = len(buffer) // 2\n output_items[0][:buffer_samples_count] = numpy.frombuffer(buffer,\ \ dtype=\">u2\")\n assert output_items[0][:buffer_samples_count].max()\ \ < 1024, \"lost sync?\"\n return buffer_samples_count\n" affinity: '' alias: '' baud_rate: '115200' buffer_max_length: int(sample_rate_hz/4) comment: '' maxoutbuf: '0' minoutbuf: '0' port: '''/dev/ttyUSB0''' timeout: '2' states: _io_cache: ('Serial Source Block', 'SerialSourceBlock', [('port', "'/dev/ttyUSB0'"), ('baud_rate', '115200'), ('buffer_max_length', '10'), ('timeout', '2')], [], [('0', 'short', 1)], '', []) bus_sink: false bus_source: false bus_structure: null coordinate: [15, 276] rotation: 0 state: true connections: - [blocks_add_const_vxx_0, '0', qtgui_number_sink_0, '0'] - [blocks_add_const_vxx_0, '0', qtgui_time_sink_x_0, '0'] - [blocks_multiply_const_vxx_0, '0', blocks_add_const_vxx_0, '0'] - [blocks_probe_rate_0, rate, blocks_message_debug_0, print] - [blocks_short_to_float_0, '0', blocks_multiply_const_vxx_0, '0'] - [blocks_short_to_float_0, '0', qtgui_freq_sink_x_0, '0'] - [blocks_short_to_float_0, '0', qtgui_time_sink_x_0_0, '0'] - [serial_source_block, '0', blocks_probe_rate_0, '0'] - [serial_source_block, '0', blocks_short_to_float_0, '0'] - [serial_source_block, '0', qtgui_number_sink_0_0, '0'] metadata: file_format: 1