We are looking at using the new tiny wireless CC3000 chip from TI in one of our upcoming products. This chip allows WiFi connectivity to very small stuff (the chip itself is tiny) but requires some snazzy over-the-air configuration. TI offers binary libraries for doing this in Java and Objective-C (compiled for iOS only), but I’ve not been able to find anything in the form of a .dll or shared object or other library for desktop applications.
Question 1: Can I link to an external Java library (in a .jar file) from within a Xojo application? I’ve done this with .dll’s on windows in the past, but never with Java.
Question 2: Has anyone else out there already cracked this nut?
Java isn’t something you can “link” to
However IF your desktop has Java installed you may be able to run a java app that does the config in a shell
If you are using Windows for this project you could still wrap the Java functionality in the same way that you did before using an intermediary DLL. If this is going to be a cross platform solution then you could either produce a Java app as Norman suggests and communicate simple parameters using command line arguments or have something more complex where Xojo and the Java app communicate using some protocol defined by yourself using TCP Sockets. You could also consider creating a Java service application rather than starting the Java app from Xojo if the Java app needs to coordinate several clients or monitor state etc.
Have you explored all this: http://www.ti.com/product/cc3000#toolssoftware
I see SDK for Linux, I see Platform Independent Host Driver (in c), etc. I believe that if you explore all this info you can make what you need in C and produce a .so and .dll after.
Ok Kimball, I believe you are trying to use the Smart Config feature. See this and join the request .
Hi, Rick. Yup, we’ve explored all the tools / software that TI provides. Most of what you pointed to is actually intended for mucking about with the bits on the chip, not the desktop or other external software for SmartConfig.
That request on SmartConfig you pointed to is from my co-worker Brent - so, yup… that’s exactly what we are trying to do, and we’ve signed on.
At this point it looks like TI is not going to be playing ball, so we’ll have to either use the MBS java plugin (have not tried yet, but am hopeful will work fine) or wrap their library in a command-line java app. My biggest gripe with this is that not all computers have a JRE on them… we have a remote support solution for screen sharing with our customers that is web / java based, and about half the people that come and try to connect to us have to either update their JRE or install one fresh. That’s a TON of overhead for something that is supposed to be as simple and painless as TI claims their SmartConfig to be.
Agree 100%. TI should have a linkable (at least dynamically) library (or offer a C source) to make such features available to be used by ANY high level language. I personally hate Java. Keep insisting on this, if they change their minds, they will be the more benefited part of the agreement. Having just Java seems “the solution” of the lazy.