-
Notifications
You must be signed in to change notification settings - Fork 15
Open
Labels
bugSomething isn't workingSomething isn't workingdocumentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or request
Description
Describe the bug
The OwnVerter is not covered by the current version of the safety API.
This can be seen on the uniterruptible_synchronous_task.cpp file:
void thread_error(void *, void *, void *)
{
while (1)
{
if (safety_alert)
{
printk("SAFETY ERROR : reset the MCU \n");
#ifdef CONFIG_SHIELD_TWIST
printk( "problem with I1 : %s \n"
"problem with V1 : %s \n"
"problem with I2 : %s \n"
"problem with V2 : %s \n"
"problem with Ihigh : %s \n"
"problem with Vhigh : %s \n"
, safety.getChannelError(I1_LOW) ? "true" : "false"
, safety.getChannelError(V1_LOW) ? "true" : "false"
, safety.getChannelError(I2_LOW) ? "true" : "false"
, safety.getChannelError(I2_LOW) ? "true" : "false"
, safety.getChannelError(I_HIGH) ? "true" : "false"
, safety.getChannelError(V_HIGH) ? "true" : "false"
);
#endif
}
k_msleep(200);
}
}If the shield is configured as ownverter, this safety check is not performed.
Expected behavior
The safety check should be agnostic of the shield. And this should not be buried within the layers of the core code.
Metadata
Metadata
Labels
bugSomething isn't workingSomething isn't workingdocumentationImprovements or additions to documentationImprovements or additions to documentationenhancementNew feature or requestNew feature or request