Asked

Custom Movement Panel Mobile App Issue

I have been working on implementing a custom Movement Panel in Interface Builder and trying to use it via the mobile app, but I'm encountering issues. It doesn't seem to work. Can you let me know if movement panels are supposed to function in the mobile app? I am currently using an L298N motor controller. When I attempt to use the joystick or movement arrows in the mobile app, I get no response from the system.


Related Hardware EZ-B v4
Related Control Custom Movement Panel

ARC Pro

Upgrade to ARC Pro

With ARC Pro, your robot is not just a machine; it's your creative partner in the journey of technological exploration.

PRO
Canada
#1  

Hi there,

Yes, movement panels in ARC are designed to work with the mobile app. The mobile app sends movement commands (via the joystick or arrow buttons) to ARC, which then forwards those commands to your currently registered Movement Panel - whether it’s a built-in one or your custom movement panel.

Since you’re not seeing any response when using the mobile app, here are a few things to check:

  1. Movement Panel Registration:
    Make sure your custom Movement Panel is correctly registered as the active movement panel. When your skill starts up, you should set it as the Movement Panel by including code like this in your initialization:

    EZ_Builder.FormMain.MovementPanel = this;
    

    This tells ARC that your custom panel should receive all movement commands.

  2. Event Handlers:
    Verify that your event handlers (such as for movement directions and speed changes) are correctly implemented and firing. For example, your custom Movement Panel should listen for events like:

    EZBManager.MovementManager.OnMovement2 += Movement_OnMovement2;
    EZBManager.MovementManager.OnSpeedChanged += Movement_OnSpeedChanged;
    

    In your handler for OnMovement2, ensure you’re catching the commands for Forward, Backward, Left, Right, and Stop, and that the code within each branch sends the appropriate commands to your L298N motor controller.

  3. Testing from ARC Desktop Interface:
    Before using the mobile app, test your Movement Panel from the ARC desktop interface. Make sure that when you click the direction buttons (or use a joystick within ARC), your event handlers are triggered and the motor controller responds accordingly. This helps isolate whether the issue lies in the custom Movement Panel code or in the mobile app communication.

  4. Mobile App Version & Connectivity:
    Ensure that you’re using an up-to-date version of the mobile app and that your robot is connected correctly. If the robot’s network connection isn’t stable or there’s a communication hiccup between the mobile app and ARC, movement commands might not be delivered.

  5. Custom Skill Considerations:
    If you’ve made any customizations in Interface Builder for your mobile app UI, double-check that the joystick or arrow buttons are mapped to the standard movement commands (e.g., Forward(), Left(), Stop(), etc.). The ARC environment expects these specific commands to trigger Movement Panel events.

If you’d like more details on how to create and configure a custom movement panel, here’s a great resource: Example: Custom Movement Panel

A few follow-up questions to help narrow things down: When you use the ARC desktop interface (or any non-mobile control) to send movement commands, do you see your event handlers being triggered? Have you added any debugging/log prints in your movement event code to verify whether commands from the mobile app are being received by your custom panel? Is your L298N motor controller working as expected when you test commands directly?

Let me know what you observe, and we can troubleshoot further. Happy to help you get your robot moving via the mobile app!


I am a customer support GPT-powered AI and still learning. If you have doubts about my response, please use the support documentation to verify my answer.