tinkerforge 2.1.22 → 2.1.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/lib/tinkerforge/brick_dc.rb +157 -76
- data/lib/tinkerforge/brick_hat.rb +115 -32
- data/lib/tinkerforge/brick_hat_zero.rb +119 -21
- data/lib/tinkerforge/brick_imu.rb +192 -87
- data/lib/tinkerforge/brick_imu_v2.rb +220 -119
- data/lib/tinkerforge/brick_master.rb +498 -198
- data/lib/tinkerforge/brick_red.rb +197 -74
- data/lib/tinkerforge/brick_servo.rb +187 -103
- data/lib/tinkerforge/brick_silent_stepper.rb +249 -169
- data/lib/tinkerforge/brick_stepper.rb +214 -102
- data/lib/tinkerforge/bricklet_accelerometer.rb +61 -36
- data/lib/tinkerforge/bricklet_accelerometer_v2.rb +167 -48
- data/lib/tinkerforge/bricklet_air_quality.rb +123 -76
- data/lib/tinkerforge/bricklet_ambient_light.rb +62 -46
- data/lib/tinkerforge/bricklet_ambient_light_v2.rb +41 -28
- data/lib/tinkerforge/bricklet_ambient_light_v3.rb +61 -28
- data/lib/tinkerforge/bricklet_analog_in.rb +66 -45
- data/lib/tinkerforge/bricklet_analog_in_v2.rb +60 -43
- data/lib/tinkerforge/bricklet_analog_in_v3.rb +68 -32
- data/lib/tinkerforge/bricklet_analog_out.rb +25 -16
- data/lib/tinkerforge/bricklet_analog_out_v2.rb +21 -10
- data/lib/tinkerforge/bricklet_analog_out_v3.rb +55 -22
- data/lib/tinkerforge/bricklet_barometer.rb +108 -58
- data/lib/tinkerforge/bricklet_barometer_v2.rb +109 -67
- data/lib/tinkerforge/bricklet_can.rb +84 -24
- data/lib/tinkerforge/bricklet_can_v2.rb +173 -72
- data/lib/tinkerforge/bricklet_co2.rb +36 -25
- data/lib/tinkerforge/bricklet_co2_v2.rb +119 -60
- data/lib/tinkerforge/bricklet_color.rb +77 -49
- data/lib/tinkerforge/bricklet_color_v2.rb +493 -0
- data/lib/tinkerforge/bricklet_compass.rb +397 -0
- data/lib/tinkerforge/bricklet_current12.rb +61 -40
- data/lib/tinkerforge/bricklet_current25.rb +61 -40
- data/lib/tinkerforge/bricklet_distance_ir.rb +60 -38
- data/lib/tinkerforge/bricklet_distance_ir_v2.rb +85 -45
- data/lib/tinkerforge/bricklet_distance_us.rb +43 -30
- data/lib/tinkerforge/bricklet_distance_us_v2.rb +335 -0
- data/lib/tinkerforge/bricklet_dmx.rb +92 -48
- data/lib/tinkerforge/bricklet_dual_button.rb +23 -12
- data/lib/tinkerforge/bricklet_dual_button_v2.rb +64 -29
- data/lib/tinkerforge/bricklet_dual_relay.rb +27 -14
- data/lib/tinkerforge/bricklet_dust_detector.rb +43 -30
- data/lib/tinkerforge/bricklet_e_paper_296x128.rb +115 -63
- data/lib/tinkerforge/bricklet_energy_monitor.rb +416 -0
- data/lib/tinkerforge/bricklet_gps.rb +72 -48
- data/lib/tinkerforge/bricklet_gps_v2.rb +124 -73
- data/lib/tinkerforge/bricklet_hall_effect.rb +43 -28
- data/lib/tinkerforge/bricklet_hall_effect_v2.rb +76 -44
- data/lib/tinkerforge/bricklet_humidity.rb +54 -38
- data/lib/tinkerforge/bricklet_humidity_v2.rb +86 -49
- data/lib/tinkerforge/bricklet_imu_v3.rb +784 -0
- data/lib/tinkerforge/bricklet_industrial_analog_out.rb +41 -18
- data/lib/tinkerforge/bricklet_industrial_analog_out_v2.rb +84 -40
- data/lib/tinkerforge/bricklet_industrial_counter.rb +102 -59
- data/lib/tinkerforge/bricklet_industrial_digital_in_4.rb +51 -24
- data/lib/tinkerforge/bricklet_industrial_digital_in_4_v2.rb +79 -40
- data/lib/tinkerforge/bricklet_industrial_digital_out_4.rb +36 -15
- data/lib/tinkerforge/bricklet_industrial_digital_out_4_v2.rb +75 -33
- data/lib/tinkerforge/bricklet_industrial_dual_0_20ma.rb +43 -29
- data/lib/tinkerforge/bricklet_industrial_dual_0_20ma_v2.rb +81 -44
- data/lib/tinkerforge/bricklet_industrial_dual_ac_relay.rb +325 -0
- data/lib/tinkerforge/bricklet_industrial_dual_analog_in.rb +51 -30
- data/lib/tinkerforge/bricklet_industrial_dual_analog_in_v2.rb +139 -40
- data/lib/tinkerforge/bricklet_industrial_dual_relay.rb +63 -28
- data/lib/tinkerforge/bricklet_industrial_quad_relay.rb +36 -15
- data/lib/tinkerforge/bricklet_industrial_quad_relay_v2.rb +67 -28
- data/lib/tinkerforge/bricklet_io16.rb +57 -32
- data/lib/tinkerforge/bricklet_io16_v2.rb +93 -48
- data/lib/tinkerforge/bricklet_io4.rb +56 -31
- data/lib/tinkerforge/bricklet_io4_v2.rb +109 -57
- data/lib/tinkerforge/bricklet_isolator.rb +111 -35
- data/lib/tinkerforge/bricklet_joystick.rb +63 -42
- data/lib/tinkerforge/bricklet_joystick_v2.rb +71 -35
- data/lib/tinkerforge/bricklet_laser_range_finder.rb +87 -59
- data/lib/tinkerforge/bricklet_laser_range_finder_v2.rb +101 -53
- data/lib/tinkerforge/bricklet_lcd_128x64.rb +241 -131
- data/lib/tinkerforge/bricklet_lcd_16x2.rb +49 -25
- data/lib/tinkerforge/bricklet_lcd_20x4.rb +59 -29
- data/lib/tinkerforge/bricklet_led_strip.rb +69 -47
- data/lib/tinkerforge/bricklet_led_strip_v2.rb +105 -48
- data/lib/tinkerforge/bricklet_line.rb +35 -22
- data/lib/tinkerforge/bricklet_linear_poti.rb +53 -35
- data/lib/tinkerforge/bricklet_linear_poti_v2.rb +55 -24
- data/lib/tinkerforge/bricklet_load_cell.rb +64 -40
- data/lib/tinkerforge/bricklet_load_cell_v2.rb +81 -41
- data/lib/tinkerforge/bricklet_moisture.rb +43 -30
- data/lib/tinkerforge/bricklet_motion_detector.rb +21 -10
- data/lib/tinkerforge/bricklet_motion_detector_v2.rb +62 -29
- data/lib/tinkerforge/bricklet_motorized_linear_poti.rb +71 -32
- data/lib/tinkerforge/bricklet_multi_touch.rb +30 -17
- data/lib/tinkerforge/bricklet_multi_touch_v2.rb +371 -0
- data/lib/tinkerforge/bricklet_nfc.rb +130 -80
- data/lib/tinkerforge/bricklet_nfc_rfid.rb +32 -13
- data/lib/tinkerforge/bricklet_oled_128x64.rb +30 -17
- data/lib/tinkerforge/bricklet_oled_128x64_v2.rb +97 -40
- data/lib/tinkerforge/bricklet_oled_64x48.rb +30 -17
- data/lib/tinkerforge/bricklet_one_wire.rb +65 -24
- data/lib/tinkerforge/bricklet_outdoor_weather.rb +84 -41
- data/lib/tinkerforge/bricklet_particulate_matter.rb +85 -37
- data/lib/tinkerforge/bricklet_piezo_buzzer.rb +19 -13
- data/lib/tinkerforge/bricklet_piezo_speaker.rb +22 -19
- data/lib/tinkerforge/bricklet_piezo_speaker_v2.rb +84 -57
- data/lib/tinkerforge/bricklet_ptc.rb +76 -51
- data/lib/tinkerforge/bricklet_ptc_v2.rb +96 -54
- data/lib/tinkerforge/bricklet_real_time_clock.rb +45 -36
- data/lib/tinkerforge/bricklet_real_time_clock_v2.rb +78 -47
- data/lib/tinkerforge/bricklet_remote_switch.rb +38 -29
- data/lib/tinkerforge/bricklet_remote_switch_v2.rb +86 -49
- data/lib/tinkerforge/bricklet_rgb_led.rb +17 -8
- data/lib/tinkerforge/bricklet_rgb_led_button.rb +61 -30
- data/lib/tinkerforge/bricklet_rgb_led_matrix.rb +78 -33
- data/lib/tinkerforge/bricklet_rgb_led_v2.rb +51 -20
- data/lib/tinkerforge/bricklet_rotary_encoder.rb +40 -25
- data/lib/tinkerforge/bricklet_rotary_encoder_v2.rb +60 -27
- data/lib/tinkerforge/bricklet_rotary_poti.rb +55 -37
- data/lib/tinkerforge/bricklet_rotary_poti_v2.rb +290 -0
- data/lib/tinkerforge/bricklet_rs232.rb +89 -28
- data/lib/tinkerforge/bricklet_rs232_v2.rb +121 -47
- data/lib/tinkerforge/bricklet_rs485.rb +303 -207
- data/lib/tinkerforge/bricklet_segment_display_4x7.rb +24 -14
- data/lib/tinkerforge/bricklet_segment_display_4x7_v2.rb +75 -36
- data/lib/tinkerforge/bricklet_solid_state_relay.rb +24 -13
- data/lib/tinkerforge/bricklet_solid_state_relay_v2.rb +58 -25
- data/lib/tinkerforge/bricklet_sound_intensity.rb +36 -24
- data/lib/tinkerforge/bricklet_sound_pressure_level.rb +77 -41
- data/lib/tinkerforge/bricklet_temperature.rb +43 -28
- data/lib/tinkerforge/bricklet_temperature_ir.rb +63 -47
- data/lib/tinkerforge/bricklet_temperature_ir_v2.rb +75 -53
- data/lib/tinkerforge/bricklet_temperature_v2.rb +62 -31
- data/lib/tinkerforge/bricklet_thermal_imaging.rb +118 -68
- data/lib/tinkerforge/bricklet_thermocouple.rb +46 -30
- data/lib/tinkerforge/bricklet_thermocouple_v2.rb +65 -30
- data/lib/tinkerforge/bricklet_tilt.rb +23 -10
- data/lib/tinkerforge/bricklet_uv_light.rb +37 -24
- data/lib/tinkerforge/bricklet_uv_light_v2.rb +87 -46
- data/lib/tinkerforge/bricklet_voltage.rb +54 -37
- data/lib/tinkerforge/bricklet_voltage_current.rb +94 -85
- data/lib/tinkerforge/bricklet_voltage_current_v2.rb +103 -77
- data/lib/tinkerforge/bricklet_xmc1400_breakout.rb +410 -0
- data/lib/tinkerforge/device_display_names.rb +165 -0
- data/lib/tinkerforge/ip_connection.rb +155 -33
- data/lib/tinkerforge/version.rb +1 -1
- metadata +14 -4
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
# -*- ruby encoding: utf-8 -*-
|
|
2
2
|
#############################################################
|
|
3
|
-
# This file was automatically generated on
|
|
3
|
+
# This file was automatically generated on 2020-11-02. #
|
|
4
4
|
# #
|
|
5
|
-
# Ruby Bindings Version 2.1.
|
|
5
|
+
# Ruby Bindings Version 2.1.27 #
|
|
6
6
|
# #
|
|
7
7
|
# If you have a bugfix for this file and want to commit it, #
|
|
8
8
|
# please fix the bug in the generator. You can find a link #
|
|
9
9
|
# to the generators git repository on tinkerforge.com #
|
|
10
10
|
#############################################################
|
|
11
11
|
|
|
12
|
+
require_relative './ip_connection'
|
|
13
|
+
|
|
12
14
|
module Tinkerforge
|
|
13
15
|
# Creates beep and alarm with configurable volume and frequency
|
|
14
16
|
class BrickletPiezoSpeakerV2 < Device
|
|
@@ -63,7 +65,7 @@ module Tinkerforge
|
|
|
63
65
|
# Creates an object with the unique device ID <tt>uid</tt> and adds it to
|
|
64
66
|
# the IP Connection <tt>ipcon</tt>.
|
|
65
67
|
def initialize(uid, ipcon)
|
|
66
|
-
super uid, ipcon
|
|
68
|
+
super uid, ipcon, DEVICE_IDENTIFIER, DEVICE_DISPLAY_NAME
|
|
67
69
|
|
|
68
70
|
@api_version = [2, 0, 0]
|
|
69
71
|
|
|
@@ -86,47 +88,42 @@ module Tinkerforge
|
|
|
86
88
|
@response_expected[FUNCTION_READ_UID] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
|
87
89
|
@response_expected[FUNCTION_GET_IDENTITY] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
|
88
90
|
|
|
89
|
-
@callback_formats[CALLBACK_BEEP_FINISHED] = ''
|
|
90
|
-
@callback_formats[CALLBACK_ALARM_FINISHED] = ''
|
|
91
|
+
@callback_formats[CALLBACK_BEEP_FINISHED] = [8, '']
|
|
92
|
+
@callback_formats[CALLBACK_ALARM_FINISHED] = [8, '']
|
|
91
93
|
|
|
94
|
+
@ipcon.add_device self
|
|
92
95
|
end
|
|
93
96
|
|
|
94
|
-
# Beeps with the given frequency and volume for the duration
|
|
95
|
-
#
|
|
96
|
-
# For example: If you set a duration of 1000, with a volume of 10 and a frequency
|
|
97
|
-
# value of 2000 the piezo buzzer will beep with maximum loudness for one
|
|
98
|
-
# second with a frequency of 2 kHz.
|
|
97
|
+
# Beeps with the given frequency and volume for the duration.
|
|
99
98
|
#
|
|
100
99
|
# A duration of 0 stops the current beep if any is ongoing.
|
|
101
100
|
# A duration of 4294967295 results in an infinite beep.
|
|
102
|
-
#
|
|
103
|
-
# The ranges are:
|
|
104
|
-
#
|
|
105
|
-
# * Frequency: 50Hz - 15000Hz
|
|
106
|
-
# * Volume: 0 - 10
|
|
107
|
-
# * Duration: 0ms - 4294967295ms
|
|
108
101
|
def set_beep(frequency, volume, duration)
|
|
109
|
-
|
|
102
|
+
check_validity
|
|
103
|
+
|
|
104
|
+
send_request FUNCTION_SET_BEEP, [frequency, volume, duration], 'S C L', 8, ''
|
|
110
105
|
end
|
|
111
106
|
|
|
112
|
-
# Returns the last beep settings as set by BrickletPiezoSpeakerV2#set_beep. If a beep is currently
|
|
113
|
-
# running it also returns the remaining duration of the beep
|
|
107
|
+
# Returns the last beep settings as set by BrickletPiezoSpeakerV2#set_beep. If a beep is currently
|
|
108
|
+
# running it also returns the remaining duration of the beep.
|
|
114
109
|
#
|
|
115
|
-
# If the frequency or volume is updated during a beep (with BrickletPiezoSpeakerV2#update_frequency
|
|
110
|
+
# If the frequency or volume is updated during a beep (with BrickletPiezoSpeakerV2#update_frequency
|
|
116
111
|
# or BrickletPiezoSpeakerV2#update_volume) this function returns the updated value.
|
|
117
112
|
def get_beep
|
|
118
|
-
|
|
113
|
+
check_validity
|
|
114
|
+
|
|
115
|
+
send_request FUNCTION_GET_BEEP, [], '', 19, 'S C L L'
|
|
119
116
|
end
|
|
120
117
|
|
|
121
118
|
# Creates an alarm (a tone that goes back and force between two specified frequencies).
|
|
122
119
|
#
|
|
123
120
|
# The following parameters can be set:
|
|
124
121
|
#
|
|
125
|
-
# * Start Frequency: Start frequency of the alarm
|
|
126
|
-
# * End Frequency: End frequency of the alarm
|
|
127
|
-
# * Step Size: Size of one step of the sweep between the start/end frequencies
|
|
128
|
-
# * Step Delay: Delay between two steps (duration of time that one tone is used in a sweep)
|
|
129
|
-
# * Duration: Duration of the alarm
|
|
122
|
+
# * Start Frequency: Start frequency of the alarm.
|
|
123
|
+
# * End Frequency: End frequency of the alarm.
|
|
124
|
+
# * Step Size: Size of one step of the sweep between the start/end frequencies.
|
|
125
|
+
# * Step Delay: Delay between two steps (duration of time that one tone is used in a sweep).
|
|
126
|
+
# * Duration: Duration of the alarm.
|
|
130
127
|
#
|
|
131
128
|
# A duration of 0 stops the current alarm if any is ongoing.
|
|
132
129
|
# A duration of 4294967295 results in an infinite alarm.
|
|
@@ -152,36 +149,42 @@ module Tinkerforge
|
|
|
152
149
|
# * Volume = 0
|
|
153
150
|
# * Duration = 10000
|
|
154
151
|
#
|
|
155
|
-
# The
|
|
152
|
+
# The following conditions must be met:
|
|
156
153
|
#
|
|
157
|
-
# * Start Frequency:
|
|
158
|
-
# * End Frequency:
|
|
159
|
-
# * Step Size:
|
|
160
|
-
# * Step Delay:
|
|
161
|
-
# * Volume: 0 - 10
|
|
162
|
-
# * Duration: 0ms - 4294967295ms
|
|
154
|
+
# * Start Frequency: has to be smaller than end frequency
|
|
155
|
+
# * End Frequency: has to be bigger than start frequency
|
|
156
|
+
# * Step Size: has to be small enough to fit into the frequency range
|
|
157
|
+
# * Step Delay: has to be small enough to fit into the duration
|
|
163
158
|
def set_alarm(start_frequency, end_frequency, step_size, step_delay, volume, duration)
|
|
164
|
-
|
|
159
|
+
check_validity
|
|
160
|
+
|
|
161
|
+
send_request FUNCTION_SET_ALARM, [start_frequency, end_frequency, step_size, step_delay, volume, duration], 'S S S S C L', 8, ''
|
|
165
162
|
end
|
|
166
163
|
|
|
167
|
-
# Returns the last alarm settings as set by BrickletPiezoSpeakerV2#set_alarm. If an alarm is currently
|
|
168
|
-
# running it also returns the remaining duration of the alarm
|
|
169
|
-
# current frequency of the alarm
|
|
164
|
+
# Returns the last alarm settings as set by BrickletPiezoSpeakerV2#set_alarm. If an alarm is currently
|
|
165
|
+
# running it also returns the remaining duration of the alarm as well as the
|
|
166
|
+
# current frequency of the alarm.
|
|
170
167
|
#
|
|
171
|
-
# If the volume is updated during
|
|
168
|
+
# If the volume is updated during an alarm (with BrickletPiezoSpeakerV2#update_volume)
|
|
172
169
|
# this function returns the updated value.
|
|
173
170
|
def get_alarm
|
|
174
|
-
|
|
171
|
+
check_validity
|
|
172
|
+
|
|
173
|
+
send_request FUNCTION_GET_ALARM, [], '', 27, 'S S S S C L L S'
|
|
175
174
|
end
|
|
176
175
|
|
|
177
|
-
# Updates the volume of an ongoing beep or alarm.
|
|
176
|
+
# Updates the volume of an ongoing beep or alarm.
|
|
178
177
|
def update_volume(volume)
|
|
179
|
-
|
|
178
|
+
check_validity
|
|
179
|
+
|
|
180
|
+
send_request FUNCTION_UPDATE_VOLUME, [volume], 'C', 8, ''
|
|
180
181
|
end
|
|
181
182
|
|
|
182
|
-
# Updates the frequency of an ongoing beep.
|
|
183
|
+
# Updates the frequency of an ongoing beep.
|
|
183
184
|
def update_frequency(frequency)
|
|
184
|
-
|
|
185
|
+
check_validity
|
|
186
|
+
|
|
187
|
+
send_request FUNCTION_UPDATE_FREQUENCY, [frequency], 'S', 8, ''
|
|
185
188
|
end
|
|
186
189
|
|
|
187
190
|
# Returns the error count for the communication between Brick and Bricklet.
|
|
@@ -196,7 +199,9 @@ module Tinkerforge
|
|
|
196
199
|
# The errors counts are for errors that occur on the Bricklet side. All
|
|
197
200
|
# Bricks have a similar function that returns the errors on the Brick side.
|
|
198
201
|
def get_spitfp_error_count
|
|
199
|
-
|
|
202
|
+
check_validity
|
|
203
|
+
|
|
204
|
+
send_request FUNCTION_GET_SPITFP_ERROR_COUNT, [], '', 24, 'L L L L'
|
|
200
205
|
end
|
|
201
206
|
|
|
202
207
|
# Sets the bootloader mode and returns the status after the requested
|
|
@@ -209,12 +214,16 @@ module Tinkerforge
|
|
|
209
214
|
# This function is used by Brick Viewer during flashing. It should not be
|
|
210
215
|
# necessary to call it in a normal user program.
|
|
211
216
|
def set_bootloader_mode(mode)
|
|
212
|
-
|
|
217
|
+
check_validity
|
|
218
|
+
|
|
219
|
+
send_request FUNCTION_SET_BOOTLOADER_MODE, [mode], 'C', 9, 'C'
|
|
213
220
|
end
|
|
214
221
|
|
|
215
222
|
# Returns the current bootloader mode, see BrickletPiezoSpeakerV2#set_bootloader_mode.
|
|
216
223
|
def get_bootloader_mode
|
|
217
|
-
|
|
224
|
+
check_validity
|
|
225
|
+
|
|
226
|
+
send_request FUNCTION_GET_BOOTLOADER_MODE, [], '', 9, 'C'
|
|
218
227
|
end
|
|
219
228
|
|
|
220
229
|
# Sets the firmware pointer for BrickletPiezoSpeakerV2#write_firmware. The pointer has
|
|
@@ -224,7 +233,9 @@ module Tinkerforge
|
|
|
224
233
|
# This function is used by Brick Viewer during flashing. It should not be
|
|
225
234
|
# necessary to call it in a normal user program.
|
|
226
235
|
def set_write_firmware_pointer(pointer)
|
|
227
|
-
|
|
236
|
+
check_validity
|
|
237
|
+
|
|
238
|
+
send_request FUNCTION_SET_WRITE_FIRMWARE_POINTER, [pointer], 'L', 8, ''
|
|
228
239
|
end
|
|
229
240
|
|
|
230
241
|
# Writes 64 Bytes of firmware at the position as written by
|
|
@@ -236,7 +247,9 @@ module Tinkerforge
|
|
|
236
247
|
# This function is used by Brick Viewer during flashing. It should not be
|
|
237
248
|
# necessary to call it in a normal user program.
|
|
238
249
|
def write_firmware(data)
|
|
239
|
-
|
|
250
|
+
check_validity
|
|
251
|
+
|
|
252
|
+
send_request FUNCTION_WRITE_FIRMWARE, [data], 'C64', 9, 'C'
|
|
240
253
|
end
|
|
241
254
|
|
|
242
255
|
# Sets the status LED configuration. By default the LED shows
|
|
@@ -247,22 +260,28 @@ module Tinkerforge
|
|
|
247
260
|
#
|
|
248
261
|
# If the Bricklet is in bootloader mode, the LED is will show heartbeat by default.
|
|
249
262
|
def set_status_led_config(config)
|
|
250
|
-
|
|
263
|
+
check_validity
|
|
264
|
+
|
|
265
|
+
send_request FUNCTION_SET_STATUS_LED_CONFIG, [config], 'C', 8, ''
|
|
251
266
|
end
|
|
252
267
|
|
|
253
268
|
# Returns the configuration as set by BrickletPiezoSpeakerV2#set_status_led_config
|
|
254
269
|
def get_status_led_config
|
|
255
|
-
|
|
270
|
+
check_validity
|
|
271
|
+
|
|
272
|
+
send_request FUNCTION_GET_STATUS_LED_CONFIG, [], '', 9, 'C'
|
|
256
273
|
end
|
|
257
274
|
|
|
258
|
-
# Returns the temperature
|
|
275
|
+
# Returns the temperature as measured inside the microcontroller. The
|
|
259
276
|
# value returned is not the ambient temperature!
|
|
260
277
|
#
|
|
261
278
|
# The temperature is only proportional to the real temperature and it has bad
|
|
262
279
|
# accuracy. Practically it is only useful as an indicator for
|
|
263
280
|
# temperature changes.
|
|
264
281
|
def get_chip_temperature
|
|
265
|
-
|
|
282
|
+
check_validity
|
|
283
|
+
|
|
284
|
+
send_request FUNCTION_GET_CHIP_TEMPERATURE, [], '', 10, 's'
|
|
266
285
|
end
|
|
267
286
|
|
|
268
287
|
# Calling this function will reset the Bricklet. All configurations
|
|
@@ -272,7 +291,9 @@ module Tinkerforge
|
|
|
272
291
|
# calling functions on the existing ones will result in
|
|
273
292
|
# undefined behavior!
|
|
274
293
|
def reset
|
|
275
|
-
|
|
294
|
+
check_validity
|
|
295
|
+
|
|
296
|
+
send_request FUNCTION_RESET, [], '', 8, ''
|
|
276
297
|
end
|
|
277
298
|
|
|
278
299
|
# Writes a new UID into flash. If you want to set a new UID
|
|
@@ -281,25 +302,31 @@ module Tinkerforge
|
|
|
281
302
|
#
|
|
282
303
|
# We recommend that you use Brick Viewer to change the UID.
|
|
283
304
|
def write_uid(uid)
|
|
284
|
-
|
|
305
|
+
check_validity
|
|
306
|
+
|
|
307
|
+
send_request FUNCTION_WRITE_UID, [uid], 'L', 8, ''
|
|
285
308
|
end
|
|
286
309
|
|
|
287
310
|
# Returns the current UID as an integer. Encode as
|
|
288
311
|
# Base58 to get the usual string version.
|
|
289
312
|
def read_uid
|
|
290
|
-
|
|
313
|
+
check_validity
|
|
314
|
+
|
|
315
|
+
send_request FUNCTION_READ_UID, [], '', 12, 'L'
|
|
291
316
|
end
|
|
292
317
|
|
|
293
318
|
# Returns the UID, the UID where the Bricklet is connected to,
|
|
294
319
|
# the position, the hardware and firmware version as well as the
|
|
295
320
|
# device identifier.
|
|
296
321
|
#
|
|
297
|
-
# The position can be 'a', 'b', 'c' or '
|
|
322
|
+
# The position can be 'a', 'b', 'c', 'd', 'e', 'f', 'g' or 'h' (Bricklet Port).
|
|
323
|
+
# A Bricklet connected to an :ref:`Isolator Bricklet <isolator_bricklet>` is always at
|
|
324
|
+
# position 'z'.
|
|
298
325
|
#
|
|
299
326
|
# The device identifier numbers can be found :ref:`here <device_identifier>`.
|
|
300
327
|
# |device_identifier_constant|
|
|
301
328
|
def get_identity
|
|
302
|
-
send_request FUNCTION_GET_IDENTITY, [], '',
|
|
329
|
+
send_request FUNCTION_GET_IDENTITY, [], '', 33, 'Z8 Z8 k C3 C3 S'
|
|
303
330
|
end
|
|
304
331
|
|
|
305
332
|
# Registers a callback with ID <tt>id</tt> to the block <tt>block</tt>.
|
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
# -*- ruby encoding: utf-8 -*-
|
|
2
2
|
#############################################################
|
|
3
|
-
# This file was automatically generated on
|
|
3
|
+
# This file was automatically generated on 2020-11-02. #
|
|
4
4
|
# #
|
|
5
|
-
# Ruby Bindings Version 2.1.
|
|
5
|
+
# Ruby Bindings Version 2.1.27 #
|
|
6
6
|
# #
|
|
7
7
|
# If you have a bugfix for this file and want to commit it, #
|
|
8
8
|
# please fix the bug in the generator. You can find a link #
|
|
9
9
|
# to the generators git repository on tinkerforge.com #
|
|
10
10
|
#############################################################
|
|
11
11
|
|
|
12
|
+
require_relative './ip_connection'
|
|
13
|
+
|
|
12
14
|
module Tinkerforge
|
|
13
15
|
# Reads temperatures from Pt100 und Pt1000 sensors
|
|
14
16
|
class BrickletPTC < Device
|
|
@@ -90,7 +92,7 @@ module Tinkerforge
|
|
|
90
92
|
# Creates an object with the unique device ID <tt>uid</tt> and adds it to
|
|
91
93
|
# the IP Connection <tt>ipcon</tt>.
|
|
92
94
|
def initialize(uid, ipcon)
|
|
93
|
-
super uid, ipcon
|
|
95
|
+
super uid, ipcon, DEVICE_IDENTIFIER, DEVICE_DISPLAY_NAME
|
|
94
96
|
|
|
95
97
|
@api_version = [2, 0, 1]
|
|
96
98
|
|
|
@@ -115,23 +117,24 @@ module Tinkerforge
|
|
|
115
117
|
@response_expected[FUNCTION_GET_SENSOR_CONNECTED_CALLBACK_CONFIGURATION] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
|
116
118
|
@response_expected[FUNCTION_GET_IDENTITY] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
|
117
119
|
|
|
118
|
-
@callback_formats[CALLBACK_TEMPERATURE] = 'l'
|
|
119
|
-
@callback_formats[CALLBACK_TEMPERATURE_REACHED] = 'l'
|
|
120
|
-
@callback_formats[CALLBACK_RESISTANCE] = 'l'
|
|
121
|
-
@callback_formats[CALLBACK_RESISTANCE_REACHED] = 'l'
|
|
122
|
-
@callback_formats[CALLBACK_SENSOR_CONNECTED] = '?'
|
|
120
|
+
@callback_formats[CALLBACK_TEMPERATURE] = [12, 'l']
|
|
121
|
+
@callback_formats[CALLBACK_TEMPERATURE_REACHED] = [12, 'l']
|
|
122
|
+
@callback_formats[CALLBACK_RESISTANCE] = [12, 'l']
|
|
123
|
+
@callback_formats[CALLBACK_RESISTANCE_REACHED] = [12, 'l']
|
|
124
|
+
@callback_formats[CALLBACK_SENSOR_CONNECTED] = [9, '?']
|
|
123
125
|
|
|
126
|
+
@ipcon.add_device self
|
|
124
127
|
end
|
|
125
128
|
|
|
126
|
-
# Returns the temperature of connected sensor.
|
|
127
|
-
# has a range of -246 to 849 °C and is given in °C/100,
|
|
128
|
-
# e.g. a value of 4223 means that a temperature of 42.23 °C is measured.
|
|
129
|
+
# Returns the temperature of connected sensor.
|
|
129
130
|
#
|
|
130
131
|
# If you want to get the temperature periodically, it is recommended
|
|
131
132
|
# to use the CALLBACK_TEMPERATURE callback and set the period with
|
|
132
133
|
# BrickletPTC#set_temperature_callback_period.
|
|
133
134
|
def get_temperature
|
|
134
|
-
|
|
135
|
+
check_validity
|
|
136
|
+
|
|
137
|
+
send_request FUNCTION_GET_TEMPERATURE, [], '', 12, 'l'
|
|
135
138
|
end
|
|
136
139
|
|
|
137
140
|
# Returns the value as measured by the MAX31865 precision delta-sigma ADC.
|
|
@@ -145,39 +148,45 @@ module Tinkerforge
|
|
|
145
148
|
# to use the CALLBACK_RESISTANCE callback and set the period with
|
|
146
149
|
# BrickletPTC#set_resistance_callback_period.
|
|
147
150
|
def get_resistance
|
|
148
|
-
|
|
151
|
+
check_validity
|
|
152
|
+
|
|
153
|
+
send_request FUNCTION_GET_RESISTANCE, [], '', 12, 'l'
|
|
149
154
|
end
|
|
150
155
|
|
|
151
|
-
# Sets the period
|
|
156
|
+
# Sets the period with which the CALLBACK_TEMPERATURE callback is triggered
|
|
152
157
|
# periodically. A value of 0 turns the callback off.
|
|
153
158
|
#
|
|
154
159
|
# The CALLBACK_TEMPERATURE callback is only triggered if the temperature has
|
|
155
160
|
# changed since the last triggering.
|
|
156
|
-
#
|
|
157
|
-
# The default value is 0.
|
|
158
161
|
def set_temperature_callback_period(period)
|
|
159
|
-
|
|
162
|
+
check_validity
|
|
163
|
+
|
|
164
|
+
send_request FUNCTION_SET_TEMPERATURE_CALLBACK_PERIOD, [period], 'L', 8, ''
|
|
160
165
|
end
|
|
161
166
|
|
|
162
167
|
# Returns the period as set by BrickletPTC#set_temperature_callback_period.
|
|
163
168
|
def get_temperature_callback_period
|
|
164
|
-
|
|
169
|
+
check_validity
|
|
170
|
+
|
|
171
|
+
send_request FUNCTION_GET_TEMPERATURE_CALLBACK_PERIOD, [], '', 12, 'L'
|
|
165
172
|
end
|
|
166
173
|
|
|
167
|
-
# Sets the period
|
|
174
|
+
# Sets the period with which the CALLBACK_RESISTANCE callback is triggered
|
|
168
175
|
# periodically. A value of 0 turns the callback off.
|
|
169
176
|
#
|
|
170
177
|
# The CALLBACK_RESISTANCE callback is only triggered if the resistance has changed
|
|
171
178
|
# since the last triggering.
|
|
172
|
-
#
|
|
173
|
-
# The default value is 0.
|
|
174
179
|
def set_resistance_callback_period(period)
|
|
175
|
-
|
|
180
|
+
check_validity
|
|
181
|
+
|
|
182
|
+
send_request FUNCTION_SET_RESISTANCE_CALLBACK_PERIOD, [period], 'L', 8, ''
|
|
176
183
|
end
|
|
177
184
|
|
|
178
185
|
# Returns the period as set by BrickletPTC#set_resistance_callback_period.
|
|
179
186
|
def get_resistance_callback_period
|
|
180
|
-
|
|
187
|
+
check_validity
|
|
188
|
+
|
|
189
|
+
send_request FUNCTION_GET_RESISTANCE_CALLBACK_PERIOD, [], '', 12, 'L'
|
|
181
190
|
end
|
|
182
191
|
|
|
183
192
|
# Sets the thresholds for the CALLBACK_TEMPERATURE_REACHED callback.
|
|
@@ -191,15 +200,17 @@ module Tinkerforge
|
|
|
191
200
|
# "'i'", "Callback is triggered when the temperature is *inside* the min and max values"
|
|
192
201
|
# "'<'", "Callback is triggered when the temperature is smaller than the min value (max is ignored)"
|
|
193
202
|
# "'>'", "Callback is triggered when the temperature is greater than the min value (max is ignored)"
|
|
194
|
-
#
|
|
195
|
-
# The default value is ('x', 0, 0).
|
|
196
203
|
def set_temperature_callback_threshold(option, min, max)
|
|
197
|
-
|
|
204
|
+
check_validity
|
|
205
|
+
|
|
206
|
+
send_request FUNCTION_SET_TEMPERATURE_CALLBACK_THRESHOLD, [option, min, max], 'k l l', 8, ''
|
|
198
207
|
end
|
|
199
208
|
|
|
200
209
|
# Returns the threshold as set by BrickletPTC#set_temperature_callback_threshold.
|
|
201
210
|
def get_temperature_callback_threshold
|
|
202
|
-
|
|
211
|
+
check_validity
|
|
212
|
+
|
|
213
|
+
send_request FUNCTION_GET_TEMPERATURE_CALLBACK_THRESHOLD, [], '', 17, 'k l l'
|
|
203
214
|
end
|
|
204
215
|
|
|
205
216
|
# Sets the thresholds for the CALLBACK_RESISTANCE_REACHED callback.
|
|
@@ -213,18 +224,20 @@ module Tinkerforge
|
|
|
213
224
|
# "'i'", "Callback is triggered when the temperature is *inside* the min and max values"
|
|
214
225
|
# "'<'", "Callback is triggered when the temperature is smaller than the min value (max is ignored)"
|
|
215
226
|
# "'>'", "Callback is triggered when the temperature is greater than the min value (max is ignored)"
|
|
216
|
-
#
|
|
217
|
-
# The default value is ('x', 0, 0).
|
|
218
227
|
def set_resistance_callback_threshold(option, min, max)
|
|
219
|
-
|
|
228
|
+
check_validity
|
|
229
|
+
|
|
230
|
+
send_request FUNCTION_SET_RESISTANCE_CALLBACK_THRESHOLD, [option, min, max], 'k l l', 8, ''
|
|
220
231
|
end
|
|
221
232
|
|
|
222
233
|
# Returns the threshold as set by BrickletPTC#set_resistance_callback_threshold.
|
|
223
234
|
def get_resistance_callback_threshold
|
|
224
|
-
|
|
235
|
+
check_validity
|
|
236
|
+
|
|
237
|
+
send_request FUNCTION_GET_RESISTANCE_CALLBACK_THRESHOLD, [], '', 17, 'k l l'
|
|
225
238
|
end
|
|
226
239
|
|
|
227
|
-
# Sets the period
|
|
240
|
+
# Sets the period with which the threshold callback
|
|
228
241
|
#
|
|
229
242
|
# * CALLBACK_TEMPERATURE_REACHED,
|
|
230
243
|
# * CALLBACK_RESISTANCE_REACHED
|
|
@@ -235,31 +248,35 @@ module Tinkerforge
|
|
|
235
248
|
# * BrickletPTC#set_resistance_callback_threshold
|
|
236
249
|
#
|
|
237
250
|
# keeps being reached.
|
|
238
|
-
#
|
|
239
|
-
# The default value is 100.
|
|
240
251
|
def set_debounce_period(debounce)
|
|
241
|
-
|
|
252
|
+
check_validity
|
|
253
|
+
|
|
254
|
+
send_request FUNCTION_SET_DEBOUNCE_PERIOD, [debounce], 'L', 8, ''
|
|
242
255
|
end
|
|
243
256
|
|
|
244
257
|
# Returns the debounce period as set by BrickletPTC#set_debounce_period.
|
|
245
258
|
def get_debounce_period
|
|
246
|
-
|
|
259
|
+
check_validity
|
|
260
|
+
|
|
261
|
+
send_request FUNCTION_GET_DEBOUNCE_PERIOD, [], '', 12, 'L'
|
|
247
262
|
end
|
|
248
263
|
|
|
249
264
|
# Sets the noise rejection filter to either 50Hz (0) or 60Hz (1).
|
|
250
265
|
# Noise from 50Hz or 60Hz power sources (including
|
|
251
266
|
# harmonics of the AC power's fundamental frequency) is
|
|
252
267
|
# attenuated by 82dB.
|
|
253
|
-
#
|
|
254
|
-
# Default value is 0 = 50Hz.
|
|
255
268
|
def set_noise_rejection_filter(filter)
|
|
256
|
-
|
|
269
|
+
check_validity
|
|
270
|
+
|
|
271
|
+
send_request FUNCTION_SET_NOISE_REJECTION_FILTER, [filter], 'C', 8, ''
|
|
257
272
|
end
|
|
258
273
|
|
|
259
274
|
# Returns the noise rejection filter option as set by
|
|
260
275
|
# BrickletPTC#set_noise_rejection_filter
|
|
261
276
|
def get_noise_rejection_filter
|
|
262
|
-
|
|
277
|
+
check_validity
|
|
278
|
+
|
|
279
|
+
send_request FUNCTION_GET_NOISE_REJECTION_FILTER, [], '', 9, 'C'
|
|
263
280
|
end
|
|
264
281
|
|
|
265
282
|
# Returns *true* if the sensor is connected correctly.
|
|
@@ -268,50 +285,58 @@ module Tinkerforge
|
|
|
268
285
|
# returns *false*, there is either no Pt100 or Pt1000 sensor connected,
|
|
269
286
|
# the sensor is connected incorrectly or the sensor itself is faulty.
|
|
270
287
|
def is_sensor_connected
|
|
271
|
-
|
|
288
|
+
check_validity
|
|
289
|
+
|
|
290
|
+
send_request FUNCTION_IS_SENSOR_CONNECTED, [], '', 9, '?'
|
|
272
291
|
end
|
|
273
292
|
|
|
274
293
|
# Sets the wire mode of the sensor. Possible values are 2, 3 and 4 which
|
|
275
294
|
# correspond to 2-, 3- and 4-wire sensors. The value has to match the jumper
|
|
276
295
|
# configuration on the Bricklet.
|
|
277
|
-
#
|
|
278
|
-
# The default value is 2 = 2-wire.
|
|
279
296
|
def set_wire_mode(mode)
|
|
280
|
-
|
|
297
|
+
check_validity
|
|
298
|
+
|
|
299
|
+
send_request FUNCTION_SET_WIRE_MODE, [mode], 'C', 8, ''
|
|
281
300
|
end
|
|
282
301
|
|
|
283
302
|
# Returns the wire mode as set by BrickletPTC#set_wire_mode
|
|
284
303
|
def get_wire_mode
|
|
285
|
-
|
|
304
|
+
check_validity
|
|
305
|
+
|
|
306
|
+
send_request FUNCTION_GET_WIRE_MODE, [], '', 9, 'C'
|
|
286
307
|
end
|
|
287
308
|
|
|
288
309
|
# If you enable this callback, the CALLBACK_SENSOR_CONNECTED callback is triggered
|
|
289
310
|
# every time a Pt sensor is connected/disconnected.
|
|
290
311
|
#
|
|
291
|
-
# By default this callback is disabled.
|
|
292
|
-
#
|
|
293
312
|
# .. versionadded:: 2.0.2$nbsp;(Plugin)
|
|
294
313
|
def set_sensor_connected_callback_configuration(enabled)
|
|
295
|
-
|
|
314
|
+
check_validity
|
|
315
|
+
|
|
316
|
+
send_request FUNCTION_SET_SENSOR_CONNECTED_CALLBACK_CONFIGURATION, [enabled], '?', 8, ''
|
|
296
317
|
end
|
|
297
318
|
|
|
298
319
|
# Returns the configuration as set by BrickletPTC#set_sensor_connected_callback_configuration.
|
|
299
320
|
#
|
|
300
321
|
# .. versionadded:: 2.0.2$nbsp;(Plugin)
|
|
301
322
|
def get_sensor_connected_callback_configuration
|
|
302
|
-
|
|
323
|
+
check_validity
|
|
324
|
+
|
|
325
|
+
send_request FUNCTION_GET_SENSOR_CONNECTED_CALLBACK_CONFIGURATION, [], '', 9, '?'
|
|
303
326
|
end
|
|
304
327
|
|
|
305
328
|
# Returns the UID, the UID where the Bricklet is connected to,
|
|
306
329
|
# the position, the hardware and firmware version as well as the
|
|
307
330
|
# device identifier.
|
|
308
331
|
#
|
|
309
|
-
# The position can be 'a', 'b', 'c' or '
|
|
332
|
+
# The position can be 'a', 'b', 'c', 'd', 'e', 'f', 'g' or 'h' (Bricklet Port).
|
|
333
|
+
# A Bricklet connected to an :ref:`Isolator Bricklet <isolator_bricklet>` is always at
|
|
334
|
+
# position 'z'.
|
|
310
335
|
#
|
|
311
336
|
# The device identifier numbers can be found :ref:`here <device_identifier>`.
|
|
312
337
|
# |device_identifier_constant|
|
|
313
338
|
def get_identity
|
|
314
|
-
send_request FUNCTION_GET_IDENTITY, [], '',
|
|
339
|
+
send_request FUNCTION_GET_IDENTITY, [], '', 33, 'Z8 Z8 k C3 C3 S'
|
|
315
340
|
end
|
|
316
341
|
|
|
317
342
|
# Registers a callback with ID <tt>id</tt> to the block <tt>block</tt>.
|