Need testers for USBcode

More
27 Apr 2013 00:00 - 20 Apr 2015 16:19 #9253 by PhracturedBlue
Need testers for USBcode was created by PhracturedBlue
Update: See this post for the current version (0.6.1) which is fully functional (and now has a working GUI):
www.deviationtx.com/forum/7-development/...bcode?start=20#31428


EDIT: I also uploaded 0.1a which works on my win7 x64 machine. Please test both versions is possible and provide feedback

I am starting to work on a dfuse replacement tool for installing the firmware into the radio.

As one of the primary goals is to be able to be cross-platform compatible, I am trying to find a reasonable solution that allows easy portability, easy install, but provides USB access.

Even though it isn't my favorite language, Java is the obvious 1st choice for building an application that will run on all platforms without my needing to compile on each one.

However, I am having difficulty getting USB to work on all platforms.

I have provided a jar file below, and would like reports on testing on:
Linux-64bit (as a normal user and as root)
Linux-32bit (as a normal user and as root)
Windows-64bit (with and without admin privledges)
Windows-32-bit (with and without admin privledges)
Mac OSX

Run from a cmdline as:
java -jar <path to jar file>
The code simply scans all usb devices connected. Ideally you'd run it with at least one USB device plugged in, but it isn't strictly necessary.

You can find the code that generated the jar here:
bitbucket.org/PhracturedBlue/deviation-upload

I have tested on 64bit Linux (works only as root on one box, and without root on another)
And on Win-7-64 (crashes...fixed in 0.1a)

I need to ensure it works on all platforms before I put any effort into writing the actual code.
Attachments:
Last edit: 20 Apr 2015 16:19 by PhracturedBlue.

Please Log in or Create an account to join the conversation.

More
27 Apr 2013 04:59 #9260 by sbstnp
Replied by sbstnp on topic Need testers for USBcode
Linux 32bit VM passthrough mode, VirtualBox host software. Same output for both unprivileged user and root.
Windows 7 Home Edition 64bit, both crashes, regardless of admin or non-admin user. Logs attached.

user@deviation-build-station-32 ~/deviation-upload> java -version
java version "1.7.0_17"
OpenJDK Runtime Environment (IcedTea7 2.3.8) (ArchLinux build 7.u17_2.3.8-1-i686)
OpenJDK Client VM (build 23.7-b01, mixed mode)
user@deviation-build-station-32 ~/deviation-upload> java -jar DeviationUpload-0.1-jar-with-dependencies.jar
user@deviation-build-station-32 ~/deviation-upload> java -jar DeviationUpload-0.1a-jar-with-dependencies.jar
0483:df11 -> 00/00 fe/01
0483:df11 -> 00/01 fe/01
0483:df11 -> 00/02 fe/01
80ee:0021 -> 00/00 03/00

Devo 10 + 4in1
Spektrum Dx9
FrSky Taranis + TBS Crossfire
Attachments:

Please Log in or Create an account to join the conversation.

More
27 Apr 2013 05:28 #9264 by PhracturedBlue
Replied by PhracturedBlue on topic Need testers for USBcode
Can you run 'java -version'? This looks like it may be a case of 32bit java on 64-bit windows. I think that is a known issue with the USB code and the only fix is to install the 64bit Java.

Please Log in or Create an account to join the conversation.

More
27 Apr 2013 05:41 - 27 Apr 2013 05:45 #9267 by sbstnp
Replied by sbstnp on topic Need testers for USBcode
It probably is, I have a 32bit JRE installed on this machine. Will test with 64bit.

Edit:

Windows 64 Home Edition, 64bit JRE, no crashes:

0.1 - no output
0.1a - works

Devo 10 + 4in1
Spektrum Dx9
FrSky Taranis + TBS Crossfire
Last edit: 27 Apr 2013 05:45 by sbstnp.

Please Log in or Create an account to join the conversation.

More
27 Apr 2013 07:07 - 27 Apr 2013 10:21 #9268 by Pixel166
Replied by Pixel166 on topic Need testers for USBcode
Output with 0.1a, on MacOS X 10.7.5 (64bits):

