From 09fc7ca4a770d13c3f63e00fe97732c277a55c13 Mon Sep 17 00:00:00 2001 From: ZodiusInfuser Date: Fri, 14 May 2021 15:14:47 +0100 Subject: [PATCH] Added MP address printout for supported breakouts --- drivers/ioexpander/ioexpander.cpp | 4 ++++ drivers/ioexpander/ioexpander.hpp | 1 + drivers/is31fl3731/is31fl3731.cpp | 4 ++++ drivers/is31fl3731/is31fl3731.hpp | 1 + drivers/ltp305/ltp305.cpp | 4 ++++ drivers/ltp305/ltp305.hpp | 1 + drivers/ltr559/ltr559.cpp | 4 ++++ drivers/ltr559/ltr559.hpp | 1 + drivers/trackball/trackball.cpp | 4 ++++ drivers/trackball/trackball.hpp | 1 + libraries/breakout_encoder/breakout_encoder.cpp | 4 ++++ libraries/breakout_encoder/breakout_encoder.hpp | 1 + libraries/breakout_mics6814/breakout_mics6814.cpp | 4 ++++ libraries/breakout_mics6814/breakout_mics6814.hpp | 1 + libraries/breakout_potentiometer/breakout_potentiometer.cpp | 4 ++++ libraries/breakout_potentiometer/breakout_potentiometer.hpp | 1 + .../modules/breakout_dotmatrix/breakout_dotmatrix.cpp | 6 ++++++ micropython/modules/breakout_encoder/breakout_encoder.cpp | 6 ++++++ .../modules/breakout_ioexpander/breakout_ioexpander.cpp | 6 ++++++ micropython/modules/breakout_ltr559/breakout_ltr559.cpp | 6 ++++++ .../modules/breakout_matrix11x7/breakout_matrix11x7.cpp | 6 ++++++ micropython/modules/breakout_mics6814/breakout_mics6814.cpp | 6 ++++++ .../breakout_potentiometer/breakout_potentiometer.cpp | 6 ++++++ .../modules/breakout_rgbmatrix5x5/breakout_rgbmatrix5x5.cpp | 6 ++++++ .../modules/breakout_trackball/breakout_trackball.cpp | 6 ++++++ 25 files changed, 94 insertions(+) diff --git a/drivers/ioexpander/ioexpander.cpp b/drivers/ioexpander/ioexpander.cpp index ca8cd74f..e32d79bb 100644 --- a/drivers/ioexpander/ioexpander.cpp +++ b/drivers/ioexpander/ioexpander.cpp @@ -359,6 +359,10 @@ namespace pimoroni { return i2c; } + int IOExpander::get_address() const { + return address; + } + int IOExpander::get_sda() const { return sda; } diff --git a/drivers/ioexpander/ioexpander.hpp b/drivers/ioexpander/ioexpander.hpp index 0edaa369..0d8d58ab 100644 --- a/drivers/ioexpander/ioexpander.hpp +++ b/drivers/ioexpander/ioexpander.hpp @@ -175,6 +175,7 @@ namespace pimoroni { // For print access in micropython i2c_inst_t* get_i2c() const; + int get_address() const; int get_sda() const; int get_scl() const; int get_int() const; diff --git a/drivers/is31fl3731/is31fl3731.cpp b/drivers/is31fl3731/is31fl3731.cpp index b00fdb16..e1c56236 100644 --- a/drivers/is31fl3731/is31fl3731.cpp +++ b/drivers/is31fl3731/is31fl3731.cpp @@ -78,6 +78,10 @@ namespace pimoroni { return i2c; } + int IS31FL3731::get_address() const { + return address; + } + int IS31FL3731::get_sda() const { return sda; } diff --git a/drivers/is31fl3731/is31fl3731.hpp b/drivers/is31fl3731/is31fl3731.hpp index a3ce53b4..ddccb94b 100644 --- a/drivers/is31fl3731/is31fl3731.hpp +++ b/drivers/is31fl3731/is31fl3731.hpp @@ -53,6 +53,7 @@ namespace pimoroni { bool init(); i2c_inst_t* get_i2c() const; + int get_address() const; int get_sda() const; int get_scl() const; diff --git a/drivers/ltp305/ltp305.cpp b/drivers/ltp305/ltp305.cpp index 98c3be2e..45a03bee 100644 --- a/drivers/ltp305/ltp305.cpp +++ b/drivers/ltp305/ltp305.cpp @@ -20,6 +20,10 @@ namespace pimoroni { return i2c; } + int LTP305::get_address() const { + return address; + } + int LTP305::get_sda() const { return sda; } diff --git a/drivers/ltp305/ltp305.hpp b/drivers/ltp305/ltp305.hpp index 4762d547..c28082a3 100644 --- a/drivers/ltp305/ltp305.hpp +++ b/drivers/ltp305/ltp305.hpp @@ -102,6 +102,7 @@ namespace pimoroni { bool init(); i2c_inst_t* get_i2c() const; + int get_address() const; int get_sda() const; int get_scl() const; diff --git a/drivers/ltr559/ltr559.cpp b/drivers/ltr559/ltr559.cpp index 04779e59..df7686f3 100644 --- a/drivers/ltr559/ltr559.cpp +++ b/drivers/ltr559/ltr559.cpp @@ -75,6 +75,10 @@ namespace pimoroni { return i2c; } + int LTR559::get_address() const { + return address; + } + int LTR559::get_sda() const { return sda; } diff --git a/drivers/ltr559/ltr559.hpp b/drivers/ltr559/ltr559.hpp index 7f232073..4bca0e24 100644 --- a/drivers/ltr559/ltr559.hpp +++ b/drivers/ltr559/ltr559.hpp @@ -165,6 +165,7 @@ namespace pimoroni { void reset(); i2c_inst_t* get_i2c() const; + int get_address() const; int get_sda() const; int get_scl() const; int get_int() const; diff --git a/drivers/trackball/trackball.cpp b/drivers/trackball/trackball.cpp index 6d9d3f39..d806456f 100644 --- a/drivers/trackball/trackball.cpp +++ b/drivers/trackball/trackball.cpp @@ -68,6 +68,10 @@ namespace pimoroni { return i2c; } + int Trackball::get_address() const { + return address; + } + int Trackball::get_sda() const { return sda; } diff --git a/drivers/trackball/trackball.hpp b/drivers/trackball/trackball.hpp index ec43e96c..4e82e1c8 100644 --- a/drivers/trackball/trackball.hpp +++ b/drivers/trackball/trackball.hpp @@ -71,6 +71,7 @@ namespace pimoroni { bool init(); i2c_inst_t* get_i2c() const; + int get_address() const; int get_sda() const; int get_scl() const; int get_int() const; diff --git a/libraries/breakout_encoder/breakout_encoder.cpp b/libraries/breakout_encoder/breakout_encoder.cpp index 0882dd14..afefab48 100644 --- a/libraries/breakout_encoder/breakout_encoder.cpp +++ b/libraries/breakout_encoder/breakout_encoder.cpp @@ -32,6 +32,10 @@ namespace pimoroni { return ioe.get_i2c(); } + int BreakoutEncoder::get_address() const { + return ioe.get_address(); + } + int BreakoutEncoder::get_sda() const { return ioe.get_sda(); } diff --git a/libraries/breakout_encoder/breakout_encoder.hpp b/libraries/breakout_encoder/breakout_encoder.hpp index e85099d8..c1980f1b 100644 --- a/libraries/breakout_encoder/breakout_encoder.hpp +++ b/libraries/breakout_encoder/breakout_encoder.hpp @@ -72,6 +72,7 @@ namespace pimoroni { // For print access in micropython i2c_inst_t* get_i2c() const; + int get_address() const; int get_sda() const; int get_scl() const; int get_int() const; diff --git a/libraries/breakout_mics6814/breakout_mics6814.cpp b/libraries/breakout_mics6814/breakout_mics6814.cpp index 4b1c886c..d7958a8b 100644 --- a/libraries/breakout_mics6814/breakout_mics6814.cpp +++ b/libraries/breakout_mics6814/breakout_mics6814.cpp @@ -35,6 +35,10 @@ namespace pimoroni { return ioe.get_i2c(); } + int BreakoutMICS6814::get_address() const { + return ioe.get_address(); + } + int BreakoutMICS6814::get_sda() const { return ioe.get_sda(); } diff --git a/libraries/breakout_mics6814/breakout_mics6814.hpp b/libraries/breakout_mics6814/breakout_mics6814.hpp index 6940e5dd..eee7f2dd 100644 --- a/libraries/breakout_mics6814/breakout_mics6814.hpp +++ b/libraries/breakout_mics6814/breakout_mics6814.hpp @@ -71,6 +71,7 @@ namespace pimoroni { // For print access in micropython i2c_inst_t* get_i2c() const; + int get_address() const; int get_sda() const; int get_scl() const; int get_int() const; diff --git a/libraries/breakout_potentiometer/breakout_potentiometer.cpp b/libraries/breakout_potentiometer/breakout_potentiometer.cpp index 445d3f92..55b77898 100644 --- a/libraries/breakout_potentiometer/breakout_potentiometer.cpp +++ b/libraries/breakout_potentiometer/breakout_potentiometer.cpp @@ -42,6 +42,10 @@ namespace pimoroni { return ioe.get_i2c(); } + int BreakoutPotentiometer::get_address() const { + return ioe.get_address(); + } + int BreakoutPotentiometer::get_sda() const { return ioe.get_sda(); } diff --git a/libraries/breakout_potentiometer/breakout_potentiometer.hpp b/libraries/breakout_potentiometer/breakout_potentiometer.hpp index 93263384..470b3316 100644 --- a/libraries/breakout_potentiometer/breakout_potentiometer.hpp +++ b/libraries/breakout_potentiometer/breakout_potentiometer.hpp @@ -69,6 +69,7 @@ namespace pimoroni { // For print access in micropython i2c_inst_t* get_i2c() const; + int get_address() const; int get_sda() const; int get_scl() const; int get_int() const; diff --git a/micropython/modules/breakout_dotmatrix/breakout_dotmatrix.cpp b/micropython/modules/breakout_dotmatrix/breakout_dotmatrix.cpp index 52bfe5b3..698866b6 100644 --- a/micropython/modules/breakout_dotmatrix/breakout_dotmatrix.cpp +++ b/micropython/modules/breakout_dotmatrix/breakout_dotmatrix.cpp @@ -1,4 +1,5 @@ #include "libraries/breakout_dotmatrix/breakout_dotmatrix.hpp" +#include #define MP_OBJ_TO_PTR2(o, t) ((t *)(uintptr_t)(o)) @@ -28,6 +29,11 @@ void BreakoutDotMatrix_print(const mp_print_t *print, mp_obj_t self_in, mp_print mp_print_str(print, "i2c = "); mp_obj_print_helper(print, mp_obj_new_int((breakout->get_i2c() == i2c0) ? 0 : 1), PRINT_REPR); + mp_print_str(print, ", address = 0x"); + char buf[3]; + sprintf(buf, "%02X", breakout->get_address()); + mp_print_str(print, buf); + mp_print_str(print, ", sda = "); mp_obj_print_helper(print, mp_obj_new_int(breakout->get_sda()), PRINT_REPR); diff --git a/micropython/modules/breakout_encoder/breakout_encoder.cpp b/micropython/modules/breakout_encoder/breakout_encoder.cpp index 19e81ee6..0af2758a 100644 --- a/micropython/modules/breakout_encoder/breakout_encoder.cpp +++ b/micropython/modules/breakout_encoder/breakout_encoder.cpp @@ -1,4 +1,5 @@ #include "libraries/breakout_encoder/breakout_encoder.hpp" +#include #define MP_OBJ_TO_PTR2(o, t) ((t *)(uintptr_t)(o)) @@ -28,6 +29,11 @@ void BreakoutEncoder_print(const mp_print_t *print, mp_obj_t self_in, mp_print_k mp_print_str(print, "i2c = "); mp_obj_print_helper(print, mp_obj_new_int((breakout->get_i2c() == i2c0) ? 0 : 1), PRINT_REPR); + mp_print_str(print, ", address = 0x"); + char buf[3]; + sprintf(buf, "%02X", breakout->get_address()); + mp_print_str(print, buf); + mp_print_str(print, ", sda = "); mp_obj_print_helper(print, mp_obj_new_int(breakout->get_sda()), PRINT_REPR); diff --git a/micropython/modules/breakout_ioexpander/breakout_ioexpander.cpp b/micropython/modules/breakout_ioexpander/breakout_ioexpander.cpp index c6987141..227fff2a 100644 --- a/micropython/modules/breakout_ioexpander/breakout_ioexpander.cpp +++ b/micropython/modules/breakout_ioexpander/breakout_ioexpander.cpp @@ -1,4 +1,5 @@ #include "libraries/breakout_ioexpander/breakout_ioexpander.hpp" +#include #define MP_OBJ_TO_PTR2(o, t) ((t *)(uintptr_t)(o)) @@ -28,6 +29,11 @@ void BreakoutIOExpander_print(const mp_print_t *print, mp_obj_t self_in, mp_prin mp_print_str(print, "i2c = "); mp_obj_print_helper(print, mp_obj_new_int((breakout->get_i2c() == i2c0) ? 0 : 1), PRINT_REPR); + mp_print_str(print, ", address = 0x"); + char buf[3]; + sprintf(buf, "%02X", breakout->get_address()); + mp_print_str(print, buf); + mp_print_str(print, ", sda = "); mp_obj_print_helper(print, mp_obj_new_int(breakout->get_sda()), PRINT_REPR); diff --git a/micropython/modules/breakout_ltr559/breakout_ltr559.cpp b/micropython/modules/breakout_ltr559/breakout_ltr559.cpp index fec0b5b8..7d82ea8a 100644 --- a/micropython/modules/breakout_ltr559/breakout_ltr559.cpp +++ b/micropython/modules/breakout_ltr559/breakout_ltr559.cpp @@ -1,4 +1,5 @@ #include "libraries/breakout_ltr559/breakout_ltr559.hpp" +#include #define MP_OBJ_TO_PTR2(o, t) ((t *)(uintptr_t)(o)) @@ -28,6 +29,11 @@ void BreakoutLTR559_print(const mp_print_t *print, mp_obj_t self_in, mp_print_ki mp_print_str(print, "i2c = "); mp_obj_print_helper(print, mp_obj_new_int((breakout->get_i2c() == i2c0) ? 0 : 1), PRINT_REPR); + mp_print_str(print, ", address = 0x"); + char buf[3]; + sprintf(buf, "%02X", breakout->get_address()); + mp_print_str(print, buf); + mp_print_str(print, ", sda = "); mp_obj_print_helper(print, mp_obj_new_int(breakout->get_sda()), PRINT_REPR); diff --git a/micropython/modules/breakout_matrix11x7/breakout_matrix11x7.cpp b/micropython/modules/breakout_matrix11x7/breakout_matrix11x7.cpp index 21a62cba..42995e29 100644 --- a/micropython/modules/breakout_matrix11x7/breakout_matrix11x7.cpp +++ b/micropython/modules/breakout_matrix11x7/breakout_matrix11x7.cpp @@ -1,4 +1,5 @@ #include "libraries/breakout_matrix11x7/breakout_matrix11x7.hpp" +#include #define MP_OBJ_TO_PTR2(o, t) ((t *)(uintptr_t)(o)) @@ -28,6 +29,11 @@ void BreakoutMatrix11x7_print(const mp_print_t *print, mp_obj_t self_in, mp_prin mp_print_str(print, "i2c = "); mp_obj_print_helper(print, mp_obj_new_int((breakout->get_i2c() == i2c0) ? 0 : 1), PRINT_REPR); + mp_print_str(print, ", address = 0x"); + char buf[3]; + sprintf(buf, "%02X", breakout->get_address()); + mp_print_str(print, buf); + mp_print_str(print, ", sda = "); mp_obj_print_helper(print, mp_obj_new_int(breakout->get_sda()), PRINT_REPR); diff --git a/micropython/modules/breakout_mics6814/breakout_mics6814.cpp b/micropython/modules/breakout_mics6814/breakout_mics6814.cpp index 3d6ef327..96bef2e1 100644 --- a/micropython/modules/breakout_mics6814/breakout_mics6814.cpp +++ b/micropython/modules/breakout_mics6814/breakout_mics6814.cpp @@ -1,4 +1,5 @@ #include "libraries/breakout_mics6814/breakout_mics6814.hpp" +#include #define MP_OBJ_TO_PTR2(o, t) ((t *)(uintptr_t)(o)) @@ -28,6 +29,11 @@ void BreakoutMICS6814_print(const mp_print_t *print, mp_obj_t self_in, mp_print_ mp_print_str(print, "i2c = "); mp_obj_print_helper(print, mp_obj_new_int((breakout->get_i2c() == i2c0) ? 0 : 1), PRINT_REPR); + mp_print_str(print, ", address = 0x"); + char buf[3]; + sprintf(buf, "%02X", breakout->get_address()); + mp_print_str(print, buf); + mp_print_str(print, ", sda = "); mp_obj_print_helper(print, mp_obj_new_int(breakout->get_sda()), PRINT_REPR); diff --git a/micropython/modules/breakout_potentiometer/breakout_potentiometer.cpp b/micropython/modules/breakout_potentiometer/breakout_potentiometer.cpp index 7fcaa978..4cd285b9 100644 --- a/micropython/modules/breakout_potentiometer/breakout_potentiometer.cpp +++ b/micropython/modules/breakout_potentiometer/breakout_potentiometer.cpp @@ -1,4 +1,5 @@ #include "libraries/breakout_potentiometer/breakout_potentiometer.hpp" +#include #define MP_OBJ_TO_PTR2(o, t) ((t *)(uintptr_t)(o)) @@ -28,6 +29,11 @@ void BreakoutPotentiometer_print(const mp_print_t *print, mp_obj_t self_in, mp_p mp_print_str(print, "i2c = "); mp_obj_print_helper(print, mp_obj_new_int((breakout->get_i2c() == i2c0) ? 0 : 1), PRINT_REPR); + mp_print_str(print, ", address = 0x"); + char buf[3]; + sprintf(buf, "%02X", breakout->get_address()); + mp_print_str(print, buf); + mp_print_str(print, ", sda = "); mp_obj_print_helper(print, mp_obj_new_int(breakout->get_sda()), PRINT_REPR); diff --git a/micropython/modules/breakout_rgbmatrix5x5/breakout_rgbmatrix5x5.cpp b/micropython/modules/breakout_rgbmatrix5x5/breakout_rgbmatrix5x5.cpp index 1c6bbe5c..5eaf566b 100644 --- a/micropython/modules/breakout_rgbmatrix5x5/breakout_rgbmatrix5x5.cpp +++ b/micropython/modules/breakout_rgbmatrix5x5/breakout_rgbmatrix5x5.cpp @@ -1,4 +1,5 @@ #include "libraries/breakout_rgbmatrix5x5/breakout_rgbmatrix5x5.hpp" +#include #define MP_OBJ_TO_PTR2(o, t) ((t *)(uintptr_t)(o)) @@ -28,6 +29,11 @@ void BreakoutRGBMatrix5x5_print(const mp_print_t *print, mp_obj_t self_in, mp_pr mp_print_str(print, "i2c = "); mp_obj_print_helper(print, mp_obj_new_int((breakout->get_i2c() == i2c0) ? 0 : 1), PRINT_REPR); + mp_print_str(print, ", address = 0x"); + char buf[3]; + sprintf(buf, "%02X", breakout->get_address()); + mp_print_str(print, buf); + mp_print_str(print, ", sda = "); mp_obj_print_helper(print, mp_obj_new_int(breakout->get_sda()), PRINT_REPR); diff --git a/micropython/modules/breakout_trackball/breakout_trackball.cpp b/micropython/modules/breakout_trackball/breakout_trackball.cpp index 5ff4f9f4..f7692465 100644 --- a/micropython/modules/breakout_trackball/breakout_trackball.cpp +++ b/micropython/modules/breakout_trackball/breakout_trackball.cpp @@ -1,4 +1,5 @@ #include "libraries/breakout_trackball/breakout_trackball.hpp" +#include #define MP_OBJ_TO_PTR2(o, t) ((t *)(uintptr_t)(o)) @@ -28,6 +29,11 @@ void BreakoutTrackball_print(const mp_print_t *print, mp_obj_t self_in, mp_print mp_print_str(print, "i2c = "); mp_obj_print_helper(print, mp_obj_new_int((breakout->get_i2c() == i2c0) ? 0 : 1), PRINT_REPR); + mp_print_str(print, ", address = 0x"); + char buf[3]; + sprintf(buf, "%02X", breakout->get_address()); + mp_print_str(print, buf); + mp_print_str(print, ", sda = "); mp_obj_print_helper(print, mp_obj_new_int(breakout->get_sda()), PRINT_REPR);