Translate

UPDATE #2 - pymata-aio and pyserial

The author of pyserial has released version 3.0.1 and this resolves the incompatibility issues with pymata-aio.

To upgrade pyserial to 3.0.1, please use the following "pip" command:

pip install pyserial --upgrade

UPDATE: pyserial 3.0 and pymata-aio

There have been some changes implemented in the pyserial github repository. I did a local pip install using the latest repository code and it solves the problems. 

These changes are not yet available on pypi, but as soon as the upcoming release is available I will verify that it is compatible with pymata-aio, and announce the results here.

pyserial 3.0 and pymata-aio


When pip installing pymata-aio, the latest version of pyserial is also installed.

pymata-aio was developed and tested using pyserial 2.7. The latest version of pyserial is now version 3.0. This latest release of pyserial changed the writeTimeout parameter to write_timeout, resulting in an exception to be thrown as shown below.

Here is a simple example based on using the pyserial 2.7 api:

import serial

my_serial = serial.Serial('/dev/ttyACM0', 57500, timeout=1, writeTimeout=1)

And here is output when using pyserial 3.0:

$ python3 sertest.py
Traceback (most recent call last):
  File "sertest.py", line 3, in 
    my_serial = serial.Serial('/dev/ttyACM0', 57500, timeout=1, writeTimeout=1)
TypeError: __init__() got an unexpected keyword argument 'writeTimeout'

I am working with the pyserial author to resolve the issue. If you are seeing this error, you can force pyserial 2.7 to be loaded using the following pip command:

pip install pyserial==2.7

s2aio
Updated To Version 7


French block translations have been updated for both Scratch and Snap!.

A bug was fixed for Snap!

Digital input data was not being reported correctly when using Snap!.


s2aiomulti

Version 1.3 Released



This release includes a tkinter based graphical board configuration editor. Documentation for the editor may be found on the wiki here.

If you are using an older version of the program, you will need to create a new routing map using the editor.

Simultaneously Control, Monitor and Interconnect Up to 10 Arduinos With s2aiomulti


I have just released a new package called s2aiomulti, that allows you to control and monitor multiple Arduino boards from a single instance of Scratch 2.0 off-line.

Not only can you monitor and control multiple boards individually, you can also pass data from one Arduino to another!

The package contains 2 main software components, the s2aiomulti router and the s2aiomulti Arduino Server. The router interacts with Scratch and dispatches commands to the appropriate s2aiomulti Arduino server. When data updates are reported by an active Arduino board to its associated s2aiomult Arduino server, the data update is dispatched to the router.  The router then forwards the information to the appropriate reporter block.

s2aiomulti uses Python 3.5 and Python asyncio. 

Arduinos can be connected via USB cable or via WiFi (WiFi was tested using a Sparkfun RedBot with WiFly module).

Build your own personal Arduino IoT network!


pymata-aio v2.8

Has Been Released


This is a bug fix release for a Windows specific issue. The timer resolution for Windows is larger than that for Linux or Mac and in some cases causes a lag in data reporting for analog data. Thank you Guido van Rossum for pointing out the timer differences.

There was bug I discovered in testing out the Latch Data feature and this was repaired as well. What is the Latch Data feature? You can check out an explanation on the Wiki page.

In addition, the code has been refactored for better efficiency.

Thanks go to Dave Fisher and Leigh Mathews for help in verifying this release.

To install:

pip install pymata-aio

To upgrade:

pip install pymata-aio --upgrade

Notes: 
  • Linux/Mac users may need to use sudo to install or upgrade. 
  • Use the "pip3" command if you have that installed on your computer instead of "pip".