OwnTech NGND driver Zephyr Module is in charge of driving the Neutral-Ground switch of the Power Converter.
How to use
To change the state of the Neutral-Ground switch using the NGND driver, the ngnd.h
file must be included:
Then, the driver structure has to be obtained from Zephyr using the following function:
Finally, the driver can be use to change the switch state using the following function:
With value
either 0 or 1.
Example
#include "ngnd.h"
static const struct device* ngnd_driver = NULL;
void init()
{
ngnd_driver = device_get_binding(NGND_LABEL);
}
void enable_ngnd()
{
ngnd_set(ngnd_driver, 1);
}
Technical information
This driver has an almost-Zephyr-style implementation. It does use the standard DEVICE_DEFINE()
macro that allows it to be loaded automatically if the module is enabled. However, it does not condition its loading to the ngnd
node presence in the device tree nor apply the board-agnostic layer used by Zephyr to allow generic driver.
Enabling or disabling the module
The module is loaded by default. The user explicitly has to set CONFIG_OWNTECH_NGND_DRIVER=n
in prj.conf
to prevent the module from loading. However, even if not used directly by your code, disabling this module may lead to power converter not outputting any power.