Any chances kucher will work under Mac OSX?


(Ali Tlisov) #1

Hi! I just received my Myxa ESC and trying to make it work on my test rig. As I found no documentation yet (which I requested in different topic) I can not interpret its red LED flashing. So it not responds to my UAVCAN commands for now. I noticed there is kucher software to configure the ESC. Any chances I can found Mac OSX version of Кучер?


(Ali Tlisov) #2

Btw. Windows version is absent as well by the link provided in quickstart tutorial.


(Pavel Kirienko) #3

Hi Ali,

Currently only the Linux version is available. We will release the Windows version as well soon; as far as OS X goes, we do not plan to make any efforts in that direction, but we will gladly accept a pull request adding the missing features needed to make it work on that OS.

The sources of Kucher are available under GPLv3 at https://github.com/Zubax/kucher


(Ali Tlisov) #4

Maybe some pre-release or nightly builds are available for Kucher under Windows? Could you pls share? Unfortunately I do not have Linux at the moment on my laptop.


(Pavel Kirienko) #5

You can run Kucher directly from sources, no building necessary, it’s implemented in Python.


(Ali Tlisov) #6

Well I ran

pip3 install -r requirements.txt

As described on GitHub page inside separate python 3.7.0 Conda environment. It installed everything it wants. Then it had some issues with PyQt5 which I installed again from Conda repositories. I think I added quamash as well. Then I had to manually add construct module as it required by messages.py. Then it was claiming about probably some changed syntax of construct module:

File “kucher/model/device_model/communicator/messages.py”, line 339, in
‘entries’ / TaskStatisticsEntryFormatV1[7:8],
File “… miniconda3/envs/kucher/lib/python3.7/site-packages/construct/core.py”, line 672, in getitem
raise ConstructError(“subcon[N] syntax can only be used for Arrays, use GreedyRange(subcon) instead?”)
construct.core.ConstructError: subcon[N] syntax can only be used for Arrays, use GreedyRange(subcon) instead?

I tried to fix that in sources and now it claims about popcop missing.Which I’m not sure how to install correctly as plain copying gives Assert during import.

File “kucher/popcop/standard/register.py”, line 526, in
assert _decode_value(bytes([3, 0, 1, 2, 3])) == (ValueType.BOOLEAN, [False, True, True, True])
AssertionError

Bad luck still…


(Ali Tlisov) #7

Repeated with clean python 3.6 conda environment.

did

conda create --name kucher2 python=3.6 --no-default-packages

source activate kucher2

conda install pyqt

conda install numpy

conda install pytest

conda install pyserial

pip install quamash

conda install cython

pip install construct

And finally stuck at the same point with popcop missing or not working (producing Assert on import) if just plain copied.

Btw running test from popcop gives the same:

python popcop_test.py
Traceback (most recent call last):
File “popcop_test.py”, line 30, in
import popcop
File “… popcop/python/popcop/init.py”, line 37, in
from . import transport, standard, physical
File “… popcop/python/popcop/standard/init.py”, line 32, in
from . import register
File “… popcop/python/popcop/standard/register.py”, line 526, in
assert _decode_value(bytes([3, 0, 1, 2, 3])) == (ValueType.BOOLEAN, [False, True, True, True])
AssertionError


(Ali Tlisov) #8

And finally if I just comment the line 526 producing assert in popcop register.py source I get this

kucher/kucher/model/device_model/device_info_view.py", line 15, in
from popcop.standard import NodeInfoMessage
ImportError: cannot import name ‘NodeInfoMessage’

And I can’t find any mentions of NodeInfoMessage that kucher tries to import from popcop.


(Pavel Kirienko) #9

Replied to all on Github, let’s keep that conversation there. Kucher is still in its early days of v0.1, a lot remains to be done.