tinkerforge 2.1.13 → 2.1.14
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/tinkerforge/brick_dc.rb +122 -34
- data/lib/tinkerforge/brick_imu.rb +135 -49
- data/lib/tinkerforge/brick_imu_v2.rb +137 -54
- data/lib/tinkerforge/brick_master.rb +206 -120
- data/lib/tinkerforge/brick_red.rb +64 -69
- data/lib/tinkerforge/brick_servo.rb +133 -44
- data/lib/tinkerforge/brick_silent_stepper.rb +151 -65
- data/lib/tinkerforge/brick_stepper.rb +139 -51
- data/lib/tinkerforge/bricklet_accelerometer.rb +17 -18
- data/lib/tinkerforge/bricklet_ambient_light.rb +16 -19
- data/lib/tinkerforge/bricklet_ambient_light_v2.rb +13 -14
- data/lib/tinkerforge/bricklet_analog_in.rb +20 -23
- data/lib/tinkerforge/bricklet_analog_in_v2.rb +18 -21
- data/lib/tinkerforge/bricklet_analog_out.rb +8 -7
- data/lib/tinkerforge/bricklet_analog_out_v2.rb +7 -6
- data/lib/tinkerforge/bricklet_barometer.rb +21 -24
- data/lib/tinkerforge/bricklet_can.rb +14 -14
- data/lib/tinkerforge/bricklet_co2.rb +11 -12
- data/lib/tinkerforge/bricklet_color.rb +22 -25
- data/lib/tinkerforge/bricklet_current12.rb +18 -22
- data/lib/tinkerforge/bricklet_current25.rb +18 -22
- data/lib/tinkerforge/bricklet_distance_ir.rb +18 -21
- data/lib/tinkerforge/bricklet_distance_us.rb +13 -14
- data/lib/tinkerforge/bricklet_dual_button.rb +8 -8
- data/lib/tinkerforge/bricklet_dual_relay.rb +9 -9
- data/lib/tinkerforge/bricklet_dust_detector.rb +13 -14
- data/lib/tinkerforge/bricklet_gps.rb +21 -25
- data/lib/tinkerforge/bricklet_gps_v2.rb +56 -41
- data/lib/tinkerforge/bricklet_hall_effect.rb +13 -13
- data/lib/tinkerforge/bricklet_humidity.rb +16 -19
- data/lib/tinkerforge/bricklet_industrial_analog_out.rb +13 -12
- data/lib/tinkerforge/bricklet_industrial_digital_in_4.rb +15 -15
- data/lib/tinkerforge/bricklet_industrial_digital_out_4.rb +12 -12
- data/lib/tinkerforge/bricklet_industrial_dual_0_20ma.rb +13 -14
- data/lib/tinkerforge/bricklet_industrial_dual_analog_in.rb +16 -17
- data/lib/tinkerforge/bricklet_industrial_quad_relay.rb +12 -12
- data/lib/tinkerforge/bricklet_io16.rb +18 -19
- data/lib/tinkerforge/bricklet_io4.rb +18 -19
- data/lib/tinkerforge/bricklet_joystick.rb +18 -23
- data/lib/tinkerforge/bricklet_laser_range_finder.rb +26 -29
- data/lib/tinkerforge/bricklet_lcd_16x2.rb +14 -15
- data/lib/tinkerforge/bricklet_lcd_20x4.rb +18 -19
- data/lib/tinkerforge/bricklet_led_strip.rb +20 -20
- data/lib/tinkerforge/bricklet_line.rb +11 -12
- data/lib/tinkerforge/bricklet_linear_poti.rb +16 -19
- data/lib/tinkerforge/bricklet_load_cell.rb +20 -21
- data/lib/tinkerforge/bricklet_moisture.rb +13 -14
- data/lib/tinkerforge/bricklet_motion_detector.rb +7 -8
- data/lib/tinkerforge/bricklet_multi_touch.rb +10 -10
- data/lib/tinkerforge/bricklet_nfc_rfid.rb +11 -11
- data/lib/tinkerforge/bricklet_oled_128x64.rb +10 -9
- data/lib/tinkerforge/bricklet_oled_64x48.rb +10 -9
- data/lib/tinkerforge/bricklet_piezo_buzzer.rb +6 -7
- data/lib/tinkerforge/bricklet_piezo_speaker.rb +7 -8
- data/lib/tinkerforge/bricklet_ptc.rb +23 -26
- data/lib/tinkerforge/bricklet_real_time_clock.rb +13 -14
- data/lib/tinkerforge/bricklet_remote_switch.rb +12 -12
- data/lib/tinkerforge/bricklet_rgb_led.rb +6 -5
- data/lib/tinkerforge/bricklet_rotary_encoder.rb +12 -15
- data/lib/tinkerforge/bricklet_rotary_poti.rb +16 -19
- data/lib/tinkerforge/bricklet_rs232.rb +12 -13
- data/lib/tinkerforge/bricklet_rs485.rb +1373 -0
- data/lib/tinkerforge/bricklet_segment_display_4x7.rb +8 -8
- data/lib/tinkerforge/bricklet_solid_state_relay.rb +8 -8
- data/lib/tinkerforge/bricklet_sound_intensity.rb +11 -12
- data/lib/tinkerforge/bricklet_temperature.rb +13 -14
- data/lib/tinkerforge/bricklet_temperature_ir.rb +18 -21
- data/lib/tinkerforge/bricklet_thermocouple.rb +14 -16
- data/lib/tinkerforge/bricklet_tilt.rb +8 -8
- data/lib/tinkerforge/bricklet_uv_light.rb +11 -12
- data/lib/tinkerforge/bricklet_voltage.rb +16 -19
- data/lib/tinkerforge/bricklet_voltage_current.rb +25 -30
- data/lib/tinkerforge/ip_connection.rb +207 -138
- data/lib/tinkerforge/version.rb +1 -1
- metadata +3 -2
@@ -1,8 +1,8 @@
|
|
1
1
|
# -*- ruby encoding: utf-8 -*-
|
2
2
|
#############################################################
|
3
|
-
# This file was automatically generated on 2017-
|
3
|
+
# This file was automatically generated on 2017-07-27. #
|
4
4
|
# #
|
5
|
-
# Ruby Bindings Version 2.1.
|
5
|
+
# Ruby Bindings Version 2.1.14 #
|
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 #
|
@@ -75,7 +75,12 @@ module Tinkerforge
|
|
75
75
|
FUNCTION_ENABLE_VELOCITY_REACHED_CALLBACK = 32 # :nodoc:
|
76
76
|
FUNCTION_DISABLE_VELOCITY_REACHED_CALLBACK = 33 # :nodoc:
|
77
77
|
FUNCTION_IS_VELOCITY_REACHED_CALLBACK_ENABLED = 34 # :nodoc:
|
78
|
+
FUNCTION_SET_SPITFP_BAUDRATE_CONFIG = 231 # :nodoc:
|
79
|
+
FUNCTION_GET_SPITFP_BAUDRATE_CONFIG = 232 # :nodoc:
|
78
80
|
FUNCTION_GET_SEND_TIMEOUT_COUNT = 233 # :nodoc:
|
81
|
+
FUNCTION_SET_SPITFP_BAUDRATE = 234 # :nodoc:
|
82
|
+
FUNCTION_GET_SPITFP_BAUDRATE = 235 # :nodoc:
|
83
|
+
FUNCTION_GET_SPITFP_ERROR_COUNT = 237 # :nodoc:
|
79
84
|
FUNCTION_ENABLE_STATUS_LED = 238 # :nodoc:
|
80
85
|
FUNCTION_DISABLE_STATUS_LED = 239 # :nodoc:
|
81
86
|
FUNCTION_IS_STATUS_LED_ENABLED = 240 # :nodoc:
|
@@ -125,16 +130,18 @@ module Tinkerforge
|
|
125
130
|
@response_expected[FUNCTION_GET_EXTERNAL_INPUT_VOLTAGE] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
126
131
|
@response_expected[FUNCTION_SET_MINIMUM_VOLTAGE] = RESPONSE_EXPECTED_TRUE
|
127
132
|
@response_expected[FUNCTION_GET_MINIMUM_VOLTAGE] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
128
|
-
@response_expected[CALLBACK_UNDER_VOLTAGE] = RESPONSE_EXPECTED_ALWAYS_FALSE
|
129
|
-
@response_expected[CALLBACK_POSITION_REACHED] = RESPONSE_EXPECTED_ALWAYS_FALSE
|
130
|
-
@response_expected[CALLBACK_VELOCITY_REACHED] = RESPONSE_EXPECTED_ALWAYS_FALSE
|
131
133
|
@response_expected[FUNCTION_ENABLE_POSITION_REACHED_CALLBACK] = RESPONSE_EXPECTED_TRUE
|
132
134
|
@response_expected[FUNCTION_DISABLE_POSITION_REACHED_CALLBACK] = RESPONSE_EXPECTED_TRUE
|
133
135
|
@response_expected[FUNCTION_IS_POSITION_REACHED_CALLBACK_ENABLED] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
134
136
|
@response_expected[FUNCTION_ENABLE_VELOCITY_REACHED_CALLBACK] = RESPONSE_EXPECTED_TRUE
|
135
137
|
@response_expected[FUNCTION_DISABLE_VELOCITY_REACHED_CALLBACK] = RESPONSE_EXPECTED_TRUE
|
136
138
|
@response_expected[FUNCTION_IS_VELOCITY_REACHED_CALLBACK_ENABLED] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
139
|
+
@response_expected[FUNCTION_SET_SPITFP_BAUDRATE_CONFIG] = RESPONSE_EXPECTED_FALSE
|
140
|
+
@response_expected[FUNCTION_GET_SPITFP_BAUDRATE_CONFIG] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
137
141
|
@response_expected[FUNCTION_GET_SEND_TIMEOUT_COUNT] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
142
|
+
@response_expected[FUNCTION_SET_SPITFP_BAUDRATE] = RESPONSE_EXPECTED_FALSE
|
143
|
+
@response_expected[FUNCTION_GET_SPITFP_BAUDRATE] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
144
|
+
@response_expected[FUNCTION_GET_SPITFP_ERROR_COUNT] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
138
145
|
@response_expected[FUNCTION_ENABLE_STATUS_LED] = RESPONSE_EXPECTED_FALSE
|
139
146
|
@response_expected[FUNCTION_DISABLE_STATUS_LED] = RESPONSE_EXPECTED_FALSE
|
140
147
|
@response_expected[FUNCTION_IS_STATUS_LED_ENABLED] = RESPONSE_EXPECTED_ALWAYS_TRUE
|
@@ -146,23 +153,24 @@ module Tinkerforge
|
|
146
153
|
@callback_formats[CALLBACK_UNDER_VOLTAGE] = 'S'
|
147
154
|
@callback_formats[CALLBACK_POSITION_REACHED] = 'C s'
|
148
155
|
@callback_formats[CALLBACK_VELOCITY_REACHED] = 'C s'
|
156
|
+
|
149
157
|
end
|
150
158
|
|
151
159
|
# Enables a servo (0 to 6). If a servo is enabled, the configured position,
|
152
160
|
# velocity, acceleration, etc. are applied immediately.
|
153
161
|
def enable(servo_num)
|
154
|
-
send_request
|
162
|
+
send_request FUNCTION_ENABLE, [servo_num], 'C', 0, ''
|
155
163
|
end
|
156
164
|
|
157
165
|
# Disables a servo (0 to 6). Disabled servos are not driven at all, i.e. a
|
158
166
|
# disabled servo will not hold its position if a load is applied.
|
159
167
|
def disable(servo_num)
|
160
|
-
send_request
|
168
|
+
send_request FUNCTION_DISABLE, [servo_num], 'C', 0, ''
|
161
169
|
end
|
162
170
|
|
163
171
|
# Returns *true* if the specified servo is enabled, *false* otherwise.
|
164
172
|
def is_enabled(servo_num)
|
165
|
-
send_request
|
173
|
+
send_request FUNCTION_IS_ENABLED, [servo_num], 'C', 1, '?'
|
166
174
|
end
|
167
175
|
|
168
176
|
# Sets the position in °/100 for the specified servo.
|
@@ -174,19 +182,19 @@ module Tinkerforge
|
|
174
182
|
# similar with the Servo Brick, you can also define lengths or speeds with
|
175
183
|
# BrickServo#set_degree.
|
176
184
|
def set_position(servo_num, position)
|
177
|
-
send_request
|
185
|
+
send_request FUNCTION_SET_POSITION, [servo_num, position], 'C s', 0, ''
|
178
186
|
end
|
179
187
|
|
180
188
|
# Returns the position of the specified servo as set by BrickServo#set_position.
|
181
189
|
def get_position(servo_num)
|
182
|
-
send_request
|
190
|
+
send_request FUNCTION_GET_POSITION, [servo_num], 'C', 2, 's'
|
183
191
|
end
|
184
192
|
|
185
193
|
# Returns the *current* position of the specified servo. This may not be the
|
186
194
|
# value of BrickServo#set_position if the servo is currently approaching a
|
187
195
|
# position goal.
|
188
196
|
def get_current_position(servo_num)
|
189
|
-
send_request
|
197
|
+
send_request FUNCTION_GET_CURRENT_POSITION, [servo_num], 'C', 2, 's'
|
190
198
|
end
|
191
199
|
|
192
200
|
# Sets the maximum velocity of the specified servo in °/100s. The velocity
|
@@ -197,19 +205,19 @@ module Tinkerforge
|
|
197
205
|
#
|
198
206
|
# The default value is 65535.
|
199
207
|
def set_velocity(servo_num, velocity)
|
200
|
-
send_request
|
208
|
+
send_request FUNCTION_SET_VELOCITY, [servo_num, velocity], 'C S', 0, ''
|
201
209
|
end
|
202
210
|
|
203
211
|
# Returns the velocity of the specified servo as set by BrickServo#set_velocity.
|
204
212
|
def get_velocity(servo_num)
|
205
|
-
send_request
|
213
|
+
send_request FUNCTION_GET_VELOCITY, [servo_num], 'C', 2, 'S'
|
206
214
|
end
|
207
215
|
|
208
216
|
# Returns the *current* velocity of the specified servo. This may not be the
|
209
217
|
# value of BrickServo#set_velocity if the servo is currently approaching a
|
210
218
|
# velocity goal.
|
211
219
|
def get_current_velocity(servo_num)
|
212
|
-
send_request
|
220
|
+
send_request FUNCTION_GET_CURRENT_VELOCITY, [servo_num], 'C', 2, 'S'
|
213
221
|
end
|
214
222
|
|
215
223
|
# Sets the acceleration of the specified servo in °/100s².
|
@@ -219,13 +227,13 @@ module Tinkerforge
|
|
219
227
|
#
|
220
228
|
# The default value is 65535.
|
221
229
|
def set_acceleration(servo_num, acceleration)
|
222
|
-
send_request
|
230
|
+
send_request FUNCTION_SET_ACCELERATION, [servo_num, acceleration], 'C S', 0, ''
|
223
231
|
end
|
224
232
|
|
225
233
|
# Returns the acceleration for the specified servo as set by
|
226
234
|
# BrickServo#set_acceleration.
|
227
235
|
def get_acceleration(servo_num)
|
228
|
-
send_request
|
236
|
+
send_request FUNCTION_GET_ACCELERATION, [servo_num], 'C', 2, 'S'
|
229
237
|
end
|
230
238
|
|
231
239
|
# Sets the output voltages with which the servos are driven in mV.
|
@@ -239,12 +247,12 @@ module Tinkerforge
|
|
239
247
|
#
|
240
248
|
# The default value is 5000.
|
241
249
|
def set_output_voltage(voltage)
|
242
|
-
send_request
|
250
|
+
send_request FUNCTION_SET_OUTPUT_VOLTAGE, [voltage], 'S', 0, ''
|
243
251
|
end
|
244
252
|
|
245
253
|
# Returns the output voltage as specified by BrickServo#set_output_voltage.
|
246
254
|
def get_output_voltage
|
247
|
-
send_request
|
255
|
+
send_request FUNCTION_GET_OUTPUT_VOLTAGE, [], '', 2, 'S'
|
248
256
|
end
|
249
257
|
|
250
258
|
# Sets the minimum and maximum pulse width of the specified servo in µs.
|
@@ -265,13 +273,13 @@ module Tinkerforge
|
|
265
273
|
# The default values are 1000µs (1ms) and 2000µs (2ms) for minimum and
|
266
274
|
# maximum pulse width.
|
267
275
|
def set_pulse_width(servo_num, min, max)
|
268
|
-
send_request
|
276
|
+
send_request FUNCTION_SET_PULSE_WIDTH, [servo_num, min, max], 'C S S', 0, ''
|
269
277
|
end
|
270
278
|
|
271
279
|
# Returns the minimum and maximum pulse width for the specified servo as set by
|
272
280
|
# BrickServo#set_pulse_width.
|
273
281
|
def get_pulse_width(servo_num)
|
274
|
-
send_request
|
282
|
+
send_request FUNCTION_GET_PULSE_WIDTH, [servo_num], 'C', 4, 'S S'
|
275
283
|
end
|
276
284
|
|
277
285
|
# Sets the minimum and maximum degree for the specified servo (by default
|
@@ -305,13 +313,13 @@ module Tinkerforge
|
|
305
313
|
#
|
306
314
|
# The default values are -9000 and 9000 for the minimum and maximum degree.
|
307
315
|
def set_degree(servo_num, min, max)
|
308
|
-
send_request
|
316
|
+
send_request FUNCTION_SET_DEGREE, [servo_num, min, max], 'C s s', 0, ''
|
309
317
|
end
|
310
318
|
|
311
319
|
# Returns the minimum and maximum degree for the specified servo as set by
|
312
320
|
# BrickServo#set_degree.
|
313
321
|
def get_degree(servo_num)
|
314
|
-
send_request
|
322
|
+
send_request FUNCTION_GET_DEGREE, [servo_num], 'C', 4, 's s'
|
315
323
|
end
|
316
324
|
|
317
325
|
# Sets the period of the specified servo in µs.
|
@@ -330,29 +338,29 @@ module Tinkerforge
|
|
330
338
|
#
|
331
339
|
# The default value is 19.5ms (19500µs).
|
332
340
|
def set_period(servo_num, period)
|
333
|
-
send_request
|
341
|
+
send_request FUNCTION_SET_PERIOD, [servo_num, period], 'C S', 0, ''
|
334
342
|
end
|
335
343
|
|
336
344
|
# Returns the period for the specified servo as set by BrickServo#set_period.
|
337
345
|
def get_period(servo_num)
|
338
|
-
send_request
|
346
|
+
send_request FUNCTION_GET_PERIOD, [servo_num], 'C', 2, 'S'
|
339
347
|
end
|
340
348
|
|
341
349
|
# Returns the current consumption of the specified servo in mA.
|
342
350
|
def get_servo_current(servo_num)
|
343
|
-
send_request
|
351
|
+
send_request FUNCTION_GET_SERVO_CURRENT, [servo_num], 'C', 2, 'S'
|
344
352
|
end
|
345
353
|
|
346
354
|
# Returns the current consumption of all servos together in mA.
|
347
355
|
def get_overall_current
|
348
|
-
send_request
|
356
|
+
send_request FUNCTION_GET_OVERALL_CURRENT, [], '', 2, 'S'
|
349
357
|
end
|
350
358
|
|
351
359
|
# Returns the stack input voltage in mV. The stack input voltage is the
|
352
360
|
# voltage that is supplied via the stack, i.e. it is given by a
|
353
361
|
# Step-Down or Step-Up Power Supply.
|
354
362
|
def get_stack_input_voltage
|
355
|
-
send_request
|
363
|
+
send_request FUNCTION_GET_STACK_INPUT_VOLTAGE, [], '', 2, 'S'
|
356
364
|
end
|
357
365
|
|
358
366
|
# Returns the external input voltage in mV. The external input voltage is
|
@@ -368,7 +376,7 @@ module Tinkerforge
|
|
368
376
|
# the external connection, it will immediately be driven by the high
|
369
377
|
# stack voltage
|
370
378
|
def get_external_input_voltage
|
371
|
-
send_request
|
379
|
+
send_request FUNCTION_GET_EXTERNAL_INPUT_VOLTAGE, [], '', 2, 'S'
|
372
380
|
end
|
373
381
|
|
374
382
|
# Sets the minimum voltage in mV, below which the CALLBACK_UNDER_VOLTAGE callback
|
@@ -379,12 +387,12 @@ module Tinkerforge
|
|
379
387
|
#
|
380
388
|
# The default value is 5V (5000mV).
|
381
389
|
def set_minimum_voltage(voltage)
|
382
|
-
send_request
|
390
|
+
send_request FUNCTION_SET_MINIMUM_VOLTAGE, [voltage], 'S', 0, ''
|
383
391
|
end
|
384
392
|
|
385
393
|
# Returns the minimum voltage as set by BrickServo#set_minimum_voltage
|
386
394
|
def get_minimum_voltage
|
387
|
-
send_request
|
395
|
+
send_request FUNCTION_GET_MINIMUM_VOLTAGE, [], '', 2, 'S'
|
388
396
|
end
|
389
397
|
|
390
398
|
# Enables the CALLBACK_POSITION_REACHED callback.
|
@@ -393,7 +401,7 @@ module Tinkerforge
|
|
393
401
|
#
|
394
402
|
# .. versionadded:: 2.0.1$nbsp;(Firmware)
|
395
403
|
def enable_position_reached_callback
|
396
|
-
send_request
|
404
|
+
send_request FUNCTION_ENABLE_POSITION_REACHED_CALLBACK, [], '', 0, ''
|
397
405
|
end
|
398
406
|
|
399
407
|
# Disables the CALLBACK_POSITION_REACHED callback.
|
@@ -402,14 +410,14 @@ module Tinkerforge
|
|
402
410
|
#
|
403
411
|
# .. versionadded:: 2.0.1$nbsp;(Firmware)
|
404
412
|
def disable_position_reached_callback
|
405
|
-
send_request
|
413
|
+
send_request FUNCTION_DISABLE_POSITION_REACHED_CALLBACK, [], '', 0, ''
|
406
414
|
end
|
407
415
|
|
408
416
|
# Returns *true* if CALLBACK_POSITION_REACHED callback is enabled, *false* otherwise.
|
409
417
|
#
|
410
418
|
# .. versionadded:: 2.0.1$nbsp;(Firmware)
|
411
419
|
def is_position_reached_callback_enabled
|
412
|
-
send_request
|
420
|
+
send_request FUNCTION_IS_POSITION_REACHED_CALLBACK_ENABLED, [], '', 1, '?'
|
413
421
|
end
|
414
422
|
|
415
423
|
# Enables the CALLBACK_VELOCITY_REACHED callback.
|
@@ -418,7 +426,7 @@ module Tinkerforge
|
|
418
426
|
#
|
419
427
|
# .. versionadded:: 2.0.1$nbsp;(Firmware)
|
420
428
|
def enable_velocity_reached_callback
|
421
|
-
send_request
|
429
|
+
send_request FUNCTION_ENABLE_VELOCITY_REACHED_CALLBACK, [], '', 0, ''
|
422
430
|
end
|
423
431
|
|
424
432
|
# Disables the CALLBACK_VELOCITY_REACHED callback.
|
@@ -427,14 +435,49 @@ module Tinkerforge
|
|
427
435
|
#
|
428
436
|
# .. versionadded:: 2.0.1$nbsp;(Firmware)
|
429
437
|
def disable_velocity_reached_callback
|
430
|
-
send_request
|
438
|
+
send_request FUNCTION_DISABLE_VELOCITY_REACHED_CALLBACK, [], '', 0, ''
|
431
439
|
end
|
432
440
|
|
433
441
|
# Returns *true* if CALLBACK_VELOCITY_REACHED callback is enabled, *false* otherwise.
|
434
442
|
#
|
435
443
|
# .. versionadded:: 2.0.1$nbsp;(Firmware)
|
436
444
|
def is_velocity_reached_callback_enabled
|
437
|
-
send_request
|
445
|
+
send_request FUNCTION_IS_VELOCITY_REACHED_CALLBACK_ENABLED, [], '', 1, '?'
|
446
|
+
end
|
447
|
+
|
448
|
+
# The SPITF protocol can be used with a dynamic baudrate. If the dynamic baudrate is
|
449
|
+
# enabled, the Brick will try to adapt the baudrate for the communication
|
450
|
+
# between Bricks and Bricklets according to the amount of data that is transferred.
|
451
|
+
#
|
452
|
+
# The baudrate will be increased exponetially if lots of data is send/receieved and
|
453
|
+
# decreased linearly if little data is send/received.
|
454
|
+
#
|
455
|
+
# This lowers the baudrate in applications where little data is transferred (e.g.
|
456
|
+
# a weather station) and increases the robustness. If there is lots of data to transfer
|
457
|
+
# (e.g. Thermal Imaging Bricklet) it automatically increases the baudrate as needed.
|
458
|
+
#
|
459
|
+
# In cases where some data has to transferred as fast as possible every few seconds
|
460
|
+
# (e.g. RS485 Bricklet with a high baudrate but small payload) you may want to turn
|
461
|
+
# the dynamic baudrate off to get the highest possible performance.
|
462
|
+
#
|
463
|
+
# The maximum value of the baudrate can be set per port with the function
|
464
|
+
# BrickServo#set_spitfp_baudrate. If the dynamic baudrate is disabled, the baudrate
|
465
|
+
# as set by BrickServo#set_spitfp_baudrate will be used statically.
|
466
|
+
#
|
467
|
+
# The minimum dynamic baudrate has a value range of 400000 to 2000000 baud.
|
468
|
+
#
|
469
|
+
# By default dynamic baudrate is enabled and the minimum dynamic baudrate is 400000.
|
470
|
+
#
|
471
|
+
# .. versionadded:: 2.3.4$nbsp;(Firmware)
|
472
|
+
def set_spitfp_baudrate_config(enable_dynamic_baudrate, minimum_dynamic_baudrate)
|
473
|
+
send_request FUNCTION_SET_SPITFP_BAUDRATE_CONFIG, [enable_dynamic_baudrate, minimum_dynamic_baudrate], '? L', 0, ''
|
474
|
+
end
|
475
|
+
|
476
|
+
# Returns the baudrate config, see BrickServo#set_spitfp_baudrate_config.
|
477
|
+
#
|
478
|
+
# .. versionadded:: 2.3.4$nbsp;(Firmware)
|
479
|
+
def get_spitfp_baudrate_config
|
480
|
+
send_request FUNCTION_GET_SPITFP_BAUDRATE_CONFIG, [], '', 5, '? L'
|
438
481
|
end
|
439
482
|
|
440
483
|
# Returns the timeout count for the different communication methods.
|
@@ -446,7 +489,53 @@ module Tinkerforge
|
|
446
489
|
#
|
447
490
|
# .. versionadded:: 2.3.2$nbsp;(Firmware)
|
448
491
|
def get_send_timeout_count(communication_method)
|
449
|
-
send_request
|
492
|
+
send_request FUNCTION_GET_SEND_TIMEOUT_COUNT, [communication_method], 'C', 4, 'L'
|
493
|
+
end
|
494
|
+
|
495
|
+
# Sets the baudrate for a specific Bricklet port ('a' - 'd'). The
|
496
|
+
# baudrate can be in the range 400000 to 2000000.
|
497
|
+
#
|
498
|
+
# If you want to increase the throughput of Bricklets you can increase
|
499
|
+
# the baudrate. If you get a high error count because of high
|
500
|
+
# interference (see BrickServo#get_spitfp_error_count) you can decrease the
|
501
|
+
# baudrate.
|
502
|
+
#
|
503
|
+
# If the dynamic baudrate feature is enabled, the baudrate set by this
|
504
|
+
# function corresponds to the maximum baudrate (see BrickServo#set_spitfp_baudrate_config).
|
505
|
+
#
|
506
|
+
# Regulatory testing is done with the default baudrate. If CE compatability
|
507
|
+
# or similar is necessary in you applications we recommend to not change
|
508
|
+
# the baudrate.
|
509
|
+
#
|
510
|
+
# The default baudrate for all ports is 1400000.
|
511
|
+
#
|
512
|
+
# .. versionadded:: 2.3.2$nbsp;(Firmware)
|
513
|
+
def set_spitfp_baudrate(bricklet_port, baudrate)
|
514
|
+
send_request FUNCTION_SET_SPITFP_BAUDRATE, [bricklet_port, baudrate], 'k L', 0, ''
|
515
|
+
end
|
516
|
+
|
517
|
+
# Returns the baudrate for a given Bricklet port, see BrickServo#set_spitfp_baudrate.
|
518
|
+
#
|
519
|
+
# .. versionadded:: 2.3.2$nbsp;(Firmware)
|
520
|
+
def get_spitfp_baudrate(bricklet_port)
|
521
|
+
send_request FUNCTION_GET_SPITFP_BAUDRATE, [bricklet_port], 'k', 4, 'L'
|
522
|
+
end
|
523
|
+
|
524
|
+
# Returns the error count for the communication between Brick and Bricklet.
|
525
|
+
#
|
526
|
+
# The errors are divided into
|
527
|
+
#
|
528
|
+
# * ACK checksum errors,
|
529
|
+
# * message checksum errors,
|
530
|
+
# * frameing errors and
|
531
|
+
# * overflow errors.
|
532
|
+
#
|
533
|
+
# The errors counts are for errors that occur on the Brick side. All
|
534
|
+
# Bricklets have a similar function that returns the errors on the Bricklet side.
|
535
|
+
#
|
536
|
+
# .. versionadded:: 2.3.2$nbsp;(Firmware)
|
537
|
+
def get_spitfp_error_count(bricklet_port)
|
538
|
+
send_request FUNCTION_GET_SPITFP_ERROR_COUNT, [bricklet_port], 'k', 16, 'L L L L'
|
450
539
|
end
|
451
540
|
|
452
541
|
# Enables the status LED.
|
@@ -458,7 +547,7 @@ module Tinkerforge
|
|
458
547
|
#
|
459
548
|
# .. versionadded:: 2.3.1$nbsp;(Firmware)
|
460
549
|
def enable_status_led
|
461
|
-
send_request
|
550
|
+
send_request FUNCTION_ENABLE_STATUS_LED, [], '', 0, ''
|
462
551
|
end
|
463
552
|
|
464
553
|
# Disables the status LED.
|
@@ -470,14 +559,14 @@ module Tinkerforge
|
|
470
559
|
#
|
471
560
|
# .. versionadded:: 2.3.1$nbsp;(Firmware)
|
472
561
|
def disable_status_led
|
473
|
-
send_request
|
562
|
+
send_request FUNCTION_DISABLE_STATUS_LED, [], '', 0, ''
|
474
563
|
end
|
475
564
|
|
476
565
|
# Returns *true* if the status LED is enabled, *false* otherwise.
|
477
566
|
#
|
478
567
|
# .. versionadded:: 2.3.1$nbsp;(Firmware)
|
479
568
|
def is_status_led_enabled
|
480
|
-
send_request
|
569
|
+
send_request FUNCTION_IS_STATUS_LED_ENABLED, [], '', 1, '?'
|
481
570
|
end
|
482
571
|
|
483
572
|
# Returns the firmware and protocol version and the name of the Bricklet for a
|
@@ -486,7 +575,7 @@ module Tinkerforge
|
|
486
575
|
# This functions sole purpose is to allow automatic flashing of v1.x.y Bricklet
|
487
576
|
# plugins.
|
488
577
|
def get_protocol1_bricklet_name(port)
|
489
|
-
send_request
|
578
|
+
send_request FUNCTION_GET_PROTOCOL1_BRICKLET_NAME, [port], 'k', 44, 'C C3 Z40'
|
490
579
|
end
|
491
580
|
|
492
581
|
# Returns the temperature in °C/10 as measured inside the microcontroller. The
|
@@ -496,7 +585,7 @@ module Tinkerforge
|
|
496
585
|
# accuracy of +-15%. Practically it is only useful as an indicator for
|
497
586
|
# temperature changes.
|
498
587
|
def get_chip_temperature
|
499
|
-
send_request
|
588
|
+
send_request FUNCTION_GET_CHIP_TEMPERATURE, [], '', 2, 's'
|
500
589
|
end
|
501
590
|
|
502
591
|
# Calling this function will reset the Brick. Calling this function
|
@@ -506,7 +595,7 @@ module Tinkerforge
|
|
506
595
|
# calling functions on the existing ones will result in
|
507
596
|
# undefined behavior!
|
508
597
|
def reset
|
509
|
-
send_request
|
598
|
+
send_request FUNCTION_RESET, [], '', 0, ''
|
510
599
|
end
|
511
600
|
|
512
601
|
# Returns the UID, the UID where the Brick is connected to,
|
@@ -518,7 +607,7 @@ module Tinkerforge
|
|
518
607
|
# The device identifier numbers can be found :ref:`here <device_identifier>`.
|
519
608
|
# |device_identifier_constant|
|
520
609
|
def get_identity
|
521
|
-
send_request
|
610
|
+
send_request FUNCTION_GET_IDENTITY, [], '', 25, 'Z8 Z8 k C3 C3 S'
|
522
611
|
end
|
523
612
|
|
524
613
|
# Registers a callback with ID <tt>id</tt> to the block <tt>block</tt>.
|