Skip to content

RobotPy 2027 Alpha 6 fails before robot.py starts #340

Description

@varenya18

RobotPy running 2027.0.0a6.post1 fails to start on our systemcore before robot code is able to run.

robotpy-native-wpihal==2027.0.0a6 errors because it contains:

import native.wpiutil._init_robotpy_native_wpiutil
import native.ntcore._init_robotpy_native_ntcore
import

This causes a syntax error, the program crashes, and robot code never starts.

We are able to reproduce this with our robot project and with a tested template project. We were also able to reproduce the error after rebuilding both the local and systemcore virtual environments and after reimaging the systemcore from beta-10 to beta-11.

Manually removing the invalid line allows loading to continue, but robot code still never starts because of more library errors afterward.

Current Setup

  • Hardware: Beta systemcore
  • systemcore image: initially beta-10, reproduced again after reimaging to beta-11
  • Python on systemcore : 3.14
  • RobotPy Installer: 2027.0.0a7
  • RobotPy: 2027.0.0a6.post1
  • WPILib: 2027.0.0a6.post1
  • robotpy-hal: 2027.0.0a6.post1
  • robotpy-wpiutil: 2027.0.0a6.post1
  • robotpy-native-wpiutil: 2027.0.0a6
  • robotpy-native-wpihal: 2027.0.0a6
  • robotpy-native-wpilib: 2027.0.0a6
  • pyntcore: 2027.0.0a6.post1
  • robotpy-native-ntcore: 2027.0.0a6

The wheel containing the initial error is:

robotpy_native_wpihal-2027.0.0a6-py3-none-linux_systemcore.whl

And the stack trace reaches:

/home/systemcore/venv/lib/python3.14/site-packages/native/wpihal/_init_robotpy_native_wpihal.py

That file contains:

# This file is automatically generated, DO NOT EDIT
# fmt: off

import native.wpiutil._init_robotpy_native_wpiutil
import native.ntcore._init_robotpy_native_ntcore
import

And RobotPy exits with:

File "/home/systemcore/venv/lib/python3.14/site-packages/native/wpihal/_init_robotpy_native_wpihal.py", line 6
    import
          ^
SyntaxError: Expected one or more names after 'import'

Plugin error detected in
EntryPoint(
    name='add-tests',
    value='wpilib._impl.cli_add_tests:AddTests',
    group='robotpy_cli.2027'
)

robot.service then exits with status 1 and enters a restart loop.

Attempts to Fix the Issue

We got the same result after each of the following:

  1. Deleting /home/systemcore/venv.
  2. Redeploying and allowing RobotPy to recreate the SystemCore environment.
  3. Deleting and rebuilding the local project .venv.
  4. Reinstalling the project dependencies.
  5. Using the tested template project instead of our full robot project.
  6. Deleting the cached robotpy-native-wpihal wheel.
  7. Running robotpy sync again to download it again.
  8. Confirming the newly downloaded wheel still contained the same generated file.
  9. Reimaging the SystemCore from beta-10 to beta-11.
  10. Reconfiguring the SystemCore, rerunning sync, and deploying again.

The reimaged SystemCore installation had the same generated file and error.

Result After Removing the Import Statement

To see whether robot code could start, the import line was deleted from the file.

Robot code still did not start, and the import process failed later while loading other libraries.

Before reimaging, it failed while loading libwpiHal.so:

OSError:
/home/systemcore/venv/lib/python3.14/site-packages/native/wpihal/lib/libwpiHal.so:
undefined symbol: MRC_DsCommsControl_WriteAnsi

After reimaging, the failure was different:

ImportError:
/home/systemcore/venv/lib/python3.14/site-packages/wpiutil/_wpiutil.cpython-314-aarch64-linux-gnu.so:
undefined symbol: _ZN3wpi4util15SetSignalObjectEj

Attachments

01-beta10-initial-syntax-error.txt

02-beta10-after-import-removal-libwpiHal-symbol-error.txt

03-beta11-initial-syntax-error-after-reimage.txt

04-beta11-after-import-removal-wpiutil-symbol-error.txt

05-beta11-native-symbol-analysis.txt

robotpy_native_wpihal-2027.0.0a6-py3-none-linux_systemcore.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions