No backend reported even after installing backend

198 views
Skip to first unread message

luckyp...@gmail.com

unread,
Jul 8, 2015, 3:03:37 PM7/8/15
to ope...@googlegroups.com
New here, purchased a Chipkit, followed all the instructions for getting everything going, installed the emulator chipkit firmware which I assume means the firmware has fake data for testing without the need to be connected to a vehicle? Anyways, when I run "openxc-control version" in the console I get a few lines of response and then it says no backend available.

I DID follow the instructions for installing the backend (Windows 8) which included having to disable the security setting so I could install the USB driver even though it was not signed but I still get the no backend error. I uploaded a screenshot to imgur so you can verify that I am not crazy. 


Please help? The only troubleshooting in the instructions is: this means you don't have a backend installed... but you can see from my screenshot that I followed the instructions.

I have already:
tried an administrator command prompt
restarted
verify pip install
verify pip openxc install
run command within 5 seconds of connecting USB.

For the record, I am using the MICRO USB port attached to the network shield when running the version command. And I used the MINI USB port on the arduino when flashing the emulator firmware.
Help?

Zac

unread,
Jul 8, 2015, 3:45:25 PM7/8/15
to ope...@googlegroups.com
Hello! Welcome to OpenXC :) Glad to hear you got the Chipkit all setup.

A quick question: are you powering the Max32 board as well as the network shield? It looks like you might have it connected, but just want to confirm. The power jumper is mentioned here: http://chipkit-vi.openxcplatform.com/assembly/jumper.html

If power is OK, then I might suggest running version 6.0.3 of the firmware here: https://github.com/openxc/vi-firmware/releases/tag/v6.0.3 as I haven't recently tested with version 7 on the Chipkit device. Someone else here on the forum might have experience with v7 on a chipkit. If so, please chime in!

Thanks,

- Zac

Zac

unread,
Jul 8, 2015, 4:12:47 PM7/8/15
to ope...@googlegroups.com
Also have a look at this issue on the openxc-python project related to Windows 8.1: https://github.com/openxc/vi-windows-driver/issues/1

- Zac

luckyp...@gmail.com

unread,
Jul 8, 2015, 5:12:24 PM7/8/15
to ope...@googlegroups.com
Hello, thanks for getting back to me quickly.

I do have the power jumper from JP4 pin1 to the 5V output as shown in the instructions.
I have downloaded and flashed to 6.0.3 build 2 emulator chipkit firmware with the same results. It shows up in windows devices & printers as well as device manager but reports that there is no backend.

Thanks for the link - it may come in handy later on after i get past this issue, but at the start of that thread the user reported not being able to get the device to show up / install the driver due to driver signing issues. I have dealt with this issue in the past and was able to get by this step easily getting the driver installed. Then, he was getting an error but ALSO the correct response. In my case I am not getting any response other than no backend and the lines preceding it as shown in my image.

At the end of that topic someone mentions that the _Curses library is missing from python in the windows installer and that it had to be installed manually. I am not sure whether that applied to me so I tried to install it following his link I was able to download the wheel file but when I tried to install with pip it said the file is not compatible with this platform. Which is weird because it has "win" in the file name and I tried the AMD64 version (I have a 64bit PC with 64bit windows) and after the first error I even tried the x86 version. Not sure why that won't install but according to the information in the thread it was only needed to get the dashboard? working not to get command line or USB backend working.

Other thoughts I can / should try?

luckyp...@gmail.com

unread,
Jul 9, 2015, 1:32:05 PM7/9/15
to ope...@googlegroups.com
I feel like I should also mention that I went through the whole procedure on my laptop as well and have reached the same outcome. So either I am very consistent in doing something wrong, or there is a problem.

I figure it might help if I list the steps I have taken for setup & installation and if I missed something or did it in the wrong order maybe someone will see it.

1) Buy parts (ChipKit Arduino & Network shield fom Digilent, plus header pins and housings, OBD-II cable etc)
2) Assemble chipkit & shield, connect 5vo to J4 pin 1 of network shield (verified pins three times), terminate OBD-II cable and connect to network shield
3) Install FTDI USB driver for ChipKit Arduino (mini USB)
4) Install WinAVR (option to add to PATH is checked)
5) Connect Chipkit to PC to verify FTDI driver and note COM port # (then unplug)
6) Connect Chipkit to PC and within 5 seconds run upload_hex.bat to flash firmware. I don't know if there is a verification step after flashing but the result said "avrdude.exe: done. Thank you." I did not see any errors. Note 1: my paths all have spaces so I am using the upload_hex.bat described here: https://github.com/openxc/vi-firmware/issues/322, Note 2: Have tried to flash firmware files: vi-emulator-firmware-CHIPKIT-ctv6.0.3.hex as well as vi-emulator-firmware-CHIPKIT-ctv7.0.0.hex and do not see a difference between them with regard to the backend issue.
7) Install Python 2.7.8 from .msi
8) Updated my PATH variable to include Python27/Scripts. Note: there was no folder called "Scripts" in my python directory - so I created one. Later it got filled with some openxc files but it did not exist at this step.
9) Did python get-pip.py in the console to install pip.
10) Did pip install -U openxc in the console to install the openxc library?
11) Plug in Micro-USB on the shield to my PC, after it failed to find a driver used the device manager to manually install the USB backend driver. This required restarting Windows 8 into a mode that allows unsigned drivers.
12) Restart PC
13) Did openxc-control version in the console and got the results shown in the original post. Tried again after reconnecting the micro-USB connection within 5 seconds in case it was a sleep issue.
14) Followed steps 1-13 on my laptop. Same results.

