vlachoudis / bCNC

GRBL CNC command sender, autoleveler and g-code editor
GNU General Public License v2.0
1.58k stars 533 forks source link

Serial/Pyserial autodetection mess #1297

Open montagsmodell opened 5 years ago

montagsmodell commented 5 years ago

I try to setup bCNC on Ubuntu 18.04.; With the command $ python2 -m bCNC in folder ~/Documents/bCNC-master/build/lib$ I get the following error:

` montagsmodell@Kepler:~/Documents/bCNC-master/build/lib$ python2 -m bCNC new-config Utils <ConfigParser.ConfigParser instance at 0x7fc6b601e248> Using fallback Utils.comports()! self.canvas.winfo_id(): 62914656 Traceback (most recent call last): File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main "main", fname, loader, pkg_name) File "/usr/lib/python2.7/runpy.py", line 72, in _run_code exec code in run_globals File "/home/montagsmodell/Documents/bCNC-master/build/lib/bCNC/main.py", line 2708, in main() File "/home/montagsmodell/Documents/bCNC-master/build/lib/bCNC/main.py", line 2676, in main application = Application(tk) File "/home/montagsmodell/Documents/bCNC-master/build/lib/bCNC/main.py", line 196, in init page = cls(self.ribbon, self) File "/home/montagsmodell/Documents/bCNC-master/build/lib/bCNC/CNCRibbon.py", line 115, in init self.register() File "/home/montagsmodell/Documents/bCNC-master/build/lib/bCNC/FilePage.py", line 392, in register (SerialFrame,)) File "/home/montagsmodell/Documents/bCNC-master/build/lib/bCNC/CNCRibbon.py", line 134, in _register w = f(self.master._pageFrame, self.app) File "/home/montagsmodell/Documents/bCNC-master/build/lib/bCNC/FilePage.py", line 253, in init self.comportRefresh() File "/home/montagsmodell/Documents/bCNC-master/build/lib/bCNC/FilePage.py", line 347, in comportRefresh for hw in i[2].split(' '): AttributeError: 'NoneType' object has no attribute 'split'

` Does anyone has the same issue and can help me set it up please?

TGit-Tech commented 5 years ago

I'm getting the exact same error. Windows 10 - Just followed exactly the Windows install procedure on the wiki. Python version 2.7.17

A fix or workaround would be great; I'm still searching.

UPDATE -- Did it working by uninstalling all installed pythons then reinstalling 2.7.17 64-bit and running 'pip install pyserial' which installed pyserial-3.4 after which 'pip install bCNC' uninstalled it and put on pyserial-3.0.1 (from memory I think it was 2.5 before uninstalling any pythons).

Not sure which part of that process was the fix; but it seems to be working fine now.

Harvie commented 4 years ago

Yes, the serial/pyserial situation is bit of a mess. Since the pyserial is drop in replacement for serial, but i think bCNC needs both installed in right order, or something like that. I am aware of this situation... I think i will add some tests to check the pyserial installation and inform user if there's something wrong with it...

ltspicer commented 4 years ago

After upgrade to LinuxMint 20 mate I get the error " AttributeError: 'NoneType' object has no attribute 'split' " (Before that I had to install numpy.)

$ ./bCNC ########################################### WARNING! THIS IS LEGACY MODE! DO NOT USE THIS IF YOU ARE A BCNC DEVELOPER GO TO REPOSITORY ROOT AND LAUNCH BCNC USING FOLLOWING COMMAND:

python2 -m bCNC ###########################################

new-config Utils <ConfigParser.ConfigParser instance at 0x7f247dbbaf00> Using fallback Utils.comports()! self.canvas.winfo_id(): 90177629 Traceback (most recent call last): File "./main.py", line 2675, in main() File "./main.py", line 2643, in main application = Application(tk) File "./main.py", line 196, in init page = cls(self.ribbon, self) File "/home/daniel/grbl/bCNC-master/bCNC/CNCRibbon.py", line 115, in init self.register() File "/home/daniel/grbl/bCNC-master/bCNC/FilePage.py", line 393, in register (SerialFrame,)) File "/home/daniel/grbl/bCNC-master/bCNC/CNCRibbon.py", line 134, in _register w = f(self.master._pageFrame, self.app) File "/home/daniel/grbl/bCNC-master/bCNC/FilePage.py", line 254, in init self.comportRefresh() File "/home/daniel/grbl/bCNC-master/bCNC/FilePage.py", line 348, in comportRefresh for hw in i[2].split(' '): AttributeError: 'NoneType' object has no attribute 'split'

Any suggestions?

EDIT: The solution from TGit-Tech works.

  1. sudo apt remove python2
  2. pip install pyserial
  3. sudo apt install python2
  4. sudo apt-get install -y python-tk

This solve the problem