user, without USB device plugged
MacBook-Pro:Deviation pixel$ java -jar DeviationUpload-0.1a-jar-with-dependencies.jar 
05ac:0253 -> 00/00 03/01
05ac:0253 -> 01/00 03/00
05ac:0253 -> 02/00 03/01
user, with Devo6S plugged in USB mode
MacBook-Pro:Deviation pixel$ java -jar DeviationUpload-0.1a-jar-with-dependencies.jar 
0483:5720 -> 00/00 08/06
05ac:0253 -> 00/00 03/01
05ac:0253 -> 01/00 03/00
05ac:0253 -> 02/00 03/01
root, without USB device plugged
MacBook-Pro:Deviation pixel$ sudo java -jar DeviationUpload-0.1a-jar-with-dependencies.jar 
05ac:0253 -> 00/00 03/01
05ac:0253 -> 01/00 03/00
05ac:0253 -> 02/00 03/01
root, with Devo6S plugged in USB mode
MacBook-Pro:Deviation pixel$ sudo java -jar DeviationUpload-0.1a-jar-with-dependencies.jar 
0483:5720 -> 00/00 08/06
05ac:0253 -> 00/00 03/01
05ac:0253 -> 01/00 03/00
05ac:0253 -> 02/00 03/01
Java version:
MacBook-Pro:Deviation pixel$ java -version
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06-451-11M4406)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01-451, mixed mode)
Last edit: 27 Apr 2013 10:21 by Pixel166.

Please Log in or Create an account to join the conversation.

More
27 Apr 2013 12:34 #9270 by BitOne
Replied by BitOne on topic Need testers for USBcode
Test on Debian 7.0 Linux Kernel 3.8 amd64

Test with a standard user:
$ java -version
java version "1.7.0_03"
OpenJDK Runtime Environment (IcedTea7 2.1.7) (7u3-2.1.7-1)
OpenJDK 64-Bit Server VM (build 22.0-b10, mixed mode)

Nothing external plugged in on USB port.
lsusb output
$ lsusb 
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 003: ID 04f2:b2e6 Chicony Electronics Co., Ltd 
Bus 003 Device 004: ID 8087:07da Intel Corp.

0.1 JAR
$ java -jar DeviationUpload-0.1-jar-with-dependencies.jar
no output, return code = 0

0.1a JAR
$ java -jar DeviationUpload-0.1a-jar-with-dependencies.jar 
8087:07da -> 00/00 e0/01
8087:07da -> 01/00 e0/01
8087:07da -> 01/01 e0/01
8087:07da -> 01/02 e0/01
8087:07da -> 01/03 e0/01
8087:07da -> 01/04 e0/01
8087:07da -> 01/05 e0/01
04f2:b2e6 -> 00/00 0e/01
04f2:b2e6 -> 01/00 0e/02
04f2:b2e6 -> 01/01 0e/02
04f2:b2e6 -> 01/02 0e/02
04f2:b2e6 -> 01/03 0e/02
04f2:b2e6 -> 01/04 0e/02
04f2:b2e6 -> 01/05 0e/02
04f2:b2e6 -> 01/06 0e/02
04f2:b2e6 -> 01/07 0e/02
04f2:b2e6 -> 01/08 0e/02
04f2:b2e6 -> 01/09 0e/02
04f2:b2e6 -> 01/0a 0e/02
04f2:b2e6 -> 01/0b 0e/02

Plugging a USB key (mass storage) (sorry, no Deviation TX at hand right now)
$ lsusb
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 007: ID 05e3:0727 Genesys Logic, Inc. microSD Reader/Writer
Bus 003 Device 003: ID 04f2:b2e6 Chicony Electronics Co., Ltd 
Bus 003 Device 004: ID 8087:07da Intel Corp. 

0.1 JAR
$ java -jar DeviationUpload-0.1-jar-with-dependencies.jar
Still no output, return code = 0

