Arduino won't connect to the internet via the Wifi Module - Page 1
Forum section: electronics / general

author: 2slow4me
author_rank: Newbie
timestamp: September 29, 2017, 03:22:21 pm
content: Hey guys, i got a problem in a project that i'm working on. The idea of the project is to send sensor data to Arduino, and then to send that data using the CC3000 module to the internet. I'm using CC3000 Click by Mikroelektronika (another huge thanks to the people from this forum who gave me tips how to desolder two pins that i've done a sloppy job with). Now, i'm using the library/schematic/example from this link:https://learn.sparkfun.com/tutorials/cc3000-hookup-guide#cc3000-library-installationand the WebCLient example from that list. The problem is, the code wont initialize the device. There's a section in the code that's supposed to let you know whether the device has managed to initialize or not, and mine just doesn't even print that out (picture attached).I've done the schematic again, although i would like to note, i don't have a level shifter so i used a voltage divider (3x10kOhhm resistor when i'm sending from Arduino to Wifi, so it's 5V(arduino)->Voltage divider->3.3(Wifi module), and a circuit with a Si Diode and a 10k Resistor to up the voltage level from 3.3V to 5V (i'll provide a picture.).i would really like some help with this, since i'm stuck and need to finish this as quickly as i can. Thanks again in advance, hope you guys can help me out

author: kripton2035
author_rank: Super Contributor
timestamp: September 29, 2017, 03:46:18 pm
content: just think it would be waaaaayyyyy easier with an esp8266 moduleand cheaper too.

author: 2slow4me
author_rank: Newbie
timestamp: September 29, 2017, 03:50:13 pm
content: I already have this module gifted to me, that's why i'm using it

author: kripton2035
author_rank: Super Contributor
timestamp: September 29, 2017, 03:52:11 pm
content: the esp8266 module contains an arduino, and the wifi module. it is not only a wifi module.so you have no problem communicating between the two as they are in the same chip...

author: 2slow4me
author_rank: Newbie
timestamp: September 29, 2017, 03:57:29 pm
content: I understand, however i have these components at my disposal currently, which is why I'm using them. Besides, i'm trying to figure out why it won't work in this case, there will be time to learn the ESP

author: hermit
author_rank: Frequent Contributor
timestamp: September 29, 2017, 04:40:48 pm
content: Since it stops at SPI you might want to consider getting one of those cheap USB logic analyzers off sleazebay. That has the added benefit of even greater learning potential.

author: 2slow4me
author_rank: Newbie
timestamp: September 29, 2017, 04:50:24 pm
content: By the time it gets to Serbia, my project will be due :That's why i'm trying to figure it out like this

author: edavid
author_rank: Super Contributor
timestamp: September 29, 2017, 05:13:50 pm
content: I think you need a better level shifter between the CC3000 and the Arduino. Can you get a 74HC4050 in Serbia?

author: sasa
author_rank: Regular Contributor
timestamp: September 29, 2017, 06:04:48 pm
content: I do not really understand your schematic...You are blocking 3.3V signal by diode from module output pin and arduino input pin receive constant 5V from power supply through 10K?You do not really need any level shifting when 5V arduino receive 3.3V signal, it will recognize it fine. If you want to be certain (for instance if arduino pin is by mistake set as output), you may use only a schottky diode from module to arduino pin, for instance 2N5819. I used that during experimentation on breadboard, before I have bought dozen of 4050...The 4050 is cheap and easily available. If you cannot find 74HC4050, search for HEF4050.As well, 10K and 20K voltage divider may provide less than minimum require current...

author: martinayotte
author_rank: Regular Contributor
timestamp: September 29, 2017, 06:53:34 pm
content: CC3000 is a simply crappy/buggy module !!!More than 3 years ago, I've tried to use that module, doing a TCP stress test to a TCP server on CC3000 side, it hang within 2 hours, no way to recover unless doing a power-recycle.Searching on the web, I quickly figured out on several forums, including TI forum, that several people faced the same thing ...Asking for TI comments, no one answered for 6 months, then one TI employee answered that no fix will be done for this CC3000 issue, and that we are better using newer CC3100.

author: TK
author_rank: Super Contributor
timestamp: September 29, 2017, 08:17:08 pm
content: You don't need any level shifting going from CC3000 to the Arduino. Level shifting using a voltage divider is not good for high speed bus like SPI. You can use a MOSFET based level shifter:http://www.hobbytronics.co.uk/mosfet-voltage-level-converter

author: 2slow4me
author_rank: Newbie
timestamp: September 30, 2017, 12:57:13 am
content: Ok, then just for safety let me check about my connections:Interrupt pin (IRQ) and SDO (Serial data out - MISO) are CC3000 output pins. The rest (CS, Enable, MOSI, SCK=clock) are Arduino output-CC3000 input? If someone can confirm by looking at the library example code i would be grateful, since i'd rather not burn out the module

author: sasa
author_rank: Regular Contributor
timestamp: September 30, 2017, 05:48:32 am
content: That should be correct - look at the libraries and pinMode() settings.Any SPI output signal from 5V to 3.3V device should be level shifted, otherwise direction not (see image).Tip #13:http://ww1.microchip.com/downloads/en/DeviceDoc/chapter%208.pdfYou may try to put small signal diode or schottky (signal from 3.3V to 5V device), however that may work for lower SPI speed only. If the signal comes from 3.3V device to 5V Arduino (ATmega 328p) is above 2.6V, should be recognized as '1':33.1.9. and 34.1.9. Pin Threshold and Hysteresis:http://www.atmel.com/Images/Atmel-42735-8-bit-AVR-Microcontroller-ATmega328-328P_Datasheet.pdf