This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC3200 LaunchPad connection to an LCD touch screen and CC2630 EB

Other Parts Discussed in Thread: CC2530, CC3200, CC2531, DK-TM4C129X, CC3100, CC2530EM, BOOST-CCEMADAPTER, SW-EK-LM4F120XL, CC3200SDK, ENERGIA

Hi,

CC3200 LaunchPad just arrived.  I like to emulate Freescale's home energy gateway using CC3200 and CC2530.  Could anybody can help with these questions:

1. To connect the LaunchPad to 4.3" LCD touch screen(resistive).  Do you have any suggestions on how to do it?   Are there any documents that shows how to connect with different connection methods and compares pros/cons of them? 

2.  Is there a way to connect the LaunchPad to CC2530EB?  Are Software compatible?

Thank you.

JKim

  • Hi Jeongdai,

    In theory you should be able to get this all to work with the CC3200, as the CC3200 does come with a I2C an SPI peripherals. So you could use I2C for your LCD touch screen and the SPI for the CC2530 (I believe you can interface with it via SPI, though not 100% sure, as I have never worked with this)

    But I don't see any libraries or other software that could help you with any of this, so there is a fair bit of work. I suggest you may be better looking into the Tiva C as your host, either the Tiva C LaunchPad TM4C123 or the Tiva C Connected LaunchPad TM4C129, the later has 2 BoosterPack headers. You can then use the CC3100 BoosterPack and the Anaren Air CC2530 BoosterPack (Note: the Tiva C drivers that comes with this boosterpack will likely be for the TM4C123, contact Anaren to see if they have drivers for the TM4C129)

    There are also other libraries and examples like grlib, which would help with developing your user interface.

    Glenn.

  • I forgot to mention there is also the DK-TM4C129X Connected Development Kit which comes with a Color LCD Touch screen (resistive) and also has boosterpack headers.

    Glenn.

  • Hello,

    The Tiva and the Cortex-M4 in the CC3200 are just about identical.  You can do a side-by-side comparison of the TRM and User's Guide for all the registers.  I wouldn't be surprised if the same code could run on both without modification.  I have not upgraded to CC6 yet to test out this theory.

    For the CC2530 you can connect via UART or SPI.  There is documentation for it as mentioned by Glenn.  There is no i2c on the CC2530, USB instead, but you can bit bang it in software.  There is source code in the Zigbee forum for i2c, or use the CC2531 which has hardware i2c.

    Thanks,

  • Glenn Vassallo said:
    I forgot to mention there is also the DK-TM4C129X Connected Development Kit which comes with a Color LCD Touch screen (resistive) and also has boosterpack headers.

    I won't immediately compare the TM4C129X microcontroller to CC3200 when interfacing LCD Touch Screen. At the DK-TM4C129x the LCD Touch Screen is connected to the TM4C129x microcontroller using LCD Controller. 

    I doubt that the CC3200 has an LCD Controller.

    @Jeongdai.

        Provide a link to this Touch Screen LCD. What you should do is know what are the peripherals of this LCD and see if the CC3200 Launchpad has the corresponding peripherals for both to communicate.

        As the CC3200 Launchpad has a Booster Pack header connector, you can make a booster pack with your LCD on it. Also you can choose to use existing Booster Packs that have already touch screen LCD

    - kel

  • greenja writes:
    The Tiva and the Cortex-M4 in the CC3200 are just about identical.  You can do a side-by-side comparison of the TRM and User's Guide for all the registers.  I wouldn't be surprised if the same code could run on both without modification.  I have not upgraded to CC6 yet to test out this theory.

    I am migrating code from the Tiva C TM4C123, so have had enough experience to know that the same code cannot be used. For example, I need to use SPI, here is the difference between the two chips when sending a word with SPI.

    TM4C123SSIDataPut( SSI_BASE, pcChars[lIdx] );

    CC3200: SPIDataPut( GSPI_BASE, pcChars[IIdx] );

    This is just one example, there are many more differences. In theory you may be able to get this to function, but I think there will be a lot of messing about with underlying libraries and config files. The TM4C123 that I was working with comes with 3 SPI peripherals, the CC3200 comes with 1 available SPI peripheral. 

    Glenn.

  • Wow!  That's a big difference!

    What I meant was they share the same registers as do all Cortex-M4 MCUs.  There may be only one SPI on the CC3200, but it corresponds to one of the three on the TM4C123.  I am almost certain that the two statements compile to the exact same thing.  Haven't checked yet, just installed CCS6.  So that's my theory for now and I'm sticking to it. :)

    Thanks,

  • I support your determination!!!  ....  in fact I challenge you to get the Tiva C examples to work on the CC3200 .. hehe :-)

    Seriously, if you do get it to work, please publish the steps on this forum, I'm sure they would be of great benefit to everyone!

    Glenn.

  • Hi,

    Thank you for great suggestions and discussions.  If Greenja's theory can be worked out, it will help my work also.  My goal is to connect cc3200 LaunchPad to a touch screen LCD and a ZigBee (CC2530 or could be CC2531).

    My hope is that Beaglebone Black Cape - LCD 4.3" (https://www.sparkfun.com/products/12085) can be connected to CC3200 LaunchPad, because I ordered last week.  However, if any touch screen LCDs on TI's BoosterPack list (http://www.ti.com/ww/en/launchpad/boosterpacks.html) can work with the LauchPad without a lot of coding work, it will be good too.    

    For zigbee, I have cc2530 development board as below (so called core2530 and ZB520).  My concern also is how much coding work will be required if I somehow connect these to the LaunchPad instead of using cc2531 dongle (the LaunchPad does not have USB port for zigbee dongle, though).   

    Do you think DK-TM4C129X Connected Development Kit is the best path for me? 

    ZigBee development board on board resource

  • Jeongdai,

    First of all, the Beaglebone Black Cape - LCD 4.3" will not work on any of these LaunchPads.

    Regarding ZigBee - If you really want to reduce the amount of code, then I recommend you get a ZigBee BoosterPack that comes with libraries that work with the Tiva C. The Anaren Air CC2530 BoosterPack comes with libraries and examples that will make it simple to get working wit the TM4C123 (Tiva C LaunchPad) and should also work with some changes with the TM4C129 (Tiva C Connected LaunchPad or the DK-TM4C129X Connected Development Kit ) , and the CC3200 (SimpleLink Wifi CC3200 LaunchPad). If you choose to use your current Zigbee module, I am not sure how much work is involved, does it comes with libraries? How much work is required to get them to work with TI's ARM Cortex M4 MCUs?

    If you do go with the Anaren Air CC2530 BoostPack, you then have the following 4 choices, which all have advantages and disadvantages.

    1. CC3200 LaunchPad + Anaren Air CC2530 BoosterPack + LCD Touch Screen (no recommendation)

    Advantage is that you have the Wifi integrated with the MCU with lots of code to assist you.

    2. Tiva C LaunchPad + CC3100 BoosterPack + Anaren Air CC2530 BoosterPack + LCD Touch Screen  (no recommendation)

    Advantage is that you will likely have to do little to get the Zigbee libraries working. There should also be some LCD examples, and you get grlib also.

    3. Tiva C Connected Development Kit + Anaren Air CC2530 BoosterPack + CC3100 BoosterPack

    Advantage is that this has an LCD included and has a lot of sample code to help you out.

    4. Tiva C Connected LaunchPad + CC3100 BoosterPack + Anaren Air CC2530 BoosterPack + LCD Touch Screen (no recommendation)

    Advantage is that you have more choices of LCD Touch Screen than the Tiva C LaunchPad as the TMP4C129 has a LCD controller onboard. There should also be some LCD examples, and you get grlib also.

    Good luck with your decision!

    Glenn.

  • Hi,

    I am exploring Glenn's suggestions.  Meanwhile, how about EM Adapter boosterpack listed on http://www.ti.com/tool/boost-ccemadapter?keyMatch=CCEMADAPTER&tisearch=Search-EN ?  Can it connect CC3200 LaunchPad to CC2530 EM?  I found that it is used to connect MCU LaunchPad and CC2530EM through UART on page 3 of http://www.ti.com/lit/an/swra444/swra444.pdf .  Question boils down to whether MCU LaunchPad is compatible with CC3200 LaunchPad. 

    Thank you.

    JKim

  • Yes  this will "fit" the CC3200 LaunchPad as the headers are the same on all launchpads (well mostly, there are single an dual header ones). But as this adapter/booster pack states "No specific software is provided, so it is up to the user to write the appropriate code to interconnect the MCU with the RF device."  So you will need to develop your own code to make this work. 

    Glenn

  • Hi JKim,

    I have noticed there is some software examples available for the CC2530EM, check out the bottom of this page  http://www.ti.com/tool/cc2530emk 

    So as you suggest, you may be better off going with the CCEMADAPTER with the CC2530EM, as then you will be staying within the TI environment. I think you will however have the same issue as the Anarem BoosterPack, in that the code was developed for the Tiva C, so it may need some work to get functioning with the CC3200.

    Glenn.

  • Hi All,
    We have tried Kentec Display (EB-LM4F120-L35) with CC3200 LP for Get Time application and here are the snapshots of working setup.

    I'm attaching the same application source code here for reference.

    http://e2e.ti.com/cfs-file.ashx/__key/communityserver-discussions-components-files/968/7711.get_5F00_time_5F00_lcd.zip

    Application Feature: This application is built with CC3200 SDK 0.5.2 and Stellaris graphic library. It runs on CC3200 LP and prints Current time to LCD screen.

    Steps to configure LCD with LP:

    1. ECOs on LCD board to configure it for 4-wire SPI- R2:1, R3:0, R4:1, R5:0, R6:1, R7:0, R8:1, R9:0, R27:0, R29:1, R24:0, R28:1
    where- R2:0 [resistor disconnected], R2:1 [resistor connected]

    2. PIN match table with CC3200 LP

    ----------------------------------
    LCD Board : CC3200 LP
    ----------------------------------
    SSI2CLK    : SPI CLK (PIN 05)
    SSI2TX       : SPI MOSI (PIN 07)
    SSI2RX      : SPI MISO  (PIN 06)
    CS               : GPIO 11  (PIN 02) (used GPIO to simulate SPI CS)
    DC              : GPIO 10 (PIN 01)
    RESET       : RESET_LP_OUT (not used in application)

    Refer pinmux.c of application

    3. Graphic library is taken from Stellaris SDK package. (http://www.ti.com/tool/sw-ek-lm4f120xl)
         Copy grlib folder from Stellaris package to 'C:\TI\CC3200SDK\cc3200-sdk'

    Note-
    a. LED feature will not work properly with this application as GPIO 10 & 11 are used by LCD board.

    b. This application is only to demonstrate LCD capability on CC3200 LP, it is not full fledged application.

    c.  This application has only LCD display not touch feature.

    Regards,

    Jitendra

  • I am stuck at Get-Time application. It will be a great help if any one of you can give some input.

    The demo application does not output after

    "Host: ntp.inode.at IP:195.58.160.5"

    Any link which can explain all communication going between cc3200 and ntp server will help to understand and debug the application.

    Hemant Savla

  • There seems to be problem in NTP server. The application worked by changing the NTP server to other (time.nist.gov). You can check the NTP server working near to you at this website http://www.pool.ntp.org/en/  . All Listed NTP server are working.

     

    Hemant Savla

  • Hey Jitendra,

    Impressive implementation you have made using the Stellaris LCD with the CC3200. I have a question: Do you find it capable to use the LCD touch capabilities with the CC3200? I am currently researching the necessary pins for these capabilities to work. If it is possible: any suggestions or advice in order to make the LCD work at its fullest capabilities? Thank you.

  • Hey Jitendra

    As Hector mentioned above, Is there a way to use the touch capabilities of this LCD with the cc3200?
  • i implemented a ILI9341 based screen and can post the code if anyone is interested..
  • Kaushik Ray, 

    I would like to see the code. Is it also a touch screen?

  • I am at work now will post the code in a few hours and share the link. This screen is not a touch screen. 

  • It would be appreciated if you can share the code. 

  • I am not too sure which compiler are you using for the development. But if you are using Energia then you can go to adafruit.com and pick the display you like. most of their products come with a arduino library. its very easy to port the arduino library to energia. you will almost have to make no changes.
  • There is always a way to connect CC2530EB to a launchpad, may not be a easy one. check this link for more information e2e.ti.com/.../235981

    For software CC2530EB use IAR or Keil so niter CCS nor Energia is a supported compiler as it uses a 8051 core. If you give me more info why do u need CC2530EB for the project i.e. what you are planning to use them for then i might be able to suggest some other easy solution.
  • Hey Kaushik Ray,
    can you please post your code?
    Thank you
  • I modified the Adafruit library to work with energia
  • Thank you for sharing your code.
    Do you also have code to use within ccs?
  • I do, but i am sorry as its the intellectual property of the company i work for and cannot share it. I wrote the energia code for fun for a small project at home. I will definitely suggest to look into importing energia code in CCS