phidgets 0.1.3 → 1.0.0

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.
Files changed (146) hide show
  1. checksums.yaml +4 -4
  2. data/History.txt +3 -0
  3. data/README.rdoc +32 -43
  4. data/Rakefile +4 -2
  5. data/bin/phidget +18 -72
  6. data/ext/phidgets/extconf.rb +5 -8
  7. data/ext/phidgets/phidgets.c +708 -173
  8. data/ext/phidgets/phidgets.h +54 -35
  9. data/ext/phidgets/phidgets_accelerometer.c +193 -109
  10. data/ext/phidgets/phidgets_bldc_motor.c +529 -0
  11. data/ext/phidgets/phidgets_capacitive_touch.c +302 -0
  12. data/ext/phidgets/phidgets_common.c +570 -315
  13. data/ext/phidgets/phidgets_current_input.c +229 -0
  14. data/ext/phidgets/phidgets_dc_motor.c +562 -0
  15. data/ext/phidgets/phidgets_dictionary.c +154 -213
  16. data/ext/phidgets/phidgets_digital_input.c +127 -0
  17. data/ext/phidgets/phidgets_digital_output.c +288 -0
  18. data/ext/phidgets/phidgets_distance_sensor.c +295 -0
  19. data/ext/phidgets/phidgets_encoder.c +211 -192
  20. data/ext/phidgets/phidgets_frequency_counter.c +310 -177
  21. data/ext/phidgets/phidgets_gps.c +226 -164
  22. data/ext/phidgets/phidgets_gyroscope.c +195 -0
  23. data/ext/phidgets/phidgets_hub.c +39 -0
  24. data/ext/phidgets/phidgets_humidity_sensor.c +200 -0
  25. data/ext/phidgets/phidgets_ir.c +211 -171
  26. data/ext/phidgets/phidgets_lcd.c +512 -0
  27. data/ext/phidgets/phidgets_light_sensor.c +200 -0
  28. data/ext/phidgets/phidgets_log.c +263 -0
  29. data/ext/phidgets/phidgets_magnetometer.c +279 -0
  30. data/ext/phidgets/phidgets_manager.c +86 -297
  31. data/ext/phidgets/phidgets_motor_position_controller.c +787 -0
  32. data/ext/phidgets/phidgets_phsensor.c +200 -152
  33. data/ext/phidgets/phidgets_power_guard.c +144 -0
  34. data/ext/phidgets/phidgets_pressure_sensor.c +200 -0
  35. data/ext/phidgets/phidgets_rc_servo.c +672 -0
  36. data/ext/phidgets/phidgets_resistance_input.c +227 -0
  37. data/ext/phidgets/phidgets_rfid.c +107 -221
  38. data/ext/phidgets/phidgets_sound_sensor.c +284 -0
  39. data/ext/phidgets/phidgets_spatial.c +124 -318
  40. data/ext/phidgets/phidgets_stepper.c +457 -430
  41. data/ext/phidgets/phidgets_temp_sensor.c +223 -228
  42. data/ext/phidgets/phidgets_voltage_input.c +428 -0
  43. data/ext/phidgets/phidgets_voltage_output.c +167 -0
  44. data/ext/phidgets/phidgets_voltage_ratio_input.c +435 -0
  45. data/lib/phidgets.rb +21 -14
  46. data/lib/phidgets/accelerometer.rb +11 -15
  47. data/lib/phidgets/bldc_motor.rb +45 -0
  48. data/lib/phidgets/capacitive_touch.rb +33 -0
  49. data/lib/phidgets/common.rb +40 -69
  50. data/lib/phidgets/current_input.rb +21 -0
  51. data/lib/phidgets/dc_motor.rb +45 -0
  52. data/lib/phidgets/dictionary.rb +30 -39
  53. data/lib/phidgets/digital_input.rb +21 -0
  54. data/lib/phidgets/digital_output.rb +56 -0
  55. data/lib/phidgets/distance_sensor.rb +33 -0
  56. data/lib/phidgets/encoder.rb +1 -29
  57. data/lib/phidgets/frequency_counter.rb +23 -14
  58. data/lib/phidgets/gps.rb +34 -26
  59. data/lib/phidgets/gyroscope.rb +21 -0
  60. data/lib/phidgets/humidity_sensor.rb +21 -0
  61. data/lib/phidgets/ir.rb +34 -39
  62. data/lib/phidgets/light_sensor.rb +21 -0
  63. data/lib/phidgets/magnetometer.rb +21 -0
  64. data/lib/phidgets/manager.rb +18 -66
  65. data/lib/phidgets/motor_position_controller.rb +45 -0
  66. data/lib/phidgets/ph_sensor.rb +2 -6
  67. data/lib/phidgets/pressure_sensor.rb +21 -0
  68. data/lib/phidgets/rc_servo.rb +58 -0
  69. data/lib/phidgets/resistance_input.rb +21 -0
  70. data/lib/phidgets/rfid.rb +22 -38
  71. data/lib/phidgets/sound_sensor.rb +21 -0
  72. data/lib/phidgets/spatial.rb +11 -15
  73. data/lib/phidgets/stepper.rb +48 -50
  74. data/lib/phidgets/temperature_sensor.rb +11 -15
  75. data/lib/phidgets/version.rb +5 -0
  76. data/lib/phidgets/voltage_input.rb +34 -0
  77. data/lib/phidgets/voltage_output.rb +23 -0
  78. data/lib/phidgets/voltage_ratio_input.rb +34 -0
  79. data/phidgets.gemspec +3 -22
  80. data/test/test_accelerometer.rb +42 -23
  81. data/test/test_bldc_motor.rb +134 -0
  82. data/test/test_capacitive_touch.rb +82 -0
  83. data/test/test_common.rb +125 -108
  84. data/test/test_current_input.rb +62 -0
  85. data/test/test_dc_motor.rb +146 -0
  86. data/test/test_dictionary.rb +22 -54
  87. data/test/test_digital_input.rb +30 -0
  88. data/test/test_digital_output.rb +70 -0
  89. data/test/test_distance_sensor.rb +76 -0
  90. data/test/test_encoder.rb +45 -38
  91. data/test/test_frequency_counter.rb +71 -36
  92. data/test/test_gps.rb +29 -38
  93. data/test/test_gyroscope.rb +54 -0
  94. data/test/test_helper.rb +0 -1
  95. data/test/test_hub.rb +14 -0
  96. data/test/test_humidity_sensor.rb +58 -0
  97. data/test/test_ir.rb +34 -34
  98. data/test/test_lcd.rb +146 -0
  99. data/test/test_light_sensor.rb +58 -0
  100. data/test/test_magnetometer.rb +78 -0
  101. data/test/test_manager.rb +10 -79
  102. data/test/test_motor_control.rb +146 -108
  103. data/test/test_phidgets.rb +2 -14
  104. data/test/test_phsensor.rb +46 -34
  105. data/test/test_power_guard.rb +42 -0
  106. data/test/test_pressure_sensor.rb +58 -0
  107. data/test/test_rc_servo.rb +174 -0
  108. data/test/test_resistance_input.rb +66 -0
  109. data/test/test_rfid.rb +15 -54
  110. data/test/test_sound_sensor.rb +78 -0
  111. data/test/test_spatial.rb +19 -85
  112. data/test/test_stepper.rb +89 -98
  113. data/test/test_temp_sensor.rb +42 -47
  114. data/test/test_voltage_input.rb +102 -0
  115. data/test/test_voltage_output.rb +46 -0
  116. data/test/test_voltage_ratio_input.rb +102 -0
  117. metadata +72 -89
  118. data/ext/phidgets/phidgets_advanced_servo.c +0 -567
  119. data/ext/phidgets/phidgets_analog.c +0 -139
  120. data/ext/phidgets/phidgets_bridge.c +0 -263
  121. data/ext/phidgets/phidgets_interface_kit.c +0 -340
  122. data/ext/phidgets/phidgets_led.c +0 -178
  123. data/ext/phidgets/phidgets_motor_control.c +0 -642
  124. data/ext/phidgets/phidgets_servo.c +0 -276
  125. data/ext/phidgets/phidgets_text_lcd.c +0 -381
  126. data/ext/phidgets/phidgets_text_led.c +0 -107
  127. data/ext/phidgets/phidgets_weight_sensor.c +0 -113
  128. data/lib/phidgets/advanced_servo.rb +0 -49
  129. data/lib/phidgets/analog.rb +0 -8
  130. data/lib/phidgets/bridge.rb +0 -25
  131. data/lib/phidgets/interfacekit.rb +0 -49
  132. data/lib/phidgets/led.rb +0 -8
  133. data/lib/phidgets/motor_control.rb +0 -110
  134. data/lib/phidgets/servo.rb +0 -23
  135. data/lib/phidgets/text_lcd.rb +0 -8
  136. data/lib/phidgets/text_led.rb +0 -8
  137. data/lib/phidgets/weight_sensor.rb +0 -25
  138. data/test/test_advanced_servo.rb +0 -152
  139. data/test/test_analog.rb +0 -45
  140. data/test/test_bridge.rb +0 -77
  141. data/test/test_interfacekit.rb +0 -97
  142. data/test/test_led.rb +0 -55
  143. data/test/test_servo.rb +0 -67
  144. data/test/test_text_lcd.rb +0 -115
  145. data/test/test_text_led.rb +0 -35
  146. data/test/test_weight_sensor.rb +0 -32
