Skip to content

Commit f17af70

Browse files
authored
Merge pull request #6 from vickash/match-esp-idf-230216
Make it work with esp-idf as of 230216
2 parents 1b0d9e3 + 1fa0917 commit f17af70

File tree

3 files changed

+16
-15
lines changed

3 files changed

+16
-15
lines changed

README.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,21 @@ mruby-esp32-gpio
44
GPIO library for mruby-esp32.
55

66
## Installation
7-
Add the line below to your `build_config.rb`:
7+
In `esp32_build_config.rb`, at the end of the `MRuby::CrossBuild` block, add the following:
88

99
```ruby
1010
conf.gem :github => 'mruby-esp32/mruby-esp32-gpio'
1111
```
1212

13+
In `CMakeLists.txt`, make sure the line `PRIV_REQUIRES` includes the `driver` component. Add it if needed:
14+
15+
```
16+
add_prebuilt_library(
17+
libmruby ${LIBMRUBY_FILE}
18+
PRIV_REQUIRES esp_wifi esp_hw_support esp_rom mqtt driver
19+
)
20+
````
21+
1322
## Example
1423
```ruby
1524
include ESP32::GPIO

mrblib/gpio.rb

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ class << self
88
alias :analog_write :analogWrite
99
alias :analog_read :analogRead
1010
alias :pin_mode :pinMode
11-
alias :hall_read :hallRead
1211
end
1312

1413
class Pin

src/gpio.c

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ mrb_esp32_gpio_pin_mode(mrb_state *mrb, mrb_value self) {
2424
return mrb_nil_value();
2525
}
2626

27-
gpio_pad_select_gpio(mrb_fixnum(pin));
27+
esp_rom_gpio_pad_select_gpio(mrb_fixnum(pin));
2828
gpio_set_direction(mrb_fixnum(pin), mrb_fixnum(dir) & ~GPIO_MODE_DEF_PULLUP);
2929

3030
if (mrb_fixnum(dir) & GPIO_MODE_DEF_PULLUP) {
@@ -89,16 +89,11 @@ mrb_esp32_gpio_analog_read(mrb_state *mrb, mrb_value self) {
8989
return mrb_nil_value();
9090
}
9191

92-
adc1_config_channel_atten(mrb_fixnum(ch), ADC_ATTEN_11db);
92+
adc1_config_channel_atten(mrb_fixnum(ch), ADC_ATTEN_DB_11);
9393

9494
return mrb_fixnum_value(adc1_get_raw(mrb_fixnum(ch)));
9595
}
9696

97-
static mrb_value
98-
mrb_esp32_gpio_hall_read(mrb_state *mrb, mrb_value self) {
99-
return mrb_fixnum_value(hall_sensor_read());
100-
}
101-
10297
void
10398
mrb_mruby_esp32_gpio_gem_init(mrb_state* mrb)
10499
{
@@ -112,9 +107,8 @@ mrb_mruby_esp32_gpio_gem_init(mrb_state* mrb)
112107
mrb_define_module_function(mrb, gpio, "digitalRead", mrb_esp32_gpio_digital_read, MRB_ARGS_REQ(1));
113108
mrb_define_module_function(mrb, gpio, "analogWrite", mrb_esp32_gpio_analog_write, MRB_ARGS_REQ(2));
114109
mrb_define_module_function(mrb, gpio, "analogRead", mrb_esp32_gpio_analog_read, MRB_ARGS_REQ(1));
115-
mrb_define_module_function(mrb, gpio, "hallRead", mrb_esp32_gpio_hall_read, MRB_ARGS_NONE());
116-
117-
adc1_config_width(ADC_WIDTH_12Bit);
110+
111+
adc1_config_width(ADC_BITWIDTH_12);
118112

119113
constants = mrb_define_module_under(mrb, gpio, "Constants");
120114

@@ -162,9 +156,8 @@ mrb_mruby_esp32_gpio_gem_init(mrb_state* mrb)
162156
define_const(GPIO_NUM_39);
163157
define_const(GPIO_NUM_MAX);
164158

165-
define_const(DAC_CHANNEL_1);
166-
define_const(DAC_CHANNEL_2);
167-
define_const(DAC_CHANNEL_MAX);
159+
define_const(DAC_CHAN_0);
160+
define_const(DAC_CHAN_1);
168161

169162
define_const(ADC1_CHANNEL_0);
170163
define_const(ADC1_CHANNEL_1);

0 commit comments

Comments
 (0)