Skip to content

[SafetyAPI] No safety for the OwnVerter #119

@luizvilla

Description

@luizvilla

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 workingdocumentationImprovements or additions to documentationenhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions