|
|
@@ -4,7 +4,7 @@
|
|
|
#include <py/obj.h>
|
|
|
#include <py/runtime.h>
|
|
|
|
|
|
-#include "_modflipperzero.h"
|
|
|
+#include "modflipperzero.h"
|
|
|
|
|
|
static mp_obj_t flipperzero_light_set(mp_obj_t light_obj, mp_obj_t brightness_obj) {
|
|
|
mp_int_t light = mp_obj_get_int(light_obj);
|
|
|
@@ -57,6 +57,28 @@ static mp_obj_t flipperzero_vibro_set(mp_obj_t state) {
|
|
|
}
|
|
|
static MP_DEFINE_CONST_FUN_OBJ_1(flipperzero_vibro_set_obj, flipperzero_vibro_set);
|
|
|
|
|
|
+static mp_obj_t flipperzero_speaker_start(mp_obj_t frequency_obj, mp_obj_t volume_obj) {
|
|
|
+ mp_float_t frequency = mp_obj_get_float(frequency_obj);
|
|
|
+ mp_float_t volume = mp_obj_get_float(volume_obj);
|
|
|
+
|
|
|
+ return mp_flipper_speaker_start(frequency, volume) ? mp_const_true : mp_const_false;
|
|
|
+}
|
|
|
+static MP_DEFINE_CONST_FUN_OBJ_2(flipperzero_speaker_start_obj, flipperzero_speaker_start);
|
|
|
+
|
|
|
+static mp_obj_t flipperzero_speaker_set_volume(mp_obj_t volume_obj) {
|
|
|
+ mp_float_t volume = mp_obj_get_float(volume_obj);
|
|
|
+
|
|
|
+ return mp_flipper_speaker_set_volume(volume) ? mp_const_true : mp_const_false;
|
|
|
+}
|
|
|
+static MP_DEFINE_CONST_FUN_OBJ_1(flipperzero_speaker_set_volume_obj, flipperzero_speaker_set_volume);
|
|
|
+
|
|
|
+static mp_obj_t flipperzero_speaker_stop() {
|
|
|
+ mp_flipper_speaker_stop();
|
|
|
+
|
|
|
+ return mp_flipper_speaker_stop() ? mp_const_true : mp_const_false;
|
|
|
+}
|
|
|
+static MP_DEFINE_CONST_FUN_OBJ_0(flipperzero_speaker_stop_obj, flipperzero_speaker_stop);
|
|
|
+
|
|
|
static const mp_rom_map_elem_t flipperzero_module_globals_table[] = {
|
|
|
{MP_OBJ_NEW_QSTR(MP_QSTR___name__), MP_OBJ_NEW_QSTR(MP_QSTR_flipperzero)},
|
|
|
{MP_ROM_QSTR(MP_QSTR_LIGHT_RED), MP_ROM_INT(MP_FLIPPER_LED_RED)},
|
|
|
@@ -68,6 +90,9 @@ static const mp_rom_map_elem_t flipperzero_module_globals_table[] = {
|
|
|
{MP_ROM_QSTR(MP_QSTR_light_blink_set_color), MP_ROM_PTR(&flipperzero_light_blink_set_color_obj)},
|
|
|
{MP_ROM_QSTR(MP_QSTR_light_blink_stop), MP_ROM_PTR(&flipperzero_light_blink_stop_obj)},
|
|
|
{MP_ROM_QSTR(MP_QSTR_vibro_set), MP_ROM_PTR(&flipperzero_vibro_set_obj)},
|
|
|
+ {MP_ROM_QSTR(MP_QSTR_speaker_start), MP_ROM_PTR(&flipperzero_speaker_start_obj)},
|
|
|
+ {MP_ROM_QSTR(MP_QSTR_speaker_set_volume), MP_ROM_PTR(&flipperzero_speaker_set_volume_obj)},
|
|
|
+ {MP_ROM_QSTR(MP_QSTR_speaker_stop), MP_ROM_PTR(&flipperzero_speaker_stop_obj)},
|
|
|
};
|
|
|
static MP_DEFINE_CONST_DICT(flipperzero_module_globals, flipperzero_module_globals_table);
|
|
|
|