Show Posts
Pages: [1]
1  Using Arduino / Programming Questions / Re: using Textfinder library with Adafruit CC3000 on: March 25, 2014, 01:42:19 pm
Thank you, zoomkat!  I will give this a try tonight. 
2  Using Arduino / Programming Questions / Re: using Textfinder library with Adafruit CC3000 on: March 24, 2014, 08:57:03 pm
Oh I'm sorry, I wasn't trying to be sarcastic.  I do love Adafruit!  I'm certain the problem lies in my C skills and Textfinder seemed like an easy path to my end goal. 

After reading a ton of your (zoomkat) and PaulS's previous posts, I think that I want to create a char array and only store the data I'm interested in to use in my sketch. 
3  Using Arduino / Programming Questions / Re: using Textfinder library with Adafruit CC3000 on: March 24, 2014, 06:54:23 pm
The lovely people at Adafruit let me know that I can't use TextFinder and the CC3000.   Adafruit is awesome. 

Quote
TextFinder is expecting an argument of type Class Stream. Adafruit_CC3000_Client is subclassed from Class Print, not Stream. You can't pass it to TextFinder.
4  Using Arduino / Programming Questions / using Textfinder library with Adafruit CC3000 on: March 23, 2014, 10:38:31 pm
Hi,

I'm working on a project to change some LED's based on a data on a webpage.  Right now I'm able to connect to my wireless router and print the contents of the webpage to my serial monitor using a WebClient example from Adafruit.  I would now like to grab my target data from the incoming stream. 

I've read about char arrarys but I'm in over my head there.  I was thinking that a good option would be to use the TextFinder library but I do not know how to 'pair' my CC3000 module/library to the TextFinder functions since it was written for the Ethernet library. 

What would I use instead of "client" below? 
Code:
TextFinder finder( client );

Correct me if I'm wrong, but I think that my CC3000 sketch uses "www" instead of "client" for it's commands. 

Code:
Adafruit_CC3000_Client www = cc3000.connectTCP(ip, 80);\

But when I use "TextFinder finder( www );"  I get the following error message.  Is it even possible to use the Adafruit_CC3000 library and TextFinder? 

Quote
In function 'int getWaves()':
139: error: no matching function for call to 'TextFinder::TextFinder(Adafruit_CC3000_Client&)'
C:\Users\sam\Documents\Arduino\libraries\TextFinder/TextFinder.h:63: note: candidates are: TextFinder::TextFinder(Stream&, int)
C:\Users\sam\Documents\Arduino\libraries\TextFinder/TextFinder.h:43: note:                 TextFinder::TextFinder(const TextFinder&)


Here is my full code.  Thanks for reading!

Code:
/***************************************************
 * This is an example for the Adafruit CC3000 Wifi Breakout & Shield
 *
 * Designed specifically to work with the Adafruit WiFi products:
 * ----> https://www.adafruit.com/products/1469
 *
 * Adafruit invests time and resources providing this open source code,
 * please support Adafruit and open-source hardware by purchasing
 * products from Adafruit!
 *
 * Written by Limor Fried & Kevin Townsend for Adafruit Industries. 
 * BSD license, all text above must be included in any redistribution
 ****************************************************/
#include <Adafruit_CC3000.h>
#include <ccspi.h>
#include <SPI.h>
#include <string.h>
#include "utility/debug.h"
#include <TextFinder.h>
#include <Adafruit_NeoPixel.h>
#define PIN 2
Adafruit_NeoPixel strip = Adafruit_NeoPixel(12, PIN, NEO_GRB + NEO_KHZ800);

// These are the interrupt and control pins
#define ADAFRUIT_CC3000_IRQ   3  // MUST be an interrupt pin!
// These can be any two pins
#define ADAFRUIT_CC3000_VBAT  5
#define ADAFRUIT_CC3000_CS    10
Adafruit_CC3000 cc3000 = Adafruit_CC3000(ADAFRUIT_CC3000_CS, ADAFRUIT_CC3000_IRQ, ADAFRUIT_CC3000_VBAT,
SPI_CLOCK_DIV2);

#define WLAN_SSID       "wifi"           
#define WLAN_PASS       "pass"
#define WLAN_SECURITY   WLAN_SEC_WPA
#define IDLE_TIMEOUT_MS  3000     
#define WEBSITE      "feeds.feedburner.com"
#define WEBPAGE      "/surfline-rss-surf-report-south-san-diego"

uint32_t ip;

void setup(void)
{
  strip.begin();
  colorWipe(strip.Color(255, 0, 255), 50); 
  Serial.begin(115200);
}

void loop() {
  initWifi();
  deleteOldConn();
  connectWifi();
  requestDCHP();
  int wreq=getWaves();
  delay(10000);

}

// Fill the neopixels one after the other with a color
void colorWipe(uint32_t c, uint8_t wait) {
  for(uint16_t i=0; i<strip.numPixels(); i++) {
    strip.setPixelColor(i, c);
    strip.show();
    delay(wait);
  }
}

//Start up cc3000 wifi chip
void initWifi(void){
  Serial.println(F("CC3000 and beyond\n"));
  Serial.print("Free RAM: ");
  Serial.println(getFreeRam(), DEC);
  Serial.println(F("\nInitialising the CC3000 ..."));
  if (!cc3000.begin())
  {
    Serial.println(F("Unable to initialise the CC3000! Check your wiring?"));
    while(1);
  }
}

// Delete any old connection data on the module
void deleteOldConn(void){
  Serial.println(F("\nDeleting old connection profiles"));
  if (!cc3000.deleteProfiles()) {
    Serial.println(F("Failed!"));
    while(1);
  }
}