0.1a JAR
8087:07da -> 00/00 e0/01
8087:07da -> 01/00 e0/01
8087:07da -> 01/01 e0/01
8087:07da -> 01/02 e0/01
8087:07da -> 01/03 e0/01
8087:07da -> 01/04 e0/01
8087:07da -> 01/05 e0/01
05e3:0727 -> 00/00 08/06
04f2:b2e6 -> 00/00 0e/01
04f2:b2e6 -> 01/00 0e/02
04f2:b2e6 -> 01/01 0e/02
04f2:b2e6 -> 01/02 0e/02
04f2:b2e6 -> 01/03 0e/02
04f2:b2e6 -> 01/04 0e/02
04f2:b2e6 -> 01/05 0e/02
04f2:b2e6 -> 01/06 0e/02
04f2:b2e6 -> 01/07 0e/02
04f2:b2e6 -> 01/08 0e/02
04f2:b2e6 -> 01/09 0e/02
04f2:b2e6 -> 01/0a 0e/02
04f2:b2e6 -> 01/0b 0e/02

Test with the root user

Nothing external plugged in on USB port.
lsusb output
# lsusb
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 003: ID 04f2:b2e6 Chicony Electronics Co., Ltd 
Bus 003 Device 004: ID 8087:07da Intel Corp.

0.1 JAR
# java -jar DeviationUpload-0.1-jar-with-dependencies.jar 
04f2:b2e6 -> 00/00 0e/01
04f2:b2e6 -> 01/00 0e/02
04f2:b2e6 -> 01/01 0e/02
04f2:b2e6 -> 01/02 0e/02
04f2:b2e6 -> 01/03 0e/02
04f2:b2e6 -> 01/04 0e/02
04f2:b2e6 -> 01/05 0e/02
04f2:b2e6 -> 01/06 0e/02
04f2:b2e6 -> 01/07 0e/02
04f2:b2e6 -> 01/08 0e/02
04f2:b2e6 -> 01/09 0e/02
04f2:b2e6 -> 01/0a 0e/02
04f2:b2e6 -> 01/0b 0e/02
8087:07da -> 00/00 e0/01
8087:07da -> 01/00 e0/01
8087:07da -> 01/01 e0/01
8087:07da -> 01/02 e0/01
8087:07da -> 01/03 e0/01
8087:07da -> 01/04 e0/01
8087:07da -> 01/05 e0/01

0.1a JAR
# java -jar DeviationUpload-0.1a-jar-with-dependencies.jar 
8087:07da -> 00/00 e0/01
8087:07da -> 01/00 e0/01
8087:07da -> 01/01 e0/01
8087:07da -> 01/02 e0/01
8087:07da -> 01/03 e0/01
8087:07da -> 01/04 e0/01
8087:07da -> 01/05 e0/01
04f2:b2e6 -> 00/00 0e/01
04f2:b2e6 -> 01/00 0e/02
04f2:b2e6 -> 01/01 0e/02
04f2:b2e6 -> 01/02 0e/02
04f2:b2e6 -> 01/03 0e/02
04f2:b2e6 -> 01/04 0e/02
04f2:b2e6 -> 01/05 0e/02
04f2:b2e6 -> 01/06 0e/02
04f2:b2e6 -> 01/07 0e/02
04f2:b2e6 -> 01/08 0e/02
04f2:b2e6 -> 01/09 0e/02
04f2:b2e6 -> 01/0a 0e/02
04f2:b2e6 -> 01/0b 0e/02

Plugging a USB key (mass storage)
lsusb
# lsusb
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 008: ID 05e3:0727 Genesys Logic, Inc. microSD Reader/Writer
Bus 003 Device 003: ID 04f2:b2e6 Chicony Electronics Co., Ltd 
Bus 003 Device 004: ID 8087:07da Intel Corp.