Have I missed something? I need to get this working.

luckyp...@gmail.com

unread,
Jul 13, 2015, 2:19:23 PM7/13/15
to ope...@googlegroups.com
I have now tried to follow the exact same instructions as listed in my previous post but on a third PC running WindowsXP and that WORKED. When I run the version command I get one error but it also displays the version (7.0.0 right now). I have followed the steps to install the Curses library as was suggested in the other topic but it does not affect my error:

Can't read logs from data source -- stopping: ("USB device coudn't be read", USBError(None, 'USB_reap: timeout error'))
But then it shows:
Device is running version 7.0.0 (default)

As far as I can tell the only differences in installation include 1) running the x86 version of Python 2.7.8 rather than the AMD64 version 2) the backend USB .inf file would have of course installed differently as well.

Unfortunately, this does not help me as I cannot bring my desktop out to my car and my laptop runs Windows 8. I even used the same downloaded files for the installation on all 3 PC's I don't get why it won't work on my Windows 8 PC's unless Windows 8 is not supported. I'm not sure what else to try.

Gerry Y

unread,
Jul 13, 2015, 5:49:51 PM7/13/15
to ope...@googlegroups.com
I just tried on my Windows 8 machine and the FordBoard VI and it looks like it is working.  To test, I flashed the emulator firmware from the vi-firmware site (https://github.com/openxc/vi-firmware/releases/download/v7.0.0/openxc-vi-firmware-v7.0.0.zip).  I'm trying to recall what I did differently from your steps but don't remember anything special -- sorry I've done the setup months ago.
I don't remember testing on a Chipkit but I'll see if I can find one and I will test there too. 

C:\Python27\Scripts>openxc-control.exe version
Can't read logs from data source -- stopping: ("USB device couldn't be read", USBError(None, 'usb_reap: timeout error'))
Device is running version 7.0.0 (default)

C:\Python27\Scripts>openxc-control.exe  -h
usage: openxc-control-script.py [-h]
                                [--usb | --serial | --bluetooth | --network | --trace TRACE_FILE]
                                [--usb-vendor USB_VENDOR]
                                [--usb-product USB_PRODUCT]
                                [--bluetooth-address BLUETOOTH_ADDRESS]
                                [--serial-port SERIAL_PORT]
                                [--serial-baudrate BAUDRATE]
                                [--network-host NETWORK_HOST]
                                [--network-port NETWORK_PORT]
                                [--log-mode {off,stderr,file}]
                                [--format {json,protobuf}] [--name WRITE_NAME]
                                [--id WRITE_ID] [--bus BUS]
                                [--value WRITE_VALUE] [--event WRITE_EVENT]
                                [--data WRITE_DATA]
                                [--frame-format {standard,extended}]
                                [-f WRITE_INPUT_FILE] [--passthrough]
                                [--no-passthrough] [--af-bypass]
                                [--no-af-bypass]
                                [--new-payload-format {json,protobuf}]
                                {version,write,id,set}

Send control messages to an attached OpenXC vehicle interface

positional arguments:
  {version,write,id,set}

luckyp...@gmail.com

unread,
Jul 14, 2015, 9:21:09 AM7/14/15
to ope...@googlegroups.com
Thanks for posting. This is what I see when I use an XP computer, but not EITHER of my 64-bit Windows 8.1 PCs. I have also tried uninstalling and reinstalling the driver but it has made no difference. I tried the emulator firmware from both v6 and v7 firmware. The fact that it works on Windows XP would indicate to me that it's not a firmware issue.

Is your Windows 8 PC 64-bit? Are you using Python 2.7.8?
I can only theorize that there must be some difference, or some bug in the 64-bit version of Python 2.7.8 or with the 64bit driver files that is not allowing an interaction to Python.

I have even tried to set python to run with administrator privileges and in Windows 7 compatibility mode but that seems to have caused more problems. Same with openxc-control.exe. Since they didnt work I reverted the settings back to normal.

Christopher Peplin

unread,
Jul 14, 2015, 9:24:50 AM7/14/15
to openxc@googlegroups com
I would give the 32-bit Python for Windows a try - now that you mentioned it, I recall reading some bad reports about that online back when we were first adding Windows support. There's no reason need to run the 64-bit version unless you need access to a ton of memory - the 32-bit will run fine. I wish I could help more but I don't have Windows 8, unfortunately.

--
You received this message because you are subscribed to the Google Groups "OpenXC" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openxc+un...@googlegroups.com.
Visit this group at http://groups.google.com/group/openxc.
To view this discussion on the web visit https://groups.google.com/d/msgid/openxc/dde5bf5a-6e23-4773-96bc-b4ee98e33ecd%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

Gerry Y

unread,
Jul 14, 2015, 9:31:41 AM7/14/15
to ope...@googlegroups.com
I can confirm that Chipkit hardware works on Windows 8.  I just flashed the default Chipkit emulator and ran an openxc-control version...Most of the time I get the expected output version (7.0.0) but sometimes I get None...maybe a separate issue but it works.  See log below. 

 Note: In programming mode ---- using mini-USB
C:\Users\me\Documents\GitHub\vi-firmware\script>c:\WinAVR-20100110\bin\avrdude.exe -C ..\conf\avrdude.conf -q -V -p 32MX795F512L -c stk500v2 -b 115200 -P COM12 -U flash:w:vi-emulator-firmware-CHIPKIT-ctv7.0.0.hex:i

avrdude.exe: AVR device initialized and ready to accept instructions
avrdude.exe: Device signature = 0x504943
avrdude.exe: NOTE: FLASH memory has been specified, an erase cycle will be performed
             To disable this feature, specify the -D option.
avrdude.exe: current erase-rewrite cycle count is -1145324613 (if being tracked)
avrdude.exe: erasing chip
avrdude.exe: reading input file "vi-emulator-firmware-CHIPKIT-ctv7.0.0.hex"
avrdude.exe: writing flash (227748 bytes):
avrdude.exe: 227748 bytes of flash written

avrdude.exe: safemode: Fuses OK

avrdude.exe done.  Thank you.


C:\Users\me\Documents\GitHub\vi-firmware\script>cd ..\..\..\..\..

Note: In normal mode ---- using micro-USB from Network shield
C:\Users\me>openxc-control version
Can't read logs from data source -- stopping: ("USB device couldn't be read", USBError(None, 'usb_reap: timeout error'))
Device is running version 7.0.0 (default)

C:\Users\me>openxc-control version
Can't read logs from data source -- stopping: ("USB device couldn't be read", USBError(None, 'usb_reap: timeout error'))
Device is running version None


C:\Users\me>openxc-control version
Can't read logs from data source -- stopping: ("USB device couldn't be read", USBError(None, 'usb_reap: timeout error'))
Device is running version 7.0.0 (default) 

C:\Users\me>python --version
Python 2.7.8


Gerry Y

unread,
Jul 14, 2015, 9:38:32 AM7/14/15
to ope...@googlegroups.com
Yes try 32-bit as Chris mentioned.  I have 64-bit windows8 but installed 32-bit

C:\Users\me>python
Python 2.7.8 (default, Jun 30 2014, 16:03:49) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

luckyp...@gmail.com

unread,
Jul 17, 2015, 10:01:49 AM7/17/15
to ope...@googlegroups.com
I am happy to report that this was the solution. Despite installing correctly and never providing an error to indicate it, the 64-bit python does not seem to work for openXC.
I uninstalled it and installed the 32bit version of python and everything seems to be working correctly. I installed the curses library as indicated in the link provided earlier in this thread for Windows (not sure if that part of the thread was for only Windows 8 or all Windows versions) and am able to get the dashboard to display data from the emulator firmware.

Not to hijack, but it is my own thread - I've followed the guides and there seems to be a lot of info on how to write your own apps in android but with python it stops here at the smoke test. I've opened the control and dashboard python scripts but I cannot even find any referenced to the openXC variable names. Is there documentation on how these scripts are working or how to create my own like there is for android development? I thought the point of openXC was to have easy API interface using the variable names like "engine_speed" so how can these scripts work without using those API calls? Don't have to have a huge discussion in this off-topic, but does anyone have a link to this information?

Eric Marsman

unread,
Jul 17, 2015, 11:42:35 AM7/17/15
to ope...@googlegroups.com
Hi Lucky,

Glad that's working! Thanks Gerry & Chris.

As to Python, did you see this: http://python.openxcplatform.com/en/master/index.html

Regards,
Eric
Reply all
Reply to author
Forward
0 new messages