//connect to wireless network
void connectWifi(void){
  /* Attempt to connect to an access point */
  char *ssid = WLAN_SSID;             /* Max 32 chars */
  Serial.print(F("\nAttempting to connect to "));
  Serial.println(ssid);
  if (!cc3000.connectToAP(WLAN_SSID, WLAN_PASS, WLAN_SECURITY)) {
    Serial.println(F("Failed!"));
    while(1);
  }

  Serial.println(F("Connected!"));
  Serial.println(F("\n"));
}


// Wait for DHCP to complete
void requestDCHP(){
  Serial.println(F("Requesting DHCP..."));
  while (!cc3000.checkDHCP())
  {
    delay(100); // ToDo: Insert a DHCP timeout!
  } 
  Serial.println(F("DCHP Done."));
  Serial.println(F("\n\n"));
}

// search for wave data
int getWaves(){
  uint32_t ip = 0;
  String readString = "";
  Serial.println(F("Connecting to website..."));
  while  (ip  ==  0)  {
    if  (!  cc3000.getHostByName(WEBSITE, &ip))  {
      Serial.println(F("Couldn't resolve!"));
    }
    delay(500);
  } 
  cc3000.printIPdotsRev(ip); 

  Adafruit_CC3000_Client www = cc3000.connectTCP(ip, 80);
  \
  //TextFinder finder( www );

  Serial.println(F("Text Return:"));
  if (www.connected()) {
    www.fastrprint(F("GET "));
    www.fastrprint(WEBPAGE);
    www.fastrprint(F(" HTTP/1.1\r\n"));
    www.fastrprint(F("Host: "));
    www.fastrprint(WEBSITE);
    www.fastrprint(F("\r\n"));
    www.fastrprint(F("\r\n"));
    www.println();
  }
  //else {
  // Serial.println(F("Connection failed"));   
  // return;
  //}

  Serial.println(F("-------------------------------------"));

  /* Read data until either the connection is closed, or the idle timeout is reached. */
  unsigned long lastRead = millis();
  while (www.connected() && (millis() - lastRead < IDLE_TIMEOUT_MS)) {
    while (www.available()) {
      char c = www.read();
      Serial.print(c);
      lastRead = millis();
    }
  }
  www.close();
  Serial.println(F("-------------------------------------"));
  Serial.println(F("\n"));
}
5  Using Arduino / General Electronics / Re: 9V power supply and voltage regulator the right way to go? on: February 19, 2014, 12:55:07 pm
Thank you, guys.  I didn't realize I could supply power to the 5V pin.  That is way simpler approach.  Thanks again!   
6  Using Arduino / General Electronics / Re: 9V power supply and voltage regulator the right way to go? on: February 19, 2014, 12:30:22 am
Thanks for the reply.  My hope was to wire up a board and power the Micro (suggested 7-12V) and the pixels (5V) with the same power supply. 
7  Using Arduino / General Electronics / 9V power supply and voltage regulator the right way to go? on: February 18, 2014, 10:58:05 pm
I'm working on a project and I'm wondering if I'm powering it correctly.  I've never powered anything with a supply other than the Arduino regulated 5V. 

My project is a wifi enabled LED light setup.  I'm using an Arduino Micro, Adafruit CC3000 breakout board and 25 Adafruit Neopixels.  The pixels require 5V and each one draws 20mA average and 60mA peak at full white. 

If I want to use one power supply, does it make the most sense to use a 9V supply for the Micro and then use a voltage regulator like an LM317 (or LM350 if I decide to add more pixels) to get 5V for the LEDs?  Is there a simpler solution?

Here is my current plan.  Please let me know if I have anything hooked up incorrectly!  Thanks for reading!!


8  Community / Gigs and Collaborations / Hardware trade for programming assistance - 2 Xbee S1's + misc for parsing help on: February 09, 2014, 07:30:01 pm
Hi,

I have two Xbees (Series 1), a Sparkfun Xbee USB Explorer and a SainSmart Xbee Uno shield that I would love to trade for help with some programming.  About $80 worth of hardware for your time. 

I am using a Uno r3 and an Adafruit CC3000 breakout board and I'm receiving data serially that I would like to parse for use in my program.  I don't think what I'm trying to do is complicated but I'm struggling to adopt examples I've found for my application.

If you are interested, please message me or send an email at samfarm at gmail and we can figure out the details.  I will probably respond to email more quickly.   

Thank you! 
9  Using Arduino / Installation & Troubleshooting / Re: Can't view serial monitor window (anymore...) on: February 08, 2013, 05:46:36 pm
Thank you very much for the response.  I inadvertently figured it out... still have no idea what was happening, but its working now.

Thanks again! 
10  Using Arduino / Installation & Troubleshooting / Can't view serial monitor window (anymore...) on: February 08, 2013, 12:34:10 am
I just updated Java to version 7 and I can no longer see/view the serial monitor window.  The serial monitor itself opens and begins communicating with my board, but I can't view it.  In my windows task bar I can see the "mini window" and I see it running the sketch.  The TX light on my micro lights up once I open the serial monitor.  In the small task bar window I can see the serial monitor updating every second as its supposed to (patiently waiting for me to input the unix time). 

I'm running Windows 7, Arduino 1.0.3, using a Micro board, and have a RTC connected.  I tried uninstalling Java 7 and reverting back to Java 6 to no avail....  I tried searching for people having similar issues and couldn't find anything. 

This is driving me crazy!  Any help would be greatly appreciated!!!
Pages: [1]