Skip to content

OPP Lamp Driver Numbering seems to truncate the board number #1867

@unRARed

Description

@unRARed

We're trying to run a chain of 6 OPP Cypress boards with mpf 0.57.x (both from source and through the package manager) in this project.. We kept running into Duplicate Switch issues such as this one:

Config File Error in light: Duplicate light number <class 'mpf.platforms.opp.opp_incand.OPPIncand'> 16 for light <light.l_spinner_07>

Our lights config is from here. We've tried changing the subtype, adding/dropping the platform: opp, dropping the tags and just about everything we can think of. It seems like the "board" part of the light numbering is being truncated somewhere per print debugging the _check_duplicate_light_numbers method. The game seems to boot as long as the second number is different.

I was able to reproduce with this simple config:

#config_version=6

hardware:
 platform: opp
 driverboards: gen2
 lights: opp

opp:
  baud: 115200
  ports: /dev/cu.usbmodem101

lights:
  l_backbox_match_00:
    subtype: matrix
    number: 0-0
  l_grooveline_lit:
    subtype: matrix
    number: 2-0

Sure enough, we get more or less the same error:

Config File Error in light: Duplicate number <class 'mpf.platforms.opp.opp_incand.OPPIncand'> 0 for light <light.l_grooveline_lit> Context: (None, '0', <class 'mpf.platforms.opp.opp_incand.OPPIncand'>) Error Code: CFE-light-10

Moving the second lamp to number 2-1 boots without issue:

lights:
  l_backbox_match_00:
    subtype: matrix
    number: 0-0
  l_grooveline_lit:
    subtype: matrix
    number: 2-1

Here's the result of our mpf hardware scan

drivers:
Not implemented
---------
opp:
Connected CPUs:
 - Port: /dev/cu.usbmodem101 at 115200 baud. Chain Serial: /dev/cu.usbmodem101
 -> Board: 0x20 Firmware: 0x1000004
 -> Board: 0x21 Firmware: 0x1000004
 -> Board: 0x22 Firmware: 0x1000004
 -> Board: 0x23 Firmware: 0x1000004
 -> Board: 0x24 Firmware: 0x1000004
 -> Board: 0x25 Firmware: 0x1000004

Incand cards:
 - Chain: /dev/cu.usbmodem101 Board: 0x20 Card: 0 Numbers: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23]
 - Chain: /dev/cu.usbmodem101 Board: 0x21 Card: 1 Numbers: [16, 17, 18, 19, 20, 21, 22, 23]
 - Chain: /dev/cu.usbmodem101 Board: 0x22 Card: 2 Numbers: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23]
 - Chain: /dev/cu.usbmodem101 Board: 0x23 Card: 3 Numbers: [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23]
 - Chain: /dev/cu.usbmodem101 Board: 0x24 Card: 4 Numbers: [8, 9, 10, 11, 12, 13, 14, 15]
 - Chain: /dev/cu.usbmodem101 Board: 0x25 Card: 5 Numbers: [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23]

Input cards:
 - Chain: /dev/cu.usbmodem101 Board: 0x20 Card: 0 Numbers: [24, 25, 26, 27]
 - Chain: /dev/cu.usbmodem101 Board: 0x21 Card: 1 Numbers: [0, 1, 2, 3, 8, 9, 10, 11, 24, 25, 26, 27, 28, 29, 30, 31]
 - Chain: /dev/cu.usbmodem101 Board: 0x22 Card: 2 Numbers: [24, 25, 26, 27, 28, 29, 30, 31]
 - Chain: /dev/cu.usbmodem101 Board: 0x23 Card: 3 Numbers: [0, 1, 2, 3, 24, 25, 26, 27, 28, 29, 30, 31]
 - Chain: /dev/cu.usbmodem101 Board: 0x24 Card: 4 Numbers: [0, 1, 2, 3, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31]
 - Chain: /dev/cu.usbmodem101 Board: 0x25 Card: 5 Numbers: [0, 1, 2, 3, 24, 25, 26, 27, 28, 29, 30, 31]

Solenoid cards:
 - Chain: /dev/cu.usbmodem101 Board: 0x20 Card: 0 Numbers: [12, 13, 14, 15]
 - Chain: /dev/cu.usbmodem101 Board: 0x21 Card: 1 Numbers: [0, 1, 2, 3, 4, 5, 6, 7]
 - Chain: /dev/cu.usbmodem101 Board: 0x23 Card: 3 Numbers: [0, 1, 2, 3]
 - Chain: /dev/cu.usbmodem101 Board: 0x24 Card: 4 Numbers: [0, 1, 2, 3]
 - Chain: /dev/cu.usbmodem101 Board: 0x25 Card: 5 Numbers: [0, 1, 2, 3]

---------
Stop called on serial connection /dev/cu.usbmodem101

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