Ik heb persoonlijk wat moeite met het uit elkaar houden van wat je nu naast elkaar aan het testen bent en wat er in je screenshots staat (de commando's staan er niet altijd in, geloof ik)
Onderstaand is gedaan met het Python3 package van SynoCommunity. Daarvan weet ik dat het werkt, en daarnaast mist het Synology package wat modules die ik hieronder gebruik.
Eerst zet ik een virtualenv op, in `/volume1/pyserial`. Dit is optioneel, maar wel een goed idee. Je krijgt als het ware een kopie van Python in de /bin folder van je virtualenv, en er is een scheiding met andere Python installaties (het oorspronkelijke Python package blijft wel nodig). Dus:
DS4458> /usr/local/python3/bin/python3 /usr/local/python3/bin/virtualenv /volume1/pyserial/env
Using base prefix '/usr/local/python3'
New python executable in /volume1/pyserial/env/bin/python3
Also creating executable in /volume1/pyserial/env/bin/python
Installing setuptools, pip...done.
Hierna installeer ik pyserial dmv `pip`. Stukken makkelijker dan downloaden van een tar, uitpakken en installeren. We willen wel `pip` in de venv gebruiken, niet de system-wide pip of die van een ander package, vandaar het pad.
Pip en het vorige commando, virtualenv, zitten niet in het Synology Python package, mede daarom gebruik ik het package van SynoCommunity.
DS4458> cd /volume1/pyserial #de venv die we hiervoor maakten, zit dus in de /env dir
DS4458> ./env/bin/pip install pyserial
Downloading/unpacking pyserial
Downloading pyserial-2.7.tar.gz (122kB): 122kB downloaded
Running setup.py (path:/volume1/pyserial/env/build/pyserial/setup.py) egg_info for package pyserial
Detected Python 3, using 2to3
Installing collected packages: pyserial
Running setup.py install for pyserial
Skipping implicit fixer: buffer
Skipping implicit fixer: idioms
Skipping implicit fixer: set_literal
Skipping implicit fixer: ws_comma
changing mode of build/scripts-3.4/miniterm.py from 644 to 755
Skipping implicit fixer: buffer
Skipping implicit fixer: idioms
Skipping implicit fixer: set_literal
Skipping implicit fixer: ws_comma
Detected Python 3, using 2to3
changing mode of /volume1/pyserial/env/bin/miniterm.py to 755
Successfully installed pyserial
Cleaning up...
Nu kunnen we controleren of serial te importeren is. Dit heeft geen praktische waarde overigens, maar het kan helpen met troubleshooten. We openen een Python console (in de virtualenv), daarna importeren we serial:
DS4458> ./env/bin/python
Python 3.4.1 (default, Sep 16 2014, 08:14:00)
[GCC 4.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import serial
>>>
<ctrl-D> om de console te verlaten. Geen foutmelding, import is dus goed gegaan.
Ook kunnen we miniterm aanroepen:
DS4458> ./env/bin/miniterm.py
--- Available ports:
--- /dev/ttyS0 ttyS0
--- /dev/ttyS1 ttyS1
Als ik het goed begrijp gebruik je weer een ander script om miniterm oid aan te roepen? Dan kun je dat script aanroepen via /volume1/pyserial/env/bin/python <jouw_script.py> (rekening houdende met de virtualenv). Mocht dat niet werken, dan even de foutmelding + naar een online kopie van dat script linken, dat is makkelijker te reproduceren.