0.1 JAR
# java -jar DeviationUpload-0.1-jar-with-dependencies.jar 
05e3:0727 -> 00/00 08/06
04f2:b2e6 -> 00/00 0e/01
04f2:b2e6 -> 01/00 0e/02
04f2:b2e6 -> 01/01 0e/02
04f2:b2e6 -> 01/02 0e/02
04f2:b2e6 -> 01/03 0e/02
04f2:b2e6 -> 01/04 0e/02
04f2:b2e6 -> 01/05 0e/02
04f2:b2e6 -> 01/06 0e/02
04f2:b2e6 -> 01/07 0e/02
04f2:b2e6 -> 01/08 0e/02
04f2:b2e6 -> 01/09 0e/02
04f2:b2e6 -> 01/0a 0e/02
04f2:b2e6 -> 01/0b 0e/02
8087:07da -> 00/00 e0/01
8087:07da -> 01/00 e0/01
8087:07da -> 01/01 e0/01
8087:07da -> 01/02 e0/01
8087:07da -> 01/03 e0/01
8087:07da -> 01/04 e0/01
8087:07da -> 01/05 e0/01

0.1a JAR
# java -jar DeviationUpload-0.1a-jar-with-dependencies.jar 
05e3:0727 -> 00/00 08/06
8087:07da -> 00/00 e0/01
8087:07da -> 01/00 e0/01
8087:07da -> 01/01 e0/01
8087:07da -> 01/02 e0/01
8087:07da -> 01/03 e0/01
8087:07da -> 01/04 e0/01
8087:07da -> 01/05 e0/01
04f2:b2e6 -> 00/00 0e/01
04f2:b2e6 -> 01/00 0e/02
04f2:b2e6 -> 01/01 0e/02
04f2:b2e6 -> 01/02 0e/02
04f2:b2e6 -> 01/03 0e/02
04f2:b2e6 -> 01/04 0e/02
04f2:b2e6 -> 01/05 0e/02
04f2:b2e6 -> 01/06 0e/02
04f2:b2e6 -> 01/07 0e/02
04f2:b2e6 -> 01/08 0e/02
04f2:b2e6 -> 01/09 0e/02
04f2:b2e6 -> 01/0a 0e/02
04f2:b2e6 -> 01/0b 0e/02

Please Log in or Create an account to join the conversation.

More
27 Apr 2013 13:53 #9272 by PhracturedBlue
Replied by PhracturedBlue on topic Need testers for USBcode
Overall, responses look positive. I'm going to go forward and add enough code to connect to a transmitter. We'll see how that goes.

Summary from above (for 0.1a):
Linux: 32bit and 64bit both tested and working without root
Win64: tested and working without admin
Mac-OSX-64bit: tested and working without root
Win32: untested

Thanks everyone.

Please Log in or Create an account to join the conversation.

More
30 Apr 2013 04:16 #9360 by PhracturedBlue
Replied by PhracturedBlue on topic Need testers for USBcode
Here is another release I'd like some testing on.
You should ensure your Devo transmitter is plugged in and in programming mode.

Running successfully will produce something like:
Found: DFU [00483:df11] cfg=1, intf=0, alt=0, name='@Internal Flash  '
Found: DFU [00483:df11] cfg=1, intf=0, alt=1, name='@SPI Flash: Config'
Found: DFU [00483:df11] cfg=1, intf=0, alt=2, name='@SPI Flash: Library'
Determining device status: statue=dfuERROR status=10
dfuERROR, clearing status
Determining device status: statue=dfuIDLE status=0
dfuIDLE, continuing
  Setting address pointer to 0x8000400
   Poll timeout 104 ms
bytes_per_hash=1024
Starting upload
Walkera DEVO-08 Radio Controller : 4716ff35 39324632 43218023
It is that last string that I want to see.

I already know this version will not work with Windows. On windows you'll get something like:
Found: DFU [00483:df11] cfg=1, intf=0, alt=0, name='Unknown'
Found: DFU [00483:df11] cfg=1, intf=0, alt=1, name='Unknown'
Found: DFU [00483:df11] cfg=1, intf=0, alt=2, name='Unknown'
Error: Unable to open device

I tested and it DOES work when run from a Linux VM ma chine inside windows though (as root).

It turns out that we can't access the Devo Tx on Windows because the DFuSe driver intercepts the data and prevents us from communicating. This can be resolved by replacing the DFuSe driver with the lib-usb one, but while it isn't hard to go back and forth, I don't think it is worth the risk at this point for most people. I'm mostly interested in Mac and Linux responses at this point.

