Jump to content

seanhodgins

Members
  • Content count

    7
  • Joined

  • Last visited

About seanhodgins

  • Rank
    Noob Class

Contact Methods

  • Website URL
    http://idlehandsproject.com

Profile Information

  • Location
    Hamilton, Ontario
  • Interests
    Electronics, gadgets, photography, video
  1. seanhodgins

    Energia CC3200MOD Incorrect GPIO Output

    You're correct. I had been looking at the pins_energia.h file, but was looking at it wrong. The GPIO_XXs commented out on the right are incorrect. Following the number of the pin in the corresponding array works properly... Kind of stupid I didn't pick that up. I realize now that the GPIO is referring to the Launchpad.
  2. seanhodgins

    Non volatile memory options for cc3200

    I have a different issue. It seems I'm only able to create a file as large as 56kbytes. Even with the 8mb flash version. If I try to go above 56kb the file does not create/open. I need a file that can be at least 200kb. Anyone experience this?
  3. seanhodgins

    Energia CC3200MOD Incorrect GPIO Output

    @@Rei Vilo 1) It gets confusing because I am using CC3200MOD. So the Pins mapped are different than the Launchpad. But when I say GPIO, I mean the GPIO used when using energia. 2) I'm using the latest version of Energia, but I have CC3200 selected, not CC3200MT selected. These images should really help explain what I mean. The red text is what I actually have to use to enable the pins for my LEDs, not the ones listed. This is screen grab of the board I'm using for reference. Of course this could all be an issue with CC3200MOD. Maybe I didn't look into the issue deep enough. I thought Energia would correspeond to the GPIO listed on the data sheet, but thats not the case here. I am not directly using SPI, but I am using WiFi library and SerialFlash libary.
  4. seanhodgins

    Energia CC3200MOD Incorrect GPIO Output

    Was not able to solve the ADC problem. I was however able to solve the LEDs on my board. Somewhere in Energia there is some issues with the pin declarations. So I ran through all of the pins on my board setting them high, (GPIO0-30). GPIO18(which doesn't exist according to TI) makes MOD Pin 8 of the LEDs light up and GPIO 14(instead of 16) makes MOD Pin 6 light up. I'm happy they work, but I'm not happy that there are these kind of random issues that shouldn't exist. I've looked at the pin declarations and they seem to be right. With so many libraries messing with each other, I don't think I'm skilled enough to find the real solution. I also sampled all of the GPIO(0-30 ommiting ones I knew were connected) for ADC, and 6 different GPIOs sampled ADC, but two of them were just double declared. I can't remember which, it was like 2,6,23,24,25,26. I think 2 and 24 are A1, 6 and 26 is A2, 23 is A0(only samples 4095), and 25 is A3. Something like that - I could be wrong with the actual numbers but yeah same solution. It doesn't make sense that only one would be sampling like that because its a continuous mux inside of the device. I still think its an internal pull-up being automatically enabled by the Hardware Serial device. I was going to get ahold of RedBearLabs because they have an arduino compatible board and they have all of the ADCs on the board. I want to see what they have to say.
  5. I'm getting very frustrated with this CC3200MOD, and the CC3200 in general. First it started with the A0 analog channel always reading 4096 but now on to some GPIO problems. This should be fairly straight forward but apparently they make everything difficult, so I don't know what to say. I have made a custom PCB for using the CC3200MOD. Its supposed to read the 4 ADCs, 3 for accelerometer, which is working great, 1 for an analog microphone, which isn't working at all, but I've given up on it and going to just mux with one of the 3 working ones. Now I have 3 LEDs on the board for general LED applications. These LEDs are on pins(pins of the MOD device) 6,7,8, which correspond to (according to PinMux Tool) GPIO 15,16,17. So ideally I should be able to just pinMode the pins to OUTPUT, and set them HIGH to have the LEDs working. I should mention right now that I have two populated boards both have issues in the same way. So if I was to do this in Energia it would just be: pinMode(15,OUTPUT); pinMode(16,OUTPUT); pinMode(17,OUTPUT); digitalWrite(15,HIGH); digitalWrite(16,HIGH); digitalWrite(17,HIGH); So this is where it gets strange, only 1 LED turns on, only GPIO16. But here is the kicker, GPIO16 turns on only when I enable GPIO15!! What the heck is going on, I think there is an issue with Energia incorrectly labelling pins but I cannot find the solution. I think this is also the issue with the analog pin, but I want to sort this out first. Does anyone know what is going on? Ill break it down: GPIO16 turns on when I digitalWrite(15,HIGH) GPIO15 and GPIO17 don't turn on at all and get some weird low voltage on them. Using Energia
  6. seanhodgins

    CC3200 Wifi and analogRead

    I have a feeling this is an Energia issue. I'm looking for a solution. My theory is that energia may "Automatically" enable default serial pins in a certain way that causes this to happen. If you try to do PinTypeADC(A0, 0xFF), then the system will halt at that line. I'm trying to read all 4 ADCs at high speed and I need them all to work. I really hope its not the case that the RX line is automatically frying the ADC A0 just because its hooked up initially. That would be incredibly stupid.
  7. seanhodgins

    CC3200 ADC Inputs

    Almost a year later. I'm having similar issues. I'm trying to make use of all 4 ADC pins. I have the Launchpad-XL and two of my own custom boards using the CC3200MOD. They all give a reading of 4096 for ADC A0. I don't believe its fried. I have done a number of things to try it out, but I believe it has to do with how energia activates the serial ports. I'm using Serial1 to read the values. void setup() { PinTypeADC(A0, 0xFF); //This line is strange and freezes the CC3200 only if on A0 Serial1.begin(9600); Serial1.print("Starting Program on Pin "); Serial1.println(A0); delay(2000); } void loop() { // read the value from the sensor: sensorValue = analogRead(A0); // turn the ledPin on Serial1.println(sensorValue); delay(100); } Okay, so I used the Pin Mux utility and it told me to add "PinTypeADC(PIN_57)" but PIN_57 is not A0. Thats the first weird thing. So I changed that to PinTypeADC(A0) just to be sure its the correct pin. When I did this, my CC3200 doesn't start at all, it just halts at that line. If I add that line after the serial line of "Program Starting" then it will print that line, then halt and not give ADC readings. However, if I change that PinTypeADC to A1, and then read values of A1, everything works the way it should. I'm not even sure that I need that PinTypeADC line, but the fact that it freezes makes me think energia is setting some parameters for Serial, even if you're not using it. And this is causing the issue. My guess would be an internal pull-up, which would account for the 4096 reading. Anyone have any insight into this? I'm going to dig around energia files and see if they are setting the Serial for no reason. I need all 4 ADC, and I can't use an external ADC because they are too slow.
×