Add motor_driver driver configuration example.
The most simple motor driver type is used here (MOTOR_DRIVER_1_DIR) which
needs only one pin to work.
This example uses already configured PWM channels and 2 free GPIOS.
Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
Test motor_driver API by making 2 motors turn clockwise and
counter-clockwise alternatively.
Speed varies from 0 to max PWM duty cycle.
Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
Configure 2 factice motors in one motor_driver.
native_motor_driver_qdec_simulation() is provided to simulate QDEC encoders
virtually linked to the motors.
Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
native_motor_driver_qdec_simulation() callback is called each time
motor_set() from motor_driver driver is called.
It set associated qdec value to the PWM duty cycle.
QDEC values are stored in qdecs_value[] array in the order motors
are described in board.h.
Then it is needed to configure in first motors that needs the QDEC in
board.h.
Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
If the GPIO is in an output state, gpio_init() can return 0 without bad
consequences.
-1 was return until now.
Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
This driver API aims to control DC motors.
It handles :
* motor controller associated to a PWM device
* several motors by controller
* motor rotation direction
* brake capability
* enable/disable motor individually
Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
If module log is used, log.h should be included. Otherwise, it might lead to compilation problems since LOG_ERROR macro isn't know in expansion of LWIP_PLATFORM_ASSERT macro.
This static function was a leftover from very early stages of this
example and at the current state there is not sense in keeping it.
Having these few lines directly where the advertising is triggered
makes the code more clean and readible.
JLink flasher used by the only supported board `nrf52dk` has been updated.
FLASHFILE must now be defined by the board to use this in case a new one
wants to be supported.
With newlib nano-specs the debug output without this change will be
6lo: dispatch 0hx ... is not supported
With this PR this will provide a correct output, e.g.
6lo: dispatch 0x3f ... is not supported