This version of the code tests the tx->PC transfer, but does not test the PC->tx transfer (i.e 'upgrade') Ihave that code written, and am working on testing it now. The output (when successful) is your unique transmitter id. No other transmitter will have the same value. It is used to encode the dfu file during installation.
Attachments:

Please Log in or Create an account to join the conversation.

More
30 Apr 2013 04:46 - 30 Apr 2013 04:48 #9363 by sbstnp
Replied by sbstnp on topic Need testers for USBcode
Working with:
java version "1.7.0_17"
OpenJDK Runtime Environment (IcedTea7 2.3.8) (ArchLinux build 7.u17_2.3.8-1-i686)
OpenJDK Client VM (build 23.7-b01, mixed mode)

Non-privileged
user@deviation-build-station-32 ~/host> java -jar DeviationUpload-0.2-jar-with-dependencies.jar
Found: DFU [00483:df11] cfg=1, intf=0, alt=0, name='Unknown'
Found: DFU [00483:df11] cfg=1, intf=0, alt=1, name='Unknown'
Found: DFU [00483:df11] cfg=1, intf=0, alt=2, name='Unknown'
Error: Unable to open device

Root
user@deviation-build-station-32 ~/host> sudo java -jar DeviationUpload-0.2-jar-with-dependencies.jar
Found: DFU [00483:df11] cfg=1, intf=0, alt=0, name='@Internal Flash  '
Found: DFU [00483:df11] cfg=1, intf=0, alt=1, name='@SPI Flash: Config'
Found: DFU [00483:df11] cfg=1, intf=0, alt=2, name='@SPI Flash: Library'
Determining device status: statue=dfuERROR status=10
dfuERROR, clearing status
Determining device status: statue=dfuIDLE status=0
dfuIDLE, continuing
  Setting address pointer to 0x8000400
   Poll timeout 104 ms
bytes_per_hash=1024
Starting upload
Walkera DEVO-10 Radio Controller : 8e2ff34 32304833 43237708

Devo 10 + 4in1
Spektrum Dx9
FrSky Taranis + TBS Crossfire
Last edit: 30 Apr 2013 04:48 by sbstnp.

Please Log in or Create an account to join the conversation.

More
30 Apr 2013 04:56 #9365 by sbstnp
Replied by sbstnp on topic Need testers for USBcode
Same on my native 64bit machine:
Found: DFU [00483:df11] cfg=1, intf=0, alt=0, name='@Internal Flash  '
Found: DFU [00483:df11] cfg=1, intf=0, alt=1, name='@SPI Flash: Config'
Found: DFU [00483:df11] cfg=1, intf=0, alt=2, name='@SPI Flash: Library'
Determining device status: statue=dfuERROR status=10
dfuERROR, clearing status
Determining device status: statue=dfuIDLE status=0
dfuIDLE, continuing
  Setting address pointer to 0x8000400
   Poll timeout 104 ms
bytes_per_hash=1024
Starting upload
Walkera DEVO-10 Radio Controller : 8e2ff34 32304833 43237708

Devo 10 + 4in1
Spektrum Dx9
FrSky Taranis + TBS Crossfire

Please Log in or Create an account to join the conversation.

More
30 Apr 2013 06:43 #9370 by domcars0
Replied by domcars0 on topic Need testers for USBcode
Hi,
On my Ubuntu 12.04.
% java -version
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)


As user :
% java -jar DeviationUpload-0.2-jar-with-dependencies.jar
Found: DFU [00483:df11] cfg=1, intf=0, alt=0, name='Unknown'
Found: DFU [00483:df11] cfg=1, intf=0, alt=1, name='Unknown'
Found: DFU [00483:df11] cfg=1, intf=0, alt=2, name='Unknown'
Error: Unable to open device


