tinkerforge 2.1.24 → 2.1.25
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 +4 -4
- data/lib/tinkerforge/brick_dc.rb +155 -74
- data/lib/tinkerforge/brick_hat.rb +70 -30
- data/lib/tinkerforge/brick_hat_zero.rb +56 -22
- data/lib/tinkerforge/brick_imu.rb +184 -77
- data/lib/tinkerforge/brick_imu_v2.rb +208 -105
- data/lib/tinkerforge/brick_master.rb +484 -182
- data/lib/tinkerforge/brick_red.rb +197 -74
- data/lib/tinkerforge/brick_servo.rb +185 -101
- data/lib/tinkerforge/brick_silent_stepper.rb +246 -166
- data/lib/tinkerforge/brick_stepper.rb +210 -98
- data/lib/tinkerforge/bricklet_accelerometer.rb +58 -23
- data/lib/tinkerforge/bricklet_accelerometer_v2.rb +105 -54
- data/lib/tinkerforge/bricklet_air_quality.rb +117 -59
- data/lib/tinkerforge/bricklet_ambient_light.rb +51 -21
- data/lib/tinkerforge/bricklet_ambient_light_v2.rb +40 -22
- data/lib/tinkerforge/bricklet_ambient_light_v3.rb +61 -25
- data/lib/tinkerforge/bricklet_analog_in.rb +63 -25
- data/lib/tinkerforge/bricklet_analog_in_v2.rb +57 -23
- data/lib/tinkerforge/bricklet_analog_in_v3.rb +67 -25
- data/lib/tinkerforge/bricklet_analog_out.rb +23 -9
- data/lib/tinkerforge/bricklet_analog_out_v2.rb +20 -8
- data/lib/tinkerforge/bricklet_analog_out_v3.rb +54 -20
- data/lib/tinkerforge/bricklet_barometer.rb +66 -26
- data/lib/tinkerforge/bricklet_barometer_v2.rb +99 -37
- data/lib/tinkerforge/bricklet_can.rb +83 -18
- data/lib/tinkerforge/bricklet_can_v2.rb +172 -38
- data/lib/tinkerforge/bricklet_co2.rb +34 -14
- data/lib/tinkerforge/bricklet_co2_v2.rb +97 -37
- data/lib/tinkerforge/bricklet_color.rb +69 -27
- data/lib/tinkerforge/bricklet_color_v2.rb +87 -33
- data/lib/tinkerforge/bricklet_compass.rb +78 -30
- data/lib/tinkerforge/bricklet_current12.rb +58 -24
- data/lib/tinkerforge/bricklet_current25.rb +58 -24
- data/lib/tinkerforge/bricklet_distance_ir.rb +57 -23
- data/lib/tinkerforge/bricklet_distance_ir_v2.rb +83 -31
- data/lib/tinkerforge/bricklet_distance_us.rb +40 -16
- data/lib/tinkerforge/bricklet_distance_us_v2.rb +67 -25
- data/lib/tinkerforge/bricklet_dmx.rb +88 -34
- data/lib/tinkerforge/bricklet_dual_button.rb +24 -10
- data/lib/tinkerforge/bricklet_dual_button_v2.rb +64 -24
- data/lib/tinkerforge/bricklet_dual_relay.rb +27 -11
- data/lib/tinkerforge/bricklet_dust_detector.rb +40 -16
- data/lib/tinkerforge/bricklet_e_paper_296x128.rb +88 -32
- data/lib/tinkerforge/bricklet_energy_monitor.rb +73 -27
- data/lib/tinkerforge/bricklet_gps.rb +64 -26
- data/lib/tinkerforge/bricklet_gps_v2.rb +117 -47
- data/lib/tinkerforge/bricklet_hall_effect.rb +43 -23
- data/lib/tinkerforge/bricklet_hall_effect_v2.rb +71 -27
- data/lib/tinkerforge/bricklet_humidity.rb +51 -21
- data/lib/tinkerforge/bricklet_humidity_v2.rb +83 -31
- data/lib/tinkerforge/bricklet_industrial_analog_out.rb +38 -14
- data/lib/tinkerforge/bricklet_industrial_analog_out_v2.rb +81 -29
- data/lib/tinkerforge/bricklet_industrial_counter.rb +101 -39
- data/lib/tinkerforge/bricklet_industrial_digital_in_4.rb +45 -17
- data/lib/tinkerforge/bricklet_industrial_digital_in_4_v2.rb +77 -29
- data/lib/tinkerforge/bricklet_industrial_digital_out_4.rb +36 -14
- data/lib/tinkerforge/bricklet_industrial_digital_out_4_v2.rb +73 -27
- data/lib/tinkerforge/bricklet_industrial_dual_0_20ma.rb +40 -16
- data/lib/tinkerforge/bricklet_industrial_dual_0_20ma_v2.rb +79 -29
- data/lib/tinkerforge/bricklet_industrial_dual_analog_in.rb +49 -19
- data/lib/tinkerforge/bricklet_industrial_dual_analog_in_v2.rb +82 -30
- data/lib/tinkerforge/bricklet_industrial_dual_relay.rb +61 -23
- data/lib/tinkerforge/bricklet_industrial_quad_relay.rb +36 -14
- data/lib/tinkerforge/bricklet_industrial_quad_relay_v2.rb +67 -25
- data/lib/tinkerforge/bricklet_io16.rb +55 -21
- data/lib/tinkerforge/bricklet_io16_v2.rb +90 -34
- data/lib/tinkerforge/bricklet_io4.rb +55 -23
- data/lib/tinkerforge/bricklet_io4_v2.rb +96 -36
- data/lib/tinkerforge/bricklet_isolator.rb +72 -28
- data/lib/tinkerforge/bricklet_joystick.rb +59 -25
- data/lib/tinkerforge/bricklet_joystick_v2.rb +68 -26
- data/lib/tinkerforge/bricklet_laser_range_finder.rb +82 -32
- data/lib/tinkerforge/bricklet_laser_range_finder_v2.rb +96 -36
- data/lib/tinkerforge/bricklet_lcd_128x64.rb +192 -70
- data/lib/tinkerforge/bricklet_lcd_16x2.rb +45 -18
- data/lib/tinkerforge/bricklet_lcd_20x4.rb +58 -23
- data/lib/tinkerforge/bricklet_led_strip.rb +60 -22
- data/lib/tinkerforge/bricklet_led_strip_v2.rb +91 -46
- data/lib/tinkerforge/bricklet_line.rb +34 -14
- data/lib/tinkerforge/bricklet_linear_poti.rb +51 -21
- data/lib/tinkerforge/bricklet_linear_poti_v2.rb +55 -21
- data/lib/tinkerforge/bricklet_load_cell.rb +61 -23
- data/lib/tinkerforge/bricklet_load_cell_v2.rb +80 -30
- data/lib/tinkerforge/bricklet_moisture.rb +40 -16
- data/lib/tinkerforge/bricklet_motion_detector.rb +22 -10
- data/lib/tinkerforge/bricklet_motion_detector_v2.rb +62 -24
- data/lib/tinkerforge/bricklet_motorized_linear_poti.rb +71 -27
- data/lib/tinkerforge/bricklet_multi_touch.rb +31 -13
- data/lib/tinkerforge/bricklet_multi_touch_v2.rb +76 -28
- data/lib/tinkerforge/bricklet_nfc.rb +123 -58
- data/lib/tinkerforge/bricklet_nfc_rfid.rb +33 -13
- data/lib/tinkerforge/bricklet_oled_128x64.rb +29 -11
- data/lib/tinkerforge/bricklet_oled_128x64_v2.rb +66 -24
- data/lib/tinkerforge/bricklet_oled_64x48.rb +29 -11
- data/lib/tinkerforge/bricklet_one_wire.rb +66 -24
- data/lib/tinkerforge/bricklet_outdoor_weather.rb +71 -27
- data/lib/tinkerforge/bricklet_particulate_matter.rb +75 -30
- data/lib/tinkerforge/bricklet_piezo_buzzer.rb +19 -9
- data/lib/tinkerforge/bricklet_piezo_speaker.rb +22 -10
- data/lib/tinkerforge/bricklet_piezo_speaker_v2.rb +80 -42
- data/lib/tinkerforge/bricklet_ptc.rb +74 -42
- data/lib/tinkerforge/bricklet_ptc_v2.rb +95 -48
- data/lib/tinkerforge/bricklet_real_time_clock.rb +45 -33
- data/lib/tinkerforge/bricklet_real_time_clock_v2.rb +78 -44
- data/lib/tinkerforge/bricklet_remote_switch.rb +39 -29
- data/lib/tinkerforge/bricklet_remote_switch_v2.rb +87 -49
- data/lib/tinkerforge/bricklet_rgb_led.rb +18 -8
- data/lib/tinkerforge/bricklet_rgb_led_button.rb +62 -30
- data/lib/tinkerforge/bricklet_rgb_led_matrix.rb +79 -33
- data/lib/tinkerforge/bricklet_rgb_led_v2.rb +52 -20
- data/lib/tinkerforge/bricklet_rotary_encoder.rb +39 -19
- data/lib/tinkerforge/bricklet_rotary_encoder_v2.rb +60 -24
- data/lib/tinkerforge/bricklet_rotary_poti.rb +53 -28
- data/lib/tinkerforge/bricklet_rotary_poti_v2.rb +57 -23
- data/lib/tinkerforge/bricklet_rs232.rb +90 -28
- data/lib/tinkerforge/bricklet_rs232_v2.rb +118 -44
- data/lib/tinkerforge/bricklet_rs485.rb +223 -95
- data/lib/tinkerforge/bricklet_segment_display_4x7.rb +25 -14
- data/lib/tinkerforge/bricklet_segment_display_4x7_v2.rb +75 -35
- data/lib/tinkerforge/bricklet_solid_state_relay.rb +25 -13
- data/lib/tinkerforge/bricklet_solid_state_relay_v2.rb +59 -25
- data/lib/tinkerforge/bricklet_sound_intensity.rb +35 -18
- data/lib/tinkerforge/bricklet_sound_pressure_level.rb +72 -31
- data/lib/tinkerforge/bricklet_temperature.rb +40 -16
- data/lib/tinkerforge/bricklet_temperature_ir.rb +57 -23
- data/lib/tinkerforge/bricklet_temperature_ir_v2.rb +71 -27
- data/lib/tinkerforge/bricklet_temperature_v2.rb +61 -25
- data/lib/tinkerforge/bricklet_thermal_imaging.rb +105 -44
- data/lib/tinkerforge/bricklet_thermocouple.rb +45 -24
- data/lib/tinkerforge/bricklet_thermocouple_v2.rb +65 -27
- data/lib/tinkerforge/bricklet_tilt.rb +24 -10
- data/lib/tinkerforge/bricklet_uv_light.rb +36 -18
- data/lib/tinkerforge/bricklet_uv_light_v2.rb +85 -37
- data/lib/tinkerforge/bricklet_voltage.rb +52 -28
- data/lib/tinkerforge/bricklet_voltage_current.rb +91 -73
- data/lib/tinkerforge/bricklet_voltage_current_v2.rb +90 -68
- data/lib/tinkerforge/bricklet_xmc1400_breakout.rb +80 -30
- data/lib/tinkerforge/device_display_names.rb +163 -0
- data/lib/tinkerforge/ip_connection.rb +151 -32
- data/lib/tinkerforge/version.rb +1 -1
- metadata +3 -2
|
@@ -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-04-07. #
|
|
4
4
|
# #
|
|
5
|
-
# Ruby Bindings Version 2.1.
|
|
5
|
+
# Ruby Bindings Version 2.1.25 #
|
|
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
|
# Controls up to 2048 RGB(W) LEDs
|
|
14
16
|
class BrickletLEDStripV2 < Device
|
|
@@ -104,7 +106,7 @@ module Tinkerforge
|
|
|
104
106
|
# Creates an object with the unique device ID <tt>uid</tt> and adds it to
|
|
105
107
|
# the IP Connection <tt>ipcon</tt>.
|
|
106
108
|
def initialize(uid, ipcon)
|
|
107
|
-
super uid, ipcon
|
|
109
|
+
super uid, ipcon, DEVICE_IDENTIFIER, DEVICE_DISPLAY_NAME
|
|
108
110
|
|
|
109
111
|
@api_version = [2, 0, 0]
|
|
110
112
|
|
|
@@ -134,12 +136,13 @@ module Tinkerforge
|
|
|
134
136
|
@response_expected[FUNCTION_READ_UID] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
|
135
137
|
@response_expected[FUNCTION_GET_IDENTITY] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
|
136
138
|
|
|
137
|
-
@callback_formats[CALLBACK_FRAME_STARTED] = 'S'
|
|
139
|
+
@callback_formats[CALLBACK_FRAME_STARTED] = [10, 'S']
|
|
138
140
|
|
|
141
|
+
@ipcon.add_device self
|
|
139
142
|
end
|
|
140
143
|
|
|
141
144
|
# Sets the RGB(W) values for the LEDs starting from *index*.
|
|
142
|
-
# You can set at most 2048 RGB values or 1536 RGBW values.
|
|
145
|
+
# You can set at most 2048 RGB values or 1536 RGBW values (6144 byte each).
|
|
143
146
|
#
|
|
144
147
|
# To make the colors show correctly you need to configure the chip type
|
|
145
148
|
# (see BrickletLEDStripV2#set_chip_type) and a channel mapping (see BrickletLEDStripV2#set_channel_mapping)
|
|
@@ -164,7 +167,9 @@ module Tinkerforge
|
|
|
164
167
|
#
|
|
165
168
|
# This approach ensures that you can change the LED colors with a fixed frame rate.
|
|
166
169
|
def set_led_values_low_level(index, value_length, value_chunk_offset, value_chunk_data)
|
|
167
|
-
|
|
170
|
+
check_validity
|
|
171
|
+
|
|
172
|
+
send_request FUNCTION_SET_LED_VALUES_LOW_LEVEL, [index, value_length, value_chunk_offset, value_chunk_data], 'S S S C58', 8, ''
|
|
168
173
|
end
|
|
169
174
|
|
|
170
175
|
# Returns *length* RGB(W) values starting from the
|
|
@@ -175,10 +180,12 @@ module Tinkerforge
|
|
|
175
180
|
# sequence RGBWRGBWRGBW...
|
|
176
181
|
# (assuming you start at an index divisible by 3 (RGB) or 4 (RGBW)).
|
|
177
182
|
def get_led_values_low_level(index, length)
|
|
178
|
-
|
|
183
|
+
check_validity
|
|
184
|
+
|
|
185
|
+
send_request FUNCTION_GET_LED_VALUES_LOW_LEVEL, [index, length], 'S S', 72, 'S S C60'
|
|
179
186
|
end
|
|
180
187
|
|
|
181
|
-
# Sets the frame duration
|
|
188
|
+
# Sets the frame duration.
|
|
182
189
|
#
|
|
183
190
|
# Example: If you want to achieve 20 frames per second, you should
|
|
184
191
|
# set the frame duration to 50ms (50ms * 20 = 1 second).
|
|
@@ -187,21 +194,26 @@ module Tinkerforge
|
|
|
187
194
|
#
|
|
188
195
|
# Default value: 100ms (10 frames per second).
|
|
189
196
|
def set_frame_duration(duration)
|
|
190
|
-
|
|
197
|
+
check_validity
|
|
198
|
+
|
|
199
|
+
send_request FUNCTION_SET_FRAME_DURATION, [duration], 'S', 8, ''
|
|
191
200
|
end
|
|
192
201
|
|
|
193
|
-
# Returns the frame duration
|
|
202
|
+
# Returns the frame duration as set by BrickletLEDStripV2#set_frame_duration.
|
|
194
203
|
def get_frame_duration
|
|
195
|
-
|
|
204
|
+
check_validity
|
|
205
|
+
|
|
206
|
+
send_request FUNCTION_GET_FRAME_DURATION, [], '', 10, 'S'
|
|
196
207
|
end
|
|
197
208
|
|
|
198
|
-
# Returns the current supply voltage of the LEDs.
|
|
209
|
+
# Returns the current supply voltage of the LEDs.
|
|
199
210
|
def get_supply_voltage
|
|
200
|
-
|
|
211
|
+
check_validity
|
|
212
|
+
|
|
213
|
+
send_request FUNCTION_GET_SUPPLY_VOLTAGE, [], '', 10, 'S'
|
|
201
214
|
end
|
|
202
215
|
|
|
203
|
-
# Sets the frequency of the clock
|
|
204
|
-
# 2000000Hz (2MHz).
|
|
216
|
+
# Sets the frequency of the clock.
|
|
205
217
|
#
|
|
206
218
|
# The Bricklet will choose the nearest achievable frequency, which may
|
|
207
219
|
# be off by a few Hz. You can get the exact frequency that is used by
|
|
@@ -213,15 +225,17 @@ module Tinkerforge
|
|
|
213
225
|
#
|
|
214
226
|
# With a decreasing frequency your maximum frames per second will decrease
|
|
215
227
|
# too.
|
|
216
|
-
#
|
|
217
|
-
# The default value is 1.66MHz.
|
|
218
228
|
def set_clock_frequency(frequency)
|
|
219
|
-
|
|
229
|
+
check_validity
|
|
230
|
+
|
|
231
|
+
send_request FUNCTION_SET_CLOCK_FREQUENCY, [frequency], 'L', 8, ''
|
|
220
232
|
end
|
|
221
233
|
|
|
222
234
|
# Returns the currently used clock frequency as set by BrickletLEDStripV2#set_clock_frequency.
|
|
223
235
|
def get_clock_frequency
|
|
224
|
-
|
|
236
|
+
check_validity
|
|
237
|
+
|
|
238
|
+
send_request FUNCTION_GET_CLOCK_FREQUENCY, [], '', 12, 'L'
|
|
225
239
|
end
|
|
226
240
|
|
|
227
241
|
# Sets the type of the LED driver chip. We currently support the chips
|
|
@@ -233,15 +247,17 @@ module Tinkerforge
|
|
|
233
247
|
# * WS2813 / WS2815 (Chip Type = WS2812)
|
|
234
248
|
# * LPD8806 and
|
|
235
249
|
# * APA102 / DotStar.
|
|
236
|
-
#
|
|
237
|
-
# The default value is WS2801 (2801).
|
|
238
250
|
def set_chip_type(chip)
|
|
239
|
-
|
|
251
|
+
check_validity
|
|
252
|
+
|
|
253
|
+
send_request FUNCTION_SET_CHIP_TYPE, [chip], 'S', 8, ''
|
|
240
254
|
end
|
|
241
255
|
|
|
242
256
|
# Returns the currently used chip type as set by BrickletLEDStripV2#set_chip_type.
|
|
243
257
|
def get_chip_type
|
|
244
|
-
|
|
258
|
+
check_validity
|
|
259
|
+
|
|
260
|
+
send_request FUNCTION_GET_CHIP_TYPE, [], '', 10, 'S'
|
|
245
261
|
end
|
|
246
262
|
|
|
247
263
|
# Sets the channel mapping for the connected LEDs.
|
|
@@ -259,28 +275,32 @@ module Tinkerforge
|
|
|
259
275
|
# making them 4-channel chips. Internally the brightness channel is the first
|
|
260
276
|
# channel, therefore one of the Wxyz channel mappings should be used. Then
|
|
261
277
|
# the W channel controls the brightness.
|
|
262
|
-
#
|
|
263
|
-
# The default value is BGR (36).
|
|
264
278
|
def set_channel_mapping(mapping)
|
|
265
|
-
|
|
279
|
+
check_validity
|
|
280
|
+
|
|
281
|
+
send_request FUNCTION_SET_CHANNEL_MAPPING, [mapping], 'C', 8, ''
|
|
266
282
|
end
|
|
267
283
|
|
|
268
284
|
# Returns the currently used channel mapping as set by BrickletLEDStripV2#set_channel_mapping.
|
|
269
285
|
def get_channel_mapping
|
|
270
|
-
|
|
286
|
+
check_validity
|
|
287
|
+
|
|
288
|
+
send_request FUNCTION_GET_CHANNEL_MAPPING, [], '', 9, 'C'
|
|
271
289
|
end
|
|
272
290
|
|
|
273
291
|
# Enables/disables the CALLBACK_FRAME_STARTED callback.
|
|
274
|
-
#
|
|
275
|
-
# By default the callback is enabled.
|
|
276
292
|
def set_frame_started_callback_configuration(enable)
|
|
277
|
-
|
|
293
|
+
check_validity
|
|
294
|
+
|
|
295
|
+
send_request FUNCTION_SET_FRAME_STARTED_CALLBACK_CONFIGURATION, [enable], '?', 8, ''
|
|
278
296
|
end
|
|
279
297
|
|
|
280
298
|
# Returns the configuration as set by
|
|
281
299
|
# BrickletLEDStripV2#set_frame_started_callback_configuration.
|
|
282
300
|
def get_frame_started_callback_configuration
|
|
283
|
-
|
|
301
|
+
check_validity
|
|
302
|
+
|
|
303
|
+
send_request FUNCTION_GET_FRAME_STARTED_CALLBACK_CONFIGURATION, [], '', 9, '?'
|
|
284
304
|
end
|
|
285
305
|
|
|
286
306
|
# Returns the error count for the communication between Brick and Bricklet.
|
|
@@ -295,7 +315,9 @@ module Tinkerforge
|
|
|
295
315
|
# The errors counts are for errors that occur on the Bricklet side. All
|
|
296
316
|
# Bricks have a similar function that returns the errors on the Brick side.
|
|
297
317
|
def get_spitfp_error_count
|
|
298
|
-
|
|
318
|
+
check_validity
|
|
319
|
+
|
|
320
|
+
send_request FUNCTION_GET_SPITFP_ERROR_COUNT, [], '', 24, 'L L L L'
|
|
299
321
|
end
|
|
300
322
|
|
|
301
323
|
# Sets the bootloader mode and returns the status after the requested
|
|
@@ -308,12 +330,16 @@ module Tinkerforge
|
|
|
308
330
|
# This function is used by Brick Viewer during flashing. It should not be
|
|
309
331
|
# necessary to call it in a normal user program.
|
|
310
332
|
def set_bootloader_mode(mode)
|
|
311
|
-
|
|
333
|
+
check_validity
|
|
334
|
+
|
|
335
|
+
send_request FUNCTION_SET_BOOTLOADER_MODE, [mode], 'C', 9, 'C'
|
|
312
336
|
end
|
|
313
337
|
|
|
314
338
|
# Returns the current bootloader mode, see BrickletLEDStripV2#set_bootloader_mode.
|
|
315
339
|
def get_bootloader_mode
|
|
316
|
-
|
|
340
|
+
check_validity
|
|
341
|
+
|
|
342
|
+
send_request FUNCTION_GET_BOOTLOADER_MODE, [], '', 9, 'C'
|
|
317
343
|
end
|
|
318
344
|
|
|
319
345
|
# Sets the firmware pointer for BrickletLEDStripV2#write_firmware. The pointer has
|
|
@@ -323,7 +349,9 @@ module Tinkerforge
|
|
|
323
349
|
# This function is used by Brick Viewer during flashing. It should not be
|
|
324
350
|
# necessary to call it in a normal user program.
|
|
325
351
|
def set_write_firmware_pointer(pointer)
|
|
326
|
-
|
|
352
|
+
check_validity
|
|
353
|
+
|
|
354
|
+
send_request FUNCTION_SET_WRITE_FIRMWARE_POINTER, [pointer], 'L', 8, ''
|
|
327
355
|
end
|
|
328
356
|
|
|
329
357
|
# Writes 64 Bytes of firmware at the position as written by
|
|
@@ -335,7 +363,9 @@ module Tinkerforge
|
|
|
335
363
|
# This function is used by Brick Viewer during flashing. It should not be
|
|
336
364
|
# necessary to call it in a normal user program.
|
|
337
365
|
def write_firmware(data)
|
|
338
|
-
|
|
366
|
+
check_validity
|
|
367
|
+
|
|
368
|
+
send_request FUNCTION_WRITE_FIRMWARE, [data], 'C64', 9, 'C'
|
|
339
369
|
end
|
|
340
370
|
|
|
341
371
|
# Sets the status LED configuration. By default the LED shows
|
|
@@ -346,22 +376,28 @@ module Tinkerforge
|
|
|
346
376
|
#
|
|
347
377
|
# If the Bricklet is in bootloader mode, the LED is will show heartbeat by default.
|
|
348
378
|
def set_status_led_config(config)
|
|
349
|
-
|
|
379
|
+
check_validity
|
|
380
|
+
|
|
381
|
+
send_request FUNCTION_SET_STATUS_LED_CONFIG, [config], 'C', 8, ''
|
|
350
382
|
end
|
|
351
383
|
|
|
352
384
|
# Returns the configuration as set by BrickletLEDStripV2#set_status_led_config
|
|
353
385
|
def get_status_led_config
|
|
354
|
-
|
|
386
|
+
check_validity
|
|
387
|
+
|
|
388
|
+
send_request FUNCTION_GET_STATUS_LED_CONFIG, [], '', 9, 'C'
|
|
355
389
|
end
|
|
356
390
|
|
|
357
|
-
# Returns the temperature
|
|
391
|
+
# Returns the temperature as measured inside the microcontroller. The
|
|
358
392
|
# value returned is not the ambient temperature!
|
|
359
393
|
#
|
|
360
394
|
# The temperature is only proportional to the real temperature and it has bad
|
|
361
395
|
# accuracy. Practically it is only useful as an indicator for
|
|
362
396
|
# temperature changes.
|
|
363
397
|
def get_chip_temperature
|
|
364
|
-
|
|
398
|
+
check_validity
|
|
399
|
+
|
|
400
|
+
send_request FUNCTION_GET_CHIP_TEMPERATURE, [], '', 10, 's'
|
|
365
401
|
end
|
|
366
402
|
|
|
367
403
|
# Calling this function will reset the Bricklet. All configurations
|
|
@@ -371,7 +407,9 @@ module Tinkerforge
|
|
|
371
407
|
# calling functions on the existing ones will result in
|
|
372
408
|
# undefined behavior!
|
|
373
409
|
def reset
|
|
374
|
-
|
|
410
|
+
check_validity
|
|
411
|
+
|
|
412
|
+
send_request FUNCTION_RESET, [], '', 8, ''
|
|
375
413
|
end
|
|
376
414
|
|
|
377
415
|
# Writes a new UID into flash. If you want to set a new UID
|
|
@@ -380,29 +418,36 @@ module Tinkerforge
|
|
|
380
418
|
#
|
|
381
419
|
# We recommend that you use Brick Viewer to change the UID.
|
|
382
420
|
def write_uid(uid)
|
|
383
|
-
|
|
421
|
+
check_validity
|
|
422
|
+
|
|
423
|
+
send_request FUNCTION_WRITE_UID, [uid], 'L', 8, ''
|
|
384
424
|
end
|
|
385
425
|
|
|
386
426
|
# Returns the current UID as an integer. Encode as
|
|
387
427
|
# Base58 to get the usual string version.
|
|
388
428
|
def read_uid
|
|
389
|
-
|
|
429
|
+
check_validity
|
|
430
|
+
|
|
431
|
+
send_request FUNCTION_READ_UID, [], '', 12, 'L'
|
|
390
432
|
end
|
|
391
433
|
|
|
392
434
|
# Returns the UID, the UID where the Bricklet is connected to,
|
|
393
435
|
# the position, the hardware and firmware version as well as the
|
|
394
436
|
# device identifier.
|
|
395
437
|
#
|
|
396
|
-
# The position can be 'a', 'b', 'c' or '
|
|
438
|
+
# The position can be 'a', 'b', 'c', 'd', 'e', 'f', 'g' or 'h' (Bricklet Port).
|
|
439
|
+
# The Raspberry Pi HAT (Zero) Brick is always at position 'i' and the Bricklet
|
|
440
|
+
# connected to an :ref:`Isolator Bricklet <isolator_bricklet>` is always as
|
|
441
|
+
# position 'z'.
|
|
397
442
|
#
|
|
398
443
|
# The device identifier numbers can be found :ref:`here <device_identifier>`.
|
|
399
444
|
# |device_identifier_constant|
|
|
400
445
|
def get_identity
|
|
401
|
-
send_request FUNCTION_GET_IDENTITY, [], '',
|
|
446
|
+
send_request FUNCTION_GET_IDENTITY, [], '', 33, 'Z8 Z8 k C3 C3 S'
|
|
402
447
|
end
|
|
403
448
|
|
|
404
449
|
# Sets the RGB(W) values for the LEDs starting from *index*.
|
|
405
|
-
# You can set at most 2048 RGB values or 1536 RGBW values.
|
|
450
|
+
# You can set at most 2048 RGB values or 1536 RGBW values (6144 byte each).
|
|
406
451
|
#
|
|
407
452
|
# To make the colors show correctly you need to configure the chip type
|
|
408
453
|
# (see BrickletLEDStripV2#set_chip_type) and a channel mapping (see BrickletLEDStripV2#set_channel_mapping)
|
|
@@ -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-04-07. #
|
|
4
4
|
# #
|
|
5
|
-
# Ruby Bindings Version 2.1.
|
|
5
|
+
# Ruby Bindings Version 2.1.25 #
|
|
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
|
# Measures reflectivity of a surface
|
|
14
16
|
class BrickletLine < Device
|
|
@@ -49,7 +51,7 @@ module Tinkerforge
|
|
|
49
51
|
# Creates an object with the unique device ID <tt>uid</tt> and adds it to
|
|
50
52
|
# the IP Connection <tt>ipcon</tt>.
|
|
51
53
|
def initialize(uid, ipcon)
|
|
52
|
-
super uid, ipcon
|
|
54
|
+
super uid, ipcon, DEVICE_IDENTIFIER, DEVICE_DISPLAY_NAME
|
|
53
55
|
|
|
54
56
|
@api_version = [2, 0, 0]
|
|
55
57
|
|
|
@@ -62,9 +64,10 @@ module Tinkerforge
|
|
|
62
64
|
@response_expected[FUNCTION_GET_DEBOUNCE_PERIOD] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
|
63
65
|
@response_expected[FUNCTION_GET_IDENTITY] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
|
64
66
|
|
|
65
|
-
@callback_formats[CALLBACK_REFLECTIVITY] = 'S'
|
|
66
|
-
@callback_formats[CALLBACK_REFLECTIVITY_REACHED] = 'S'
|
|
67
|
+
@callback_formats[CALLBACK_REFLECTIVITY] = [10, 'S']
|
|
68
|
+
@callback_formats[CALLBACK_REFLECTIVITY_REACHED] = [10, 'S']
|
|
67
69
|
|
|
70
|
+
@ipcon.add_device self
|
|
68
71
|
end
|
|
69
72
|
|
|
70
73
|
# Returns the currently measured reflectivity. The reflectivity is
|
|
@@ -77,7 +80,9 @@ module Tinkerforge
|
|
|
77
80
|
# to use the CALLBACK_REFLECTIVITY callback and set the period with
|
|
78
81
|
# BrickletLine#set_reflectivity_callback_period.
|
|
79
82
|
def get_reflectivity
|
|
80
|
-
|
|
83
|
+
check_validity
|
|
84
|
+
|
|
85
|
+
send_request FUNCTION_GET_REFLECTIVITY, [], '', 10, 'S'
|
|
81
86
|
end
|
|
82
87
|
|
|
83
88
|
# Sets the period with which the CALLBACK_REFLECTIVITY callback is triggered
|
|
@@ -86,12 +91,16 @@ module Tinkerforge
|
|
|
86
91
|
# The CALLBACK_REFLECTIVITY callback is only triggered if the reflectivity has
|
|
87
92
|
# changed since the last triggering.
|
|
88
93
|
def set_reflectivity_callback_period(period)
|
|
89
|
-
|
|
94
|
+
check_validity
|
|
95
|
+
|
|
96
|
+
send_request FUNCTION_SET_REFLECTIVITY_CALLBACK_PERIOD, [period], 'L', 8, ''
|
|
90
97
|
end
|
|
91
98
|
|
|
92
99
|
# Returns the period as set by BrickletLine#set_reflectivity_callback_period.
|
|
93
100
|
def get_reflectivity_callback_period
|
|
94
|
-
|
|
101
|
+
check_validity
|
|
102
|
+
|
|
103
|
+
send_request FUNCTION_GET_REFLECTIVITY_CALLBACK_PERIOD, [], '', 12, 'L'
|
|
95
104
|
end
|
|
96
105
|
|
|
97
106
|
# Sets the thresholds for the CALLBACK_REFLECTIVITY_REACHED callback.
|
|
@@ -106,12 +115,16 @@ module Tinkerforge
|
|
|
106
115
|
# "'<'", "Callback is triggered when the reflectivity is smaller than the min value (max is ignored)"
|
|
107
116
|
# "'>'", "Callback is triggered when the reflectivity is greater than the min value (max is ignored)"
|
|
108
117
|
def set_reflectivity_callback_threshold(option, min, max)
|
|
109
|
-
|
|
118
|
+
check_validity
|
|
119
|
+
|
|
120
|
+
send_request FUNCTION_SET_REFLECTIVITY_CALLBACK_THRESHOLD, [option, min, max], 'k S S', 8, ''
|
|
110
121
|
end
|
|
111
122
|
|
|
112
123
|
# Returns the threshold as set by BrickletLine#set_reflectivity_callback_threshold.
|
|
113
124
|
def get_reflectivity_callback_threshold
|
|
114
|
-
|
|
125
|
+
check_validity
|
|
126
|
+
|
|
127
|
+
send_request FUNCTION_GET_REFLECTIVITY_CALLBACK_THRESHOLD, [], '', 13, 'k S S'
|
|
115
128
|
end
|
|
116
129
|
|
|
117
130
|
# Sets the period with which the threshold callback
|
|
@@ -124,24 +137,31 @@ module Tinkerforge
|
|
|
124
137
|
#
|
|
125
138
|
# keeps being reached.
|
|
126
139
|
def set_debounce_period(debounce)
|
|
127
|
-
|
|
140
|
+
check_validity
|
|
141
|
+
|
|
142
|
+
send_request FUNCTION_SET_DEBOUNCE_PERIOD, [debounce], 'L', 8, ''
|
|
128
143
|
end
|
|
129
144
|
|
|
130
145
|
# Returns the debounce period as set by BrickletLine#set_debounce_period.
|
|
131
146
|
def get_debounce_period
|
|
132
|
-
|
|
147
|
+
check_validity
|
|
148
|
+
|
|
149
|
+
send_request FUNCTION_GET_DEBOUNCE_PERIOD, [], '', 12, 'L'
|
|
133
150
|
end
|
|
134
151
|
|
|
135
152
|
# Returns the UID, the UID where the Bricklet is connected to,
|
|
136
153
|
# the position, the hardware and firmware version as well as the
|
|
137
154
|
# device identifier.
|
|
138
155
|
#
|
|
139
|
-
# The position can be 'a', 'b', 'c' or '
|
|
156
|
+
# The position can be 'a', 'b', 'c', 'd', 'e', 'f', 'g' or 'h' (Bricklet Port).
|
|
157
|
+
# The Raspberry Pi HAT (Zero) Brick is always at position 'i' and the Bricklet
|
|
158
|
+
# connected to an :ref:`Isolator Bricklet <isolator_bricklet>` is always as
|
|
159
|
+
# position 'z'.
|
|
140
160
|
#
|
|
141
161
|
# The device identifier numbers can be found :ref:`here <device_identifier>`.
|
|
142
162
|
# |device_identifier_constant|
|
|
143
163
|
def get_identity
|
|
144
|
-
send_request FUNCTION_GET_IDENTITY, [], '',
|
|
164
|
+
send_request FUNCTION_GET_IDENTITY, [], '', 33, 'Z8 Z8 k C3 C3 S'
|
|
145
165
|
end
|
|
146
166
|
|
|
147
167
|
# 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-04-07. #
|
|
4
4
|
# #
|
|
5
|
-
# Ruby Bindings Version 2.1.
|
|
5
|
+
# Ruby Bindings Version 2.1.25 #
|
|
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
|
# 59mm linear potentiometer
|
|
14
16
|
class BrickletLinearPoti < Device
|
|
@@ -70,7 +72,7 @@ module Tinkerforge
|
|
|
70
72
|
# Creates an object with the unique device ID <tt>uid</tt> and adds it to
|
|
71
73
|
# the IP Connection <tt>ipcon</tt>.
|
|
72
74
|
def initialize(uid, ipcon)
|
|
73
|
-
super uid, ipcon
|
|
75
|
+
super uid, ipcon, DEVICE_IDENTIFIER, DEVICE_DISPLAY_NAME
|
|
74
76
|
|
|
75
77
|
@api_version = [2, 0, 1]
|
|
76
78
|
|
|
@@ -88,11 +90,12 @@ module Tinkerforge
|
|
|
88
90
|
@response_expected[FUNCTION_GET_DEBOUNCE_PERIOD] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
|
89
91
|
@response_expected[FUNCTION_GET_IDENTITY] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
|
90
92
|
|
|
91
|
-
@callback_formats[CALLBACK_POSITION] = 'S'
|
|
92
|
-
@callback_formats[CALLBACK_ANALOG_VALUE] = 'S'
|
|
93
|
-
@callback_formats[CALLBACK_POSITION_REACHED] = 'S'
|
|
94
|
-
@callback_formats[CALLBACK_ANALOG_VALUE_REACHED] = 'S'
|
|
93
|
+
@callback_formats[CALLBACK_POSITION] = [10, 'S']
|
|
94
|
+
@callback_formats[CALLBACK_ANALOG_VALUE] = [10, 'S']
|
|
95
|
+
@callback_formats[CALLBACK_POSITION_REACHED] = [10, 'S']
|
|
96
|
+
@callback_formats[CALLBACK_ANALOG_VALUE_REACHED] = [10, 'S']
|
|
95
97
|
|
|
98
|
+
@ipcon.add_device self
|
|
96
99
|
end
|
|
97
100
|
|
|
98
101
|
# Returns the position of the linear potentiometer. The value is
|
|
@@ -102,7 +105,9 @@ module Tinkerforge
|
|
|
102
105
|
# CALLBACK_POSITION callback and set the period with
|
|
103
106
|
# BrickletLinearPoti#set_position_callback_period.
|
|
104
107
|
def get_position
|
|
105
|
-
|
|
108
|
+
check_validity
|
|
109
|
+
|
|
110
|
+
send_request FUNCTION_GET_POSITION, [], '', 10, 'S'
|
|
106
111
|
end
|
|
107
112
|
|
|
108
113
|
# Returns the value as read by a 12-bit analog-to-digital converter.
|
|
@@ -117,7 +122,9 @@ module Tinkerforge
|
|
|
117
122
|
# CALLBACK_ANALOG_VALUE callback and set the period with
|
|
118
123
|
# BrickletLinearPoti#set_analog_value_callback_period.
|
|
119
124
|
def get_analog_value
|
|
120
|
-
|
|
125
|
+
check_validity
|
|
126
|
+
|
|
127
|
+
send_request FUNCTION_GET_ANALOG_VALUE, [], '', 10, 'S'
|
|
121
128
|
end
|
|
122
129
|
|
|
123
130
|
# Sets the period with which the CALLBACK_POSITION callback is triggered
|
|
@@ -126,12 +133,16 @@ module Tinkerforge
|
|
|
126
133
|
# The CALLBACK_POSITION callback is only triggered if the position has changed
|
|
127
134
|
# since the last triggering.
|
|
128
135
|
def set_position_callback_period(period)
|
|
129
|
-
|
|
136
|
+
check_validity
|
|
137
|
+
|
|
138
|
+
send_request FUNCTION_SET_POSITION_CALLBACK_PERIOD, [period], 'L', 8, ''
|
|
130
139
|
end
|
|
131
140
|
|
|
132
141
|
# Returns the period as set by BrickletLinearPoti#set_position_callback_period.
|
|
133
142
|
def get_position_callback_period
|
|
134
|
-
|
|
143
|
+
check_validity
|
|
144
|
+
|
|
145
|
+
send_request FUNCTION_GET_POSITION_CALLBACK_PERIOD, [], '', 12, 'L'
|
|
135
146
|
end
|
|
136
147
|
|
|
137
148
|
# Sets the period with which the CALLBACK_ANALOG_VALUE callback is triggered
|
|
@@ -140,12 +151,16 @@ module Tinkerforge
|
|
|
140
151
|
# The CALLBACK_ANALOG_VALUE callback is only triggered if the analog value has
|
|
141
152
|
# changed since the last triggering.
|
|
142
153
|
def set_analog_value_callback_period(period)
|
|
143
|
-
|
|
154
|
+
check_validity
|
|
155
|
+
|
|
156
|
+
send_request FUNCTION_SET_ANALOG_VALUE_CALLBACK_PERIOD, [period], 'L', 8, ''
|
|
144
157
|
end
|
|
145
158
|
|
|
146
159
|
# Returns the period as set by BrickletLinearPoti#set_analog_value_callback_period.
|
|
147
160
|
def get_analog_value_callback_period
|
|
148
|
-
|
|
161
|
+
check_validity
|
|
162
|
+
|
|
163
|
+
send_request FUNCTION_GET_ANALOG_VALUE_CALLBACK_PERIOD, [], '', 12, 'L'
|
|
149
164
|
end
|
|
150
165
|
|
|
151
166
|
# Sets the thresholds for the CALLBACK_POSITION_REACHED callback.
|
|
@@ -160,12 +175,16 @@ module Tinkerforge
|
|
|
160
175
|
# "'<'", "Callback is triggered when the position is smaller than the min value (max is ignored)"
|
|
161
176
|
# "'>'", "Callback is triggered when the position is greater than the min value (max is ignored)"
|
|
162
177
|
def set_position_callback_threshold(option, min, max)
|
|
163
|
-
|
|
178
|
+
check_validity
|
|
179
|
+
|
|
180
|
+
send_request FUNCTION_SET_POSITION_CALLBACK_THRESHOLD, [option, min, max], 'k S S', 8, ''
|
|
164
181
|
end
|
|
165
182
|
|
|
166
183
|
# Returns the threshold as set by BrickletLinearPoti#set_position_callback_threshold.
|
|
167
184
|
def get_position_callback_threshold
|
|
168
|
-
|
|
185
|
+
check_validity
|
|
186
|
+
|
|
187
|
+
send_request FUNCTION_GET_POSITION_CALLBACK_THRESHOLD, [], '', 13, 'k S S'
|
|
169
188
|
end
|
|
170
189
|
|
|
171
190
|
# Sets the thresholds for the CALLBACK_ANALOG_VALUE_REACHED callback.
|
|
@@ -180,12 +199,16 @@ module Tinkerforge
|
|
|
180
199
|
# "'<'", "Callback is triggered when the analog value is smaller than the min value (max is ignored)"
|
|
181
200
|
# "'>'", "Callback is triggered when the analog value is greater than the min value (max is ignored)"
|
|
182
201
|
def set_analog_value_callback_threshold(option, min, max)
|
|
183
|
-
|
|
202
|
+
check_validity
|
|
203
|
+
|
|
204
|
+
send_request FUNCTION_SET_ANALOG_VALUE_CALLBACK_THRESHOLD, [option, min, max], 'k S S', 8, ''
|
|
184
205
|
end
|
|
185
206
|
|
|
186
207
|
# Returns the threshold as set by BrickletLinearPoti#set_analog_value_callback_threshold.
|
|
187
208
|
def get_analog_value_callback_threshold
|
|
188
|
-
|
|
209
|
+
check_validity
|
|
210
|
+
|
|
211
|
+
send_request FUNCTION_GET_ANALOG_VALUE_CALLBACK_THRESHOLD, [], '', 13, 'k S S'
|
|
189
212
|
end
|
|
190
213
|
|
|
191
214
|
# Sets the period with which the threshold callbacks
|
|
@@ -200,24 +223,31 @@ module Tinkerforge
|
|
|
200
223
|
#
|
|
201
224
|
# keep being reached.
|
|
202
225
|
def set_debounce_period(debounce)
|
|
203
|
-
|
|
226
|
+
check_validity
|
|
227
|
+
|
|
228
|
+
send_request FUNCTION_SET_DEBOUNCE_PERIOD, [debounce], 'L', 8, ''
|
|
204
229
|
end
|
|
205
230
|
|
|
206
231
|
# Returns the debounce period as set by BrickletLinearPoti#set_debounce_period.
|
|
207
232
|
def get_debounce_period
|
|
208
|
-
|
|
233
|
+
check_validity
|
|
234
|
+
|
|
235
|
+
send_request FUNCTION_GET_DEBOUNCE_PERIOD, [], '', 12, 'L'
|
|
209
236
|
end
|
|
210
237
|
|
|
211
238
|
# Returns the UID, the UID where the Bricklet is connected to,
|
|
212
239
|
# the position, the hardware and firmware version as well as the
|
|
213
240
|
# device identifier.
|
|
214
241
|
#
|
|
215
|
-
# The position can be 'a', 'b', 'c' or '
|
|
242
|
+
# The position can be 'a', 'b', 'c', 'd', 'e', 'f', 'g' or 'h' (Bricklet Port).
|
|
243
|
+
# The Raspberry Pi HAT (Zero) Brick is always at position 'i' and the Bricklet
|
|
244
|
+
# connected to an :ref:`Isolator Bricklet <isolator_bricklet>` is always as
|
|
245
|
+
# position 'z'.
|
|
216
246
|
#
|
|
217
247
|
# The device identifier numbers can be found :ref:`here <device_identifier>`.
|
|
218
248
|
# |device_identifier_constant|
|
|
219
249
|
def get_identity
|
|
220
|
-
send_request FUNCTION_GET_IDENTITY, [], '',
|
|
250
|
+
send_request FUNCTION_GET_IDENTITY, [], '', 33, 'Z8 Z8 k C3 C3 S'
|
|
221
251
|
end
|
|
222
252
|
|
|
223
253
|
# Registers a callback with ID <tt>id</tt> to the block <tt>block</tt>.
|