Skip to content

Commit

Permalink
temporary fix for Lizard issue 66
Browse files Browse the repository at this point in the history
  • Loading branch information
pascalzauberzeug committed Oct 23, 2024
1 parent b3b2660 commit 29598a8
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 4 deletions.
13 changes: 11 additions & 2 deletions rosys/hardware/battery_control.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
from .. import rosys
from ..helpers import remove_indentation
from .expander import ExpanderHardware
from .module import ModuleHardware
from .robot_brain import RobotBrain
Expand All @@ -14,8 +15,16 @@ def __init__(self, robot_brain: RobotBrain, *,
) -> None:
self.name = name
self.status: bool = False
lizard_code = f'{self.name}_reset = {expander.name + "." if expander else ""}Output({reset_pin})\n'
lizard_code += f'{self.name}_status = {expander.name + "." if expander else ""}Input({status_pin})\n'
lizard_code = remove_indentation(f'''
{self.name}_reset = {expander.name + "." if expander else ""}Output({reset_pin})
{self.name}_status = {expander.name + "." if expander else ""}Input({status_pin})
''')
if expander:
lizard_code += remove_indentation(f'''
# TODO: remove when lizard issue 66 is fixed.
{self.name}_status.level = 0
{self.name}_status.active = false
''')
core_message_fields = [f'{self.name}_status.level']
super().__init__(robot_brain=robot_brain, lizard_code=lizard_code, core_message_fields=core_message_fields)

Expand Down
12 changes: 10 additions & 2 deletions rosys/hardware/bumper.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import abc

from ..event import Event
from ..helpers import remove_indentation
from .estop import EStop
from .expander import ExpanderHardware
from .module import Module, ModuleHardware, ModuleSimulation
Expand Down Expand Up @@ -34,8 +35,15 @@ def __init__(self, robot_brain: RobotBrain, *,
estop: EStop | None = None) -> None:
self.name = name
self.pins = pins
lizard_code = '\n'.join(f'{name}_{pin} = {expander.name + "." if expander else ""}Input({number})'
for pin, number in pins.items())
lizard_code = ''
for pin, number in pins.items():
lizard_code += f'{name}_{pin} = {expander.name + "." if expander else ""}Input({number})\n'
if expander:
lizard_code += remove_indentation(f'''
# TODO: remove when lizard issue 66 is fixed.
{name}_{pin}.level = 0
{name}_{pin}.active = false
''')
core_message_fields = [f'{name}_{pin}.level' for pin in pins]
super().__init__(robot_brain=robot_brain,
lizard_code=lizard_code,
Expand Down

0 comments on commit 29598a8

Please sign in to comment.