As root:
# java -jar DeviationUpload-0.2-jar-with-dependencies.jar
Found: DFU [00483:df11] cfg=1, intf=0, alt=0, name='@Internal Flash '
Found: DFU [00483:df11] cfg=1, intf=0, alt=1, name='@SPI Flash: Config'
Found: DFU [00483:df11] cfg=1, intf=0, alt=2, name='@SPI Flash: Library'
Determining device status: statue=dfuERROR status=10
dfuERROR, clearing status
Determining device status: statue=dfuIDLE status=0
dfuIDLE, continuing
Setting address pointer to 0x8000400
Poll timeout 104 ms
bytes_per_hash=1024
Starting upload
Walkera DEVO-10 Radio Controller : 4bf1ff39 37364733 43086435

Devo 10 (+7e) owner. It's mine, please don't touch it with your big fingers :angry:

Please Log in or Create an account to join the conversation.

More
30 Apr 2013 09:39 #9382 by Pixel166
Replied by Pixel166 on topic Need testers for USBcode
Tested on Mac OS X 1.7.5. Devo 6S

Java version:
MacBook-Pro:Deviation pixel$ java -version
java version "1.6.0_45"
Java(TM) SE Runtime Environment (build 1.6.0_45-b06-451-11M4406)
Java HotSpot(TM) 64-Bit Server VM (build 20.45-b01-451, mixed mode)
User :
MacBook-Pro:Deviation pixel$ java -jar DeviationUpload-0.2-jar-with-dependencies.jar 
Found: DFU [00483:df11] cfg=1, intf=0, alt=0, name='@Internal Flash  '
Found: DFU [00483:df11] cfg=1, intf=0, alt=1, name='@SPI Flash: Config'
Found: DFU [00483:df11] cfg=1, intf=0, alt=2, name='@SPI Flash: Library'
Determining device status: statue=dfuERROR status=10
dfuERROR, clearing status
Determining device status: statue=dfuIDLE status=0
dfuIDLE, continuing
  Setting address pointer to 0x8000400
   Poll timeout 104 ms
bytes_per_hash=1024
Starting upload
Walkera DEVO-06 Radio Controller : 3126ff38 39335532 43091362
Root (sudo):
MacBook-Pro:Deviation pixel$ sudo java -jar DeviationUpload-0.2-jar-with-dependencies.jar 
Found: DFU [00483:df11] cfg=1, intf=0, alt=0, name='@Internal Flash  '
Found: DFU [00483:df11] cfg=1, intf=0, alt=1, name='@SPI Flash: Config'
Found: DFU [00483:df11] cfg=1, intf=0, alt=2, name='@SPI Flash: Library'
Determining device status: statue=dfuUPLOAD-IDLE status=0
aborting previous incomplete transfer
Determining device status: statue=dfuIDLE status=0
dfuIDLE, continuing
  Setting address pointer to 0x8000400
   Poll timeout 104 ms
bytes_per_hash=1024
Starting upload
Walkera DEVO-06 Radio Controller : 3126ff38 39335532 43091362

Please Log in or Create an account to join the conversation.

More
30 Apr 2013 12:52 #9397 by PhracturedBlue
Replied by PhracturedBlue on topic Need testers for USBcode
Thanks everyone.
So everything works as expected so far.

Please Log in or Create an account to join the conversation.

More
03 May 2013 04:55 - 03 May 2013 04:56 #9489 by PhracturedBlue
Replied by PhracturedBlue on topic Need testers for USBcode
Ok, after a lot more banging my head against the wall, here it is.

