You will need BLED112 dongle and pylgbst library.
yum install python3 pip3 install pygatt pip3 install pexpect pip3 install https://github.com/undera/pylgbst/archive/1.0.tar.gz
now you can write your first program test.py:
from pylgbst.hub import MoveHub, COLOR_RED from time import sleep hub = MoveHub() hub.led.set_color(COLOR_RED) sleep(5) hub.disconnect()
and test it:
python3 test.py
The LED has been changed to red for 5 seconds.
Update: Simpler and newer version: LEGO Boost and Python - CentOS 7.
I've manage to control LEGO Boost using Python.
I've used CentOS 7, BLED112 dongle and pylgbst library.
There are a few command I have to run:
yum install rh-python36 /opt/rh/rh-python36/root/usr/bin/pip install pygatt /opt/rh/rh-python36/root/usr/bin/pip install https://github.com/undera/pylgbst/archive/0.9.tar.gz /opt/rh/rh-python36/root/usr/bin/pip install pexpect
now I can run first program (boost1.py):
from pylgbst.movehub import MoveHub hub = MoveHub() for device in hub.devices: print(device)
using command:
/opt/rh/rh-python36/root/usr/bin/python boost1.py 1 2 55 56 57 50 58 59 60
as you can see, there are list of devices IDs (1, 2, 55, 56, 57, 50, 58, 59, 60).
Let's try to do something (boost2.py):
from pylgbst.movehub import MoveHub, COLOR_RED hub = MoveHub() hub.led.set_color(COLOR_RED)
Yes! The LED has been changed to red.
To allow Spyder to access internet when behind a proxy server I used environment variables HTTP_PROXY and HTTPS_PROXY.
In Anaconda Prompt I typed:
set HTTP_PROXY=192.168.1.2:8080 set HTTPS_PROXY=192.168.1.2:8080 pip install graphviz
Settings in ~/.condarc file (as described in Using the .condarc...) didn't works:
proxy_servers: http: http://192.168.1.2:8080 https: https://192.168.1.2:8080
Chciałem przetestować edytor filmów OpenShot , ale zgłaszał dziwny błąd:
Error: OpenShot has not been installed in the Python path. (Both the site-packages and /usr/share/openshot folders were checked) Use the following command to install OpenShot: $ sudo python setup.py install
jakby były źle skonfigurowane ścieżki. Przeszukałem pliki (rpm -ql openshot) i spróbowałem uruchomić inną metodą
cd /usr/lib/python2.6/site-packages/openshot python openshot.py
i dostałem inny błąd
ImportError: No module named xdg.IconTheme
, który już łatwiej było naprawić:
urpmi pyxdg
Potem jeszcze jeden błąd:
ImportError: No module named httplib2
i kolejna "poprawka"
urpmi python-httplib2
Teraz działa bez problemów. Co prawda chciałby jeszcze bibliotekę frei0r (frei0r-plugins), ale to "tylko" dodatkowe efekty.
Ściągnąłem źródła:
cd /tmp wget http://download.edgewall.org/trac/Trac-1.0.tar.gz tar -xzf Trac-1.0.tar.gz cd Trac-1.0/
Za pierwszym razem nie przeczytałem dokładnie zawartości pliku INSTALL, więc doinstalowałem brakujący pakiet:
yum install python-setuptool
Zainstalowałem poleceniem:
python ./setup.py install
wygenerowałem środowisko
mkdir -p /var/lib/trac/pierwsze trac-admin /var/lib/trac/pierwsze initenv
i od razu nadałem sobie uprawnienia:
trac-admin /var/lib/trac/pierwsze permission add ja TRAC_ADMIN quit
Wygenerowałem strukturę katalogów poleceniem:
trac-admin /var/lib/trac/pierwsze deploy /var/www/trac/
i w pliku "/var/www/trac/tracother/cgi-bin/trac.wsgi" dopisałem:
os.environ['TRAC_ENV_PARENT_DIR'] = '/var/lib/trac' os.environ['PYTHON_EGG_CACHE'] = '/var/www/trac/eggs'
i zmieniłem
if not 'trac.env_parent_dir' in environ: environ.setdefault('trac.env_path', '/var/lib/trac/pierwsze')
na
if not 'trac.env_parent_dir' in environ: environ.setdefault('trac.env_parent_dir', '/var/lib/trac')
Założyłem wymagany katalog: "mkdir /var/www/trac/eggs"
Założyłem plik "/etc/httpd/conf.d/trac-wsgi.conf"
WSGIScriptAlias /trac /var/www/trac/cgi-bin/trac.wsgi <Directory /var/www/trac/cgi-bin> WSGIApplicationGroup %{GLOBAL} Order deny,allow Allow from all </Directory> <Location /trac> AuthType Digest AuthName "Dostep do repozytorium" AuthUserFile /var/lib/svn/haselka Require valid user </Location>
Na koniec nadałem uprawnienia do katalogów:
chown -R apache /var/lib/trac
i przeładowałem serwer:
/etc/init.d/httpd restart
Midnight Commander mimo licznych zalet nie miał powiązania plików *.py z python'em. Na szczęście da się to łatwo naprawić.
W swoim domowym katalogu utworzyłem plik .mc/bindings a w nim wstawiłem:
regex/\.py$ Open=python %f
po ponownym uruchomieniu mc wystarczy wcisnąć klawisz ENTER na pliku z rozszerzeniem py by go uruchomić.
Można to też zrobić globalnie w pliku /etc/mc/mc.ext ale nie każdy ma do uprawnienia zapisu do tego pliku.
Add comment