Netduino home hardware projects downloads community

Jump to content


The Netduino forums have been replaced by new forums at community.wildernesslabs.co. This site has been preserved for archival purposes only and the ability to make new accounts or posts has been turned off.

HABOT's Content

There have been 5 items by HABOT (Search limited from 29-March 23)


By content type

See this member's

Sort by                Order  

#61273 Adafruit CC3300 shield N+2 issues

Posted by HABOT on 14 January 2015 - 10:12 PM in General Discussion

Hello RiC0MD,

 

I've create a git repository but it does require some extra work. I'll try to cast my code a little more to make the upload.

 

I used for a while a chinese reference (http://www.amazon.co...0?ie=UTF8&psc=1) and it worked fine in my tests since it uses AT commands through UART at maximum 230400 bps which is about an EDGE (2G) cellular modem. Also supports I2C Fm+ and Ethernet at 100Mbps which is awesome. It features a PHY support for a Ethernet port (requires some extra work explained in the documentation) and a fully featured TCP/IP stack ready to go.

 

It also supports AP mode with multiple security mechanisms and 32 socket handles (concurrent connections) opposite to the CC3000 that only supports 4 concurrent connections and has no support for AP mode.

 

By now I don't want to go back to work again a single minute on the CC3000 since I solved my wireless and wired problems long time ago.

 

As soon as I deliver the code on github, I'll make it public on this forum.




#61270 Adafruit CC3300 shield N+2 issues

Posted by HABOT on 14 January 2015 - 09:11 PM in General Discussion

Hi,

 

The CC3000 from TI is plenty of flaws! Almost a year ago, I created my own device driver for the Adafruit's CC3300 WiFi Breakout (see my remarks here http://www.amazon.co...howViewpoints=0) and after a month of long nights I quitted since I got a response code from the unit warning me about the outdated firmware! 

 

I tried to patch it by using the SPI port (as described in the documentation) but unsuccessfully! It does requires I2C patching (see the I2C - SDA/SCL port below your Adafruit CC3000 breakout = http://www.adafruit.com/products/1469 ). I never ever could find a single piece of documentation even a small description on the I2C protocol required to patch (I2C slave address seems to be 0x50). What registers do I need to access and modify, maybe timing or reset steps etc.

 

I just got frustration on this attempt to make it work. I moved forward to another options and my life was better!  ;)

 

I own some Netduino Plus 2 and I've tried some other development boards (FEZ Raptor, pcDuino v2, CubieBoard even raw PIC programming) but let me tell you something..., Netduino Plus 2 Rocks!!! This is a really really easy to use development board!! It is really fast and flexible enough. Programming C# is so easy. I've used almost all the available ports and also used the SD card as a swapping area to emulate more memory. I also created a bidrectional link over Ethernet (socket server) and works fast and steady.

 

I rather prefer to believe (by experience) that the problem is but your CC3000 not the Netduino ;)




#57812 Slow I/O to MicroSD

Posted by HABOT on 28 April 2014 - 09:05 PM in Netduino Plus 2 (and Netduino Plus 1)

Hi Chris, and thanks for your quick response!
 
Okey, I understand that maybe the bottleneck is not about the card itself but the speed of the SPI bus between the PIC and the SD driver.
 
Well, now I'm getting the most of memory buffers so I reutilize them as much as I can. Sensor data is now posted directly through a socket port to the AI MCU array. Now it works really fast but I feel a little sad because the sensor data acquisition MCU seems to be a little "misused" and the paging library is now just for exception and low pace state logging. I have many Netduino Plus 2 as handy weapons and after a long time trying them I know how to use them I'd say, very well. I hope to see a really nice improvement on this to put that SD really hot =)
 
Thanks again!



#57810 Slow I/O to MicroSD

Posted by HABOT on 28 April 2014 - 08:09 PM in Netduino Plus 2 (and Netduino Plus 1)

Hello,

 

I'm reading an array of sensor on a periodic basis (every 10 milliseconds) and making some pre-parsing on the data before posting data to another MCU. I try to take care of the almost 192KB of available RAM that NP2 supports but some times other background running processes just hang up when some memory limit is reached.

 

The operation I'm taking about is very memory consuming so I decided to implement a "memory swapping" strategy by creating a library that writes data to disk (MicroSD) based on file segments and data block layout. A worker thread reads the cursor on the swapping area and takes the data back when needed. Data cursor is administered by the library.

 

It works perfectly but It slowed down the core loop because writing to the MicroSD and then reading again at a high rate seems to be very expensive or just very slow. I tried to find a 2GB MicroSD with a higher speed Class than Class 2, but they don't exist.

 

I also tried by formatting the MicroSD with different FAT32 allocation blocks and it worked at maximum rate by allocating blocks of 4096 bytes (using one allocation block on many writings therefore avoiding continuos allocation).

 

 

I wonder if is there another strategy or way to perform I/O at a high rate on the microSD card avoiding this bottleneck?

 

thanks!




#57809 Good 74HC595 SPI example

Posted by HABOT on 28 April 2014 - 07:48 PM in Netduino Plus 2 (and Netduino Plus 1)

On the Slave Select (SS) or Chip Select over SPI I rather prefer using 2, 3 or 4 GIOP lines to handle a 2 to 4, 3 to 8 or a 4 to 16 lines priority encoder to perform SS / CS on the slaves.

 

If all slaves have tri-state MOSI/MISO/SCLK lines, there is no need for an additional tri-state bus driver to isolate these lines on the slaves. With this configuration the master can handle for instance 16 slaves with 4 extra GIOP lines.

 

The number of slaves plugged into the MOSI/MISO/SCLK is restricted only the cumulative capacitance on the bus that increments tau and dampers the signal. Also take into account the propagation delays introduced by extra ICs to comply with SPI CS/SCLK and maybe slave IRQs on the master.





home    hardware    projects    downloads    community    where to buy    contact Copyright © 2016 Wilderness Labs Inc.  |  Legal   |   CC BY-SA
This webpage is licensed under a Creative Commons Attribution-ShareAlike License.