Skip to content

Screen class not working on ev3dev stretch #423

@ddemidov

Description

@ddemidov

I am getting the following error with the recently released stretch package:

>>> import ev3dev.ev3 as ev3
>>> s = ev3.Screen()
>>> s.clear()
>>> s.update()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3/dist-packages/ev3dev/core.py", line 3320, in update
    self.mmap[:] = self._img.tobytes("raw", "1;IR")
IndexError: mmap slice assignment is wrong size

It seems the same error prevents openrobertalab service from working:

$ journalctl -n 100
Oct 28 10:08:34 ev3dev openrobertalab[1992]: INFO:roberta:--- starting ---
Oct 28 10:08:34 ev3dev openrobertalab[1992]: INFO:roberta.lab:python path: /usr/bin:/usr/lib/python35.zip:/usr/lib/python3.5:/usr/lib/python3.5/plat-arm-linux-gnueabi:/usr/lib/python3.5/lib-
Oct 28 10:08:34 ev3dev openrobertalab[1992]: INFO:roberta.lab:status changed: disconnected
Oct 28 10:08:38 ev3dev openrobertalab[1992]: Traceback (most recent call last):
Oct 28 10:08:38 ev3dev openrobertalab[1992]:   File "/usr/bin/openrobertalab", line 41, in <module>
Oct 28 10:08:38 ev3dev openrobertalab[1992]:     main()
Oct 28 10:08:38 ev3dev openrobertalab[1992]:   File "/usr/bin/openrobertalab", line 36, in main
Oct 28 10:08:38 ev3dev openrobertalab[1992]:     service = Service('/org/openroberta/Lab1')
Oct 28 10:08:38 ev3dev openrobertalab[1992]:   File "/usr/lib/python3/dist-packages/roberta/lab.py", line 88, in __init__
Oct 28 10:08:38 ev3dev openrobertalab[1992]:     self.hal.clearDisplay()
Oct 28 10:08:38 ev3dev openrobertalab[1992]:   File "/usr/lib/python3/dist-packages/roberta/ev3.py", line 179, in clearDisplay
Oct 28 10:08:38 ev3dev openrobertalab[1992]:     self.lcd.update()
Oct 28 10:08:38 ev3dev openrobertalab[1992]:   File "/usr/lib/python3/dist-packages/ev3dev/core.py", line 3320, in update
Oct 28 10:08:38 ev3dev openrobertalab[1992]:     self.mmap[:] = self._img.tobytes("raw", "1;IR")
Oct 28 10:08:38 ev3dev openrobertalab[1992]: IndexError: mmap slice assignment is wrong size
Oct 28 10:08:38 ev3dev openrobertalab[1992]: INFO:roberta:--- done ---

This is on the latest snapshot (snapshot-ev3dev-stretch-ev3-generic-2017-10-24.img.xz). The stretch-compatible ev3dev version is there, since leds are working:

>>> import ev3dev.ev3 as ev3
>>> ev3.Leds.all_off()

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