Legoino Versions Save

Arduino Library for controlling Powered UP and Boost controllers

1.1.0

3 years ago

With this feature release the Super Mario Hub (Lego Set #71360) is supported. So hopefully you will like this small christmas gift 🎄 🎁

  • Pant Sensor could be read in 👖
  • Color 🌈 and Tag/Barcode 🔖 Sensor could be read in
  • Gesture Sensor could be read in 👋

You can find an example implementation in the Mario.ino sketch

Thanks to @tthiery and @bricklife for their work to document the new Mario features: https://github.com/bricklife/LEGO-Mario-Reveng https://github.com/sharpbrick/docs/blob/master/hubs/mariohub.md

1.0.4

3 years ago

With this release the BLE scan function which is started with the hub.init() call is no longer blocking the execution of the code. Now a callback is used and with this the non blocking way of scanning is enforced in the NimBLE-Arduino library.

Thanks to @bjgz and @fvanroie for pointing me in the right direction

To use this feature you have nothing to do 😃 beside the update of the library to this version

1.0.3

3 years ago

With this bugfix release several minor and major bugs were fixed:

  • #42 PowerFunction (IR) part of the library could now also be used on other hw architectures (AVR, ESP8266, ESP32)
  • #40 HubEmulation will now work more stable on Android and iOS devices
  • #43 The mapping of the color sensor is now corrected and a green block is now detected no longer as cyan
  • Adaption of example sketches with sensors. Now the sketches always check if the sensor is connected and activate port updates only if a expected sensor is connected
  • Added GitHub Actions to ensure the build process of all example sketches on different hardware boards automatically for each commit

Thanks to all users who has again put in major contributions in this release 👏 !

1.0.2

3 years ago

With this bugfix release several minor and major bugs were fixed:

  • #34 (rotation values are now reported also by technic motors and not only by the boost motor)
  • #33 and #31 fix "none" color value sensing
  • Add new function ColorStringFromColor to convert a color or int value to a color string. This should now be used instead of directly using the COLOR_STRING array
  • fix build warnings
  • Adapt example MoveHubDeviceInfo.ino to fetch the HW and FW version of the hub

1.0.1

3 years ago
  • This fix resolves the issue (#27) that a connection to the emulated hub via an Android device was not working.
  • The documentation is improved to show the dependency to the needed NimBLE-Arduino library at the beginning of the documentation (#26)

1.0.0

3 years ago

Major release 1.0.0

I am very happy about all the feedback and contributions which take the library to that step. After over a year of learnings and feedback i have reworked the library to be more consistent and to make some things easier. Unfortunately this was not possible without breaking changes. This means some functions and methods has to be removed or renamed.

To make the migration of your sketches easier, just have a look into the Migration guide

New features

  • Duplo Train support
  • Enriched Motor commands (maxPower, brakingStyle)
  • Support of setAbsoluteMotorPosition, setAbsoluteMotorEncoderPosition
  • Callbacks for changes on hub properties and sensor values
  • PowerFunction (IR) functions included
  • Hub Emulation (powered up to powerfunction translator)
  • Adding of getHubName
  • rework of log messages to the standard log_d, log_w, log_xx messages. Log levels could now be switched via the Arduino environment

Contribution

I am very happy about the whole community who participates in that library and contributes with ideas and even code improvements via Pull request.

  • thanks to @carlalldis for the addition of the absolute motor commands
  • thanks to @giancann and @marcrupprath for the first super implementations of the hub emulation idea
  • thanks to @ fvanroie for improving the callback functions
  • thanks to all who has raised an issue or reported some feedback in the gitter chat

0.8.1

3 years ago

With this release the bug in fetching the hub type is fixed. Additionally the address of a connected hub could be fetched with the getHubAddress() function

0.8.0

3 years ago
  • Add ControlPlusHub example
  • Add missing stopMotor function to ControlPlusHub
  • Change default scan duration from 30s to 1s
  • Add init functions to set the scan duration explicitly during an init call myHub.init(2); // initializes the hub and connection parameters with 2 seconds scan duration

0.7.1

3 years ago

With this update the Arduino library manager will automatically inform about the dependent NimBLE-Arduino library

0.7.0

3 years ago

With this release version the underlying BLE library changed to the https://github.com/h2zero/NimBLE-Arduino library. This library is mainly compatible with the old BLE library but have the following benefits:

  • Connection up to 9 BLE devices possible
  • Callbacks possible for member functions
  • less memory consumption

Additionally the support of Control+ Hubs are added with this release version

To connect to more than 3 devices you have to change the following settings:

Changed the setting in the /Users/<username>/Documents/Arduino/libraries/NimBLE-Arduino/src/nimconfig.h file to #define CONFIG_BT_NIMBLE_MAX_CONNECTIONS 8 Changed the setting in the /Users/<username>/Library/Arduino15/packages/esp32/hardware/esp32/1.0.4/tools/sdk/include/config/sdkconfig.h file to #define CONFIG_BTDM_CONTROLLER_BLE_MAX_CONN_EFF 8 and #define CONFIG_BTDM_CONTROLLER_BLE_MAX_CONN 8