Ok boy and girls, now we may be in business… $10 for a WiFi chip! I’ve been eyeing this (the TI CC3000) chip for a while, but the low level SPI command API is not provided by TI, they only provide a driver for their devices. But now, an open-source Arduino driver has been written and that will likely be a do-able port. Particularly, in combination with mIP.
Looking at this driver, it looks like a great simplification! All I need for mIP are the raw packets out of the driver and I’m in business.
I’ll probably start with porting the commands to join the network. If I can do that, I’ll try porting the whole thing, as Apache 2.0 of course. Supposedly, this code is so small/simple, it can run on an AT-Tiny…
So, if you guys have made the modules, obviously you have been thinking of porting the TI driver into the .NET MF firmware with LWIP…
@ Aron, yes I would love to buy one. Can I buy one of those devices off you? It’s easy enough to wire up SPI, but I greatly prefer the simplicity of the Gadgeteer sockets.
Please tell us more about your project. I bought one of these months ago with the plans of making a module but haven’t had the time to even break the seal on it. I am very eager for this to be available as a cheap WiFi module.
This is for a native project, not NETMF. But you could easily copy and paste the TI driver into an interop library and have a few interop functions that call library code. You’d have to write a NativeEvent for receiving data, but otherwise, it’d be pretty straightforward.
As for communicating with the CC3000, you’d call HAL_GPIO and HAL_SPI functions. You need one interrupt handler for the IRQ pin, but the HAL_GPIO interrupt methods are easy to get going. Again, I think if you’re working in .NET, the trickiest thing is to get events fired from C into managed.
Jay brings up a good points, but we need a managed API. This device already has a TCP stack. The issue will be to wrap it in a .NET API. Preferably, one that is similar or the same as the standard .NET one. Stefan did something similar with the RN-XV here RN-XV WiFly Module driver - Project Showcase - Netduino Forums
Having said that, it still does not deter me in the least. I want to see this thing work with no compromises. I just ordered and received my first Arduino. I intend to make it work there with the arduino library and make sure I understand how it communicates with the help of my logic analyzer. Then, I’ll rewrite in managed code. In fact, it makes a lot of sense to make it all managed code, particularly if we use the embedded TCP stack.
@ Aron - That is quite a exciting photograph. I suppose it is a glimpse of something to expect in the near future? Are you at liberty to share any more info?.. like when do you expect it to hit the market and what features will be supported?
Does it still make sense to develop a driver for the CC3000 by myself or is GHI developing a CC3000 driver for the gadgeteer platform?
The pictures Aron posted look like GHI is doing something in this direction…
I am working on a managed driver right now. I don’t know if GHI has an independent effort or not. My driver will be Apache 2.0 open source and will likely be published on Codeplex once it starts to work. Currently I can connect to Wifi and send a UDP message using a socket. I expect all the basic functions to be working within the next month.
If you’re interested in helping, I can get you a drop of the current code base. It’s all C#.