Version 0.5 of the DeviationUpload code.
Current capabilities:
* It can upload a dfu to the radio (either Deviation or Walkera's firmware) for the lib, or FW.
* It can download the off-chip ROM to the PC (but not the firmware)
* It will automatically install the dfu properly regardless of type (fw to FLASH, lib to external ROM)
* It will not allow you to install a FW for the wrong radio (i.e. you'll get an error if you try to install a devo10 FW onto a devo8)
** NOTE: It does NOT yet detect whether the library is appropriate for your radio!
* It is very hard to get the 'send to tx' mixed up with the 'receive from tx'

Usage:
Show help:
java -jar DeviationUpload-0.5-jar-with-dependencies.jar -h

List info about plugged in tx:
java -jar DeviationUpload-0.5-jar-with-dependencies.jar -list

Send a dfu to the radio:
java -jar DeviationUpload-0.5-jar-with-dependencies.jar -send -dfu <file.dfu>

It works fine when run from a linux VM on Win7-64

I still don't recommend running it directly on Windows becasue it won't work without replacing the Walkera USB driver (which means DFuse will stop working)

I have tested it on my Devo 7e, 8, 10, and 12 successfully.

It should not be possible for it to damage your radio (though if there's a bug you may need to go back the DFuse to reinstall the firmware)


There is no GUI yet, so at the moment you need to use the cmdline. I will implement a GUI eventually, but I'm probably going to take a break from this for a while to work more on Deviation itself, as I really dislike Java programming.
Attachments:
Last edit: 03 May 2013 04:56 by PhracturedBlue.

Please Log in or Create an account to join the conversation.

More
03 May 2013 07:02 - 03 May 2013 07:22 #9491 by domcars0
Replied by domcars0 on topic Need testers for USBcode
Thank you very much PB! No need to boot Windows anymore to upgrade my Devo! Great!
And you know what ? It works!!!

Devo 10 (+7e) owner. It's mine, please don't touch it with your big fingers :angry:
Last edit: 03 May 2013 07:22 by domcars0.

Please Log in or Create an account to join the conversation.

More
03 May 2013 09:24 #9498 by sbstnp
Replied by sbstnp on topic Need testers for USBcode
Thanks, works beautifully. I'll patch my Makefile for something like
make TARGET=devo10 flash

Devo 10 + 4in1
Spektrum Dx9
FrSky Taranis + TBS Crossfire

Please Log in or Create an account to join the conversation.

More
19 May 2013 22:34 #10116 by PhracturedBlue
Replied by PhracturedBlue on topic Need testers for USBcode
In case anyone is wondering what is going on with this, I've been wokring on a foolproof GUI for installing Deviation (or the Walkera firmware):



The capabilities will include:

* Ability to instal from zip files
* Auto detect transmitter, filesystem and firmware and disallow installation of the models don't match
* Auto-detect whether firmware/filesystem is Walkera or Deviation and enable/disable options as needed
* Disallow Walkera firmware install with Deviation Filesystem and vice-versa
* Ability to install a new filesystems without updating the tx.ini or models
* Ability to format the Tx if needed
* Automatically install protocol modules on devo7e
* Automatically deal with the split root/media filesystem on the devo12

You will, of course, also have the ability to just install a dfu with only the model-match checks if you want. We have contniued to have difficulty with users not following all of the steps to install Deviation properly, and I'm hopeful this will make it easier for everyone.

I have a lot of the code working except for the formatting and filesystem management stuff which I am working on.
Attachments:

Please Log in or Create an account to join the conversation.

  • Raimili
  • Raimili's Avatar
  • Offline
  • DEVO 12S "Slope-Gliders" wellcome
More
20 May 2013 01:37 #10119 by Raimili
Replied by Raimili on topic Need testers for USBcode
Hi PB,
do you still looking for testers? (win64bit, admin)

greetz
Raimund

...(hoping that anyone creates a simple Mixer GUI (Sailplane) for noopes like me)

Please Log in or Create an account to join the conversation.

More
20 May 2013 02:54 #10125 by PhracturedBlue
Replied by PhracturedBlue on topic Need testers for USBcode
Not at the moment. When the GUI work is done, I'll ask for some more help most likely.

Please Log in or Create an account to join the conversation.

More
09 Aug 2013 19:58 #12875 by jb57
Replied by jb57 on topic Need testers for USBcode
do you have any idea when you'll the coding completed? I am one those unlucky ones that the Walkera DevoDfuSe_vx.x (tried all versions from 1.4 through two releases of 1.7). None will run on either my 32 bit Vista or 64 bit Windows 7 machines. Walkera's brilliant idea is to uninstall the operating system and go back to XP.
Very frustrated, I have both a Devo 7E and 10 that have firmware updates pending.

Please Log in or Create an account to join the conversation.

Time to create page: 0.075 seconds
Powered by Kunena Forum