harmsm / PyCmdMessenger

Python interface for CmdMessenger arduino serial communication library
MIT License
80 stars 32 forks source link

Python 2.7 decoding problem #24

Open sphh opened 7 years ago

sphh commented 7 years ago

Hi Mike,

I had to change the line 624 in PyCmdMessenger.py to get it working:

             w = "Warning: Guessing input format for {}. This can give wildly incorrect values. Consider specifying a format and sending binary data.".format(value)
             warnings.warn(w,Warning)

-        tmp_value = value.decode()
+        tmp_value = value.decode('utf-8')

         try:
             float(tmp_value)

I don't know what caused it. I use PyCmdMessenger in Python 2.7 and all files have the following headers:

#!/usr/bin/env python2
# -*- coding: utf-8 -*-

from __future__ import unicode_literals

I have to admit, that the unicode stuff is not my strong point ;-), so I have no idea why it's needed in Python 2.x with from __future__ import unicode_literals, but not in Python 3.x!! I also don't have any idea what effect it might have on Python 3.x...

Stephan