Working with wixel and Raspberry Pi 3

Hi,

I have tried working with a raspberry pi 3 connected to a wixel application.

I was not able to get it working. I have tried a few images, including 2016-03-18-raspbian-jessie-lite.img, ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img and even the MS image.

So, for windows there are no arm wixel drivers and no instructions on how to get them.

For ubunto, I get the following error:
dmesg cdc_acm 1-1.5:1.0: failed to set dtr/rts

So, is there a way to get it working with RPI 3? (some other linux image to try or windows drivers?)

Hello.

It is not clear to me from your description what could be causing the issue. What are you trying to do with the Raspberry Pi 3 and the Wixel application? When you try to use your Wixel application, what error message do you get? What Wixel app are you trying to run? Can you provide a link to its source code (if possible)? I suggest using Raspbian since it is pretty popular and it is the distribution we are most familiar with, but Ubuntu should work too.

- Amanda

Hi,

So, I have made some more experiments with my application. (also replaced the cable).
The thing that maters to me, is that my application prints every second or so.
I want to open screen and get that printing. you can find the application here:


under the directory:
apps\dexterity_wixel_no_sleep_debug\dexterity_wixel_no_sleep_debug.wxl

I have installed “Linux raspberrypi 4.4.9-v7+ #884 SMP Fri May 6 17:28:59 BST 2016 armv7l GNU/Linux”
When the wixel was connected to the pi, I have rebooted it and got the following error:

dmesg:
[   84.979159] usb 1-1.2: reset low-speed USB device number 5 using dwc_otg
[  280.559155] usb 1-1.2: reset low-speed USB device number 5 using dwc_otg

So, I have disconnected the wixel from the pi and connected it and now I can see my messages.
This seems to happen twice already. Doesn’t work after reboot, but works after manual connecting.

Is there any recomended application for me to use?

Is there a way for the wixel to work even on reboot?

Thanks
Tzachi

Here is what I get when runnig with dmesg when it works:

pi@raspberrypi:~ $ dmesg | grep -i usb
[    0.144240] usbcore: registered new interface driver usbfs
[    0.144350] usbcore: registered new interface driver hub
[    0.144467] usbcore: registered new device driver usb
[    2.533391] usbcore: registered new interface driver smsc95xx
[    3.128098] dwc_otg 3f980000.usb: DWC OTG Controller
[    3.140353] dwc_otg 3f980000.usb: new USB bus registered, assigned bus number 1
[    3.156450] dwc_otg 3f980000.usb: irq 62, io mem 0x00000000
[    3.189959] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    3.205229] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    3.221176] usb usb1: Product: DWC OTG Controller
[    3.232985] usb usb1: Manufacturer: Linux 4.4.9-v7+ dwc_otg_hcd
[    3.246768] usb usb1: SerialNumber: 3f980000.usb
[    3.259203] hub 1-0:1.0: USB hub found
[    3.280735] usbcore: registered new interface driver usb-storage
[    3.569545] usbcore: registered new interface driver usbhid
[    3.569548] usbhid: USB HID core driver
[    3.688555] usb 1-1: new high-speed USB device number 2 using dwc_otg
[    3.888901] usb 1-1: New USB device found, idVendor=0424, idProduct=9514
[    3.958961] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    3.975419] hub 1-1:1.0: USB hub found
[    4.298564] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[    4.422737] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00
[    4.438640] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    4.503605] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-3f980000.usb-1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:9f:2c:f0
[    4.618581] usb 1-1.4: new full-speed USB device number 4 using dwc_otg
[    4.758681] usb 1-1.4: New USB device found, idVendor=1ffb, idProduct=2200
[    4.758690] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    4.758697] usb 1-1.4: Product: Wixel
[    4.758703] usb 1-1.4: Manufacturer: Pololu Corporation
[    4.758710] usb 1-1.4: SerialNumber: A7-0A-47-BC
[    5.468570] usb 1-1.2: new low-speed USB device number 5 using dwc_otg
[    5.609578] usb 1-1.2: New USB device found, idVendor=1d57, idProduct=ad02
[    5.625164] usb 1-1.2: New USB device strings: Mfr=1, Product=1, SerialNumber=2
[    5.661103] usb 1-1.2: Product: Feeling-tech-USB product
[    5.661113] usb 1-1.2: Manufacturer: Feeling-tech-USB product
[    5.661122] usb 1-1.2: SerialNumber: FM8PU86-Ver0E-0000
[    5.707875] input: Feeling-tech-USB product Feeling-tech-USB product as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2/1-1.2   :1.0/0003:1D57:AD02.0001/input/input0
[    5.759995] hid-generic 0003:1D57:AD02.0001: input,hiddev0,hidraw0: USB HID v1.10 Keyboard [Feeling-tech-USB product Feeling-te   ch-USB product] on usb-3f980000.usb-1.2/input0
[    5.781669] input: Feeling-tech-USB product Feeling-tech-USB product as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2/1-1.2   :1.1/0003:1D57:AD02.0002/input/input1
[    5.838991] hid-generic 0003:1D57:AD02.0002: input,hidraw1: USB HID v1.10 Mouse [Feeling-tech-USB product Feeling-tech-USB prod   uct] on usb-3f980000.usb-1.2/input1
[    7.356032] cdc_acm 1-1.4:1.0: ttyACM0: USB ACM device
[    7.357222] usbcore: registered new interface driver cdc_acm
[    7.357242] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    7.425148] usbcore: registered new interface driver brcmfmac
[  164.742931] usb 1-1.4: USB disconnect, device number 4
[  167.028574] usb 1-1.4: new full-speed USB device number 6 using dwc_otg
[  167.138597] usb 1-1.4: New USB device found, idVendor=1ffb, idProduct=2200
[  167.138617] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  167.138630] usb 1-1.4: Product: Wixel
[  167.138642] usb 1-1.4: Manufacturer: Pololu Corporation
[  167.138654] usb 1-1.4: SerialNumber: A7-0A-47-BC
[  167.140031] cdc_acm 1-1.4:1.0: ttyACM0: USB ACM device

From your description, it sounds like you are having trouble communicating with the Wixel from the Raspberry Pi if the Wixel was plugged in while the Raspberry Pi rebooted. After briefly looking at your code, it looks like you are not using the usbComTxSendByte function properly. You should be calling usbComTxAvailable() to check for buffer space before calling usbComTxSendByte.

- Amanda

Thank you very much for your answer Amanda

It seems to solve my problem.

Tzachi