@@ -1,67 +0,0 @@
1
- require File.dirname(__FILE__) + '/test_helper.rb'
2
-
3
- class TestPhidgetsServo < Test::Unit::TestCase
4
-
5
- def test_create
6
- assert_nothing_raised {Phidgets::Servo.new}
7
- end
8
-
9
- def test_get_motor_count
10
- servo = Phidgets::Servo.new
11
- assert_raise(Phidgets::Error::NotAttached) {servo.motor_count}
12
- end
13
-
14
- def test_get_position
15
- servo = Phidgets::Servo.new
16
- assert_raise(Phidgets::Error::NotAttached) {servo.position 1}
17
- end
18
-
19
- def test_get_position_min
20
- servo = Phidgets::Servo.new
21
- assert_raise(Phidgets::Error::NotAttached) {servo.position_min 1}
22
- end
23
-
24
- def test_get_position_max
25
- servo = Phidgets::Servo.new
26
- assert_raise(Phidgets::Error::NotAttached) {servo.position_max 1}
27
- end
28
-
29
- def test_set_position
30
- servo = Phidgets::Servo.new
31
- assert_raise(Phidgets::Error::NotAttached) {servo.set_position 1, 2.14}
32
- end
33
-
34
- def test_get_engaged
35
- servo = Phidgets::Servo.new
36
- assert_raise(Phidgets::Error::NotAttached) {servo.engaged? 1}
37
- end
38
-
39
- def test_set_engaged
40
- servo = Phidgets::Servo.new
41
- assert_raise(Phidgets::Error::NotAttached) {servo.set_engaged 1, true}
42
- end
43
-
44
- def test_get_servo_type
45
- servo = Phidgets::Servo.new
46
- assert_raise(Phidgets::Error::NotAttached) {servo.servo_type 1}
47
- end
48
-
49
- def test_set_servo_type
50
- servo = Phidgets::Servo.new
51
- assert_raise(Phidgets::Error::NotAttached) {servo.set_servo_type 1, Phidgets::Servo::TOWERPRO_MG90}
52
- end
53
-
54
- def test_set_servo_parameters
55
- servo = Phidgets::Servo.new
56
- assert_raise(Phidgets::Error::NotAttached) {servo.set_servo_parameters 1, 0.1, 1.5, 98.5}
57
- end
58
-
59
- unless RUBY_VERSION < '1.9.0'
60
- def test_set_on_position_change
61
- servo = Phidgets::Servo.new
62
- assert_nothing_raised {servo.on_position_change {puts 'hello'}}
63
- end
64
- end
65
-
66
- end
67
-
@@ -1,115 +0,0 @@
1
- require File.dirname(__FILE__) + '/test_helper.rb'
2
-
3
- class TestPhidgetsTextLCD < Test::Unit::TestCase
4
-
5
- def test_create
6
- assert_nothing_raised {Phidgets::TextLCD.new}
7
- end
8
-
9
- def test_get_row_count
10
- lcd = Phidgets::TextLCD.new
11
- assert_raise(Phidgets::Error::NotAttached) {lcd.row_count}
12
- end
13
-
14
- def test_get_column_count
15
- lcd = Phidgets::TextLCD.new
16
- assert_raise(Phidgets::Error::NotAttached) {lcd.column_count}
17
- end
18
-
19
- def test_get_backlight
20
- lcd = Phidgets::TextLCD.new
21
- assert_raise(Phidgets::Error::NotAttached) {lcd.backlight?}
22
- end
23
-
24
- def test_set_backlight
25
- lcd = Phidgets::TextLCD.new
26
- assert_raise(Phidgets::Error::NotAttached) {lcd.backlight = true}
27
- end
28
-
29
- def test_get_brightness
30
- lcd = Phidgets::TextLCD.new
31
- assert_raise(Phidgets::Error::NotAttached) {lcd.brightness}
32
- end
33
-
34
- def test_set_brightness
35
- lcd = Phidgets::TextLCD.new
36
- assert_raise(Phidgets::Error::NotAttached) {lcd.brightness = 55}
37
- end
38
-
39
- def test_get_contrast
40
- lcd = Phidgets::TextLCD.new
41
- assert_raise(Phidgets::Error::NotAttached) {lcd.contrast}
42
- end
43
-
44
- def test_set_contrast
45
- lcd = Phidgets::TextLCD.new
46
- assert_raise(Phidgets::Error::NotAttached) {lcd.contrast = 87}
47
- end
48
-
49
- def test_get_cursor_on
50
- lcd = Phidgets::TextLCD.new
51
- assert_raise(Phidgets::Error::NotAttached) {lcd.cursor_on?}
52
- end
53
-
54
- def test_set_cursor_on
55
- lcd = Phidgets::TextLCD.new
56
- assert_raise(Phidgets::Error::NotAttached) {lcd.cursor_on = true}
57
- end
58
-
59
- def test_get_cursor_blink
60
- lcd = Phidgets::TextLCD.new
61
- assert_raise(Phidgets::Error::NotAttached) {lcd.cursor_blink?}
62
- end
63
-
64
- def test_set_cursor_blink
65
- lcd = Phidgets::TextLCD.new
66
- assert_raise(Phidgets::Error::NotAttached) {lcd.cursor_blink = true}
67
- end
68
-
69
- def test_set_custom_character
70
- lcd = Phidgets::TextLCD.new
71
- assert_raise(Phidgets::Error::NotAttached) {lcd.custom_character 2, 31, 32}
72
- end
73
-
74
- def test_set_display_character
75
- lcd = Phidgets::TextLCD.new
76
- assert_raise(Phidgets::Error::NotAttached) {lcd.display_character 5, 10, 'P'}
77
- end
78
-
79
- def test_set_display_string
80
- lcd = Phidgets::TextLCD.new
81
- assert_raise(Phidgets::Error::NotAttached) {lcd.display_string 10, 'Hello'}
82
- end
83
-
84
- def test_get_screen_count
85
- lcd = Phidgets::TextLCD.new
86
- assert_raise(Phidgets::Error::NotAttached) {lcd.screen_count}
87
- end
88
-
89
- def test_get_screen
90
- lcd = Phidgets::TextLCD.new
91
- assert_raise(Phidgets::Error::NotAttached) {lcd.screen}
92
- end
93
-
94
- def test_set_screen
95
- lcd = Phidgets::TextLCD.new
96
- assert_raise(Phidgets::Error::NotAttached) {lcd.screen = 1}
97
- end
98
-
99
- def test_get_screen_size
100
- lcd = Phidgets::TextLCD.new
101
- assert_raise(Phidgets::Error::NotAttached) {lcd.screen_size}
102
- end
103
-
104
- def test_set_screen_size
105
- lcd = Phidgets::TextLCD.new
106
- assert_raise(Phidgets::Error::NotAttached) {lcd.screen_size = 86}
107
- end
108
-
109
- def test_init_screen
110
- lcd = Phidgets::TextLCD.new
111
- assert_raise(Phidgets::Error::NotAttached) {lcd.init_screen}
112
- end
113
-
114
- end
115
-
@@ -1,35 +0,0 @@
1
- require File.dirname(__FILE__) + '/test_helper.rb'
2
-
3
- class TestPhidgetsTextLED < Test::Unit::TestCase
4
-
5
- def test_create
6
- assert_nothing_raised {Phidgets::TextLED.new}
7
- end
8
-
9
- def test_get_row_count
10
- led = Phidgets::TextLED.new
11
- assert_raise(Phidgets::Error::NotAttached) {led.row_count}
12
- end
13
-
14
- def test_get_column_count
15
- led = Phidgets::TextLED.new
16
- assert_raise(Phidgets::Error::NotAttached) {led.column_count}
17
- end
18
-
19
- def test_get_brightness
20
- led = Phidgets::TextLED.new
21
- assert_raise(Phidgets::Error::NotAttached) {led.brightness}
22
- end
23
-
24
- def test_set_brightness
25
- led = Phidgets::TextLED.new
26
- assert_raise(Phidgets::Error::NotAttached) {led.brightness = 57}
27
- end
28
-
29
- def test_set_display_string
30
- led = Phidgets::TextLED.new
31
- assert_raise(Phidgets::Error::NotAttached) {led.display_string 10, 'Hello'}
32
- end
33
-
34
- end
35
-
@@ -1,32 +0,0 @@
1
- require File.dirname(__FILE__) + '/test_helper.rb'
2
-
3
- class TestPhidgetsWeightSensor < Test::Unit::TestCase
4
-
5
- def test_create
6
- assert_nothing_raised {Phidgets::WeightSensor.new}
7
- end
8
-
9
- def test_get_weight
10
- sensor = Phidgets::WeightSensor.new
11
- assert_raise(Phidgets::Error::NotAttached) {sensor.weight}
12
- end
13
-
14
- def test_get_weight_change_trigger
15
- sensor = Phidgets::WeightSensor.new
16
- assert_raise(Phidgets::Error::NotAttached) {sensor.weight_change_trigger}
17
- end
18
-
19
- def test_set_weight_change_trigger
20
- sensor = Phidgets::WeightSensor.new
21
- assert_raise(Phidgets::Error::NotAttached) {sensor.weight_change_trigger = 2.2}
22
- end
23
-
24
- unless RUBY_VERSION < '1.9.0'
25
- def test_set_on_weight_change
26
- encoder = Phidgets::WeightSensor.new
27
- assert_nothing_raised {encoder.on_weight_change {puts 'hello'}}
28
- end
29
- end
30
-
31
- end
32
-