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.

433MHz Chronos limited CCS core addition not functioning properly

Other Parts Discussed in Thread: SIMPLICITI

I am using Chronos to evaluate the platform for custom wireless control.  I have been able to make changes and compile the 433Mhz limited CCS code without any problems so far.  When I tried to use simpliciti, I found that the Chronos did not transmit.  I tried another Chronos out of the box and it worked just fine.  I restarted with an unmodified project and got the same result.  I started playing with other functions and found that I could not change the time, it would say loct.  I could not unlock the device, either.  All of this is being done with the watch is connected to the programming dongle.  Is the limited addition supposed to function the same way as a Chronos out of the box?  I am using CCSV4.

I also found that if I took another Chronos that had been transmitting to my access point in ACC mode, that as soon as I plugged it into the programming dongle which resets the Chronos, I could not longer make the ACC transmission work regardless of programming.

I tried using the TI access point instead of my own and found that the Chronos was transmitting so it must not have been able to join my network.  So whats the difference between an out of the box watch and one that has been reset or reprogrammed with a limited license.  Is the radio protocol different?

  • The CCS code limited projects use the pre-compiled ez430_chronos_drivers.lib library file to overcome the code size limit of the free CCS. Using the free CCS 4 which came with the Chronos kit to compile the 868MHz - Limited CCS Core Edition project, the resulting executable didn't behave correctly in that the watch crashed / reset when attempted to set the alarm.

    Changing to use the full CCS version and compiling the 868MHz - Unrestricted CCS Platinum project then worked.

    Having brought a full CCS license didn't investigate why the Limited CCS Core Edition project didn't work.

  • I haven't tried moving to a full license, yet.  I was going to do this with CCSV5 only to run into compile issues that TI is working on.  What is confusing to me is that I can use a Chronos out of the box and then when I reset it even before it has been reprogrammed it no longer works with my access point even though it does work with the TI access point.  I am starting to think that something is loaded into the watch after loading the program.  I have had no other issues compiling and changing code using the code limited version of Chronos 433 and it would work with the TI access point after I loaded my program additions, but not my custom access point.

  • Gary Klinefelter said:
    I started playing with other functions and found that I could not change the time, it would say loct.

    I also had the same failure when compiled the 868MHz - Unrestricted CCS Platinum project.

    Looking again, I think the pre-compiled libraries which are used by the Limited CCS Core Edition projects may be out of date with the source code. e.g.:
    1) ofd430.exe reports that Chronos Watch\CCS\Sports Watch\simpliciti\CC430_End_Device_433MHz.lib was built on 01 February 2010, yet the source files in Chronos Watch\CCS\Sports Watch\simplicit are dated 05 March 2010

    2) ofd430.exe reports that Chronos Watch\CCS\Sports Watch\driver\ez430_chronos_drivers.lib was built on 21 November 2009, yet the source files in Chronos Watch\CCS\Sports Watch\driver are dated 05 March 2010

  • Chester Gillon said:
    Looking again, I think the pre-compiled libraries which are used by the Limited CCS Core Edition projects may be out of date with the source code

    Having attempted to compile the Limited IAR projects for the first time, IAR is reporting the following warnings:

    Warning[w6]: Type conflict for external/entry "sTime", in module ports against external/entry in module clock; class/struct/union field names do not match: drawFlag vs last_activity
    /* In module ports: */
    struct time /* Elements: 7, Bytes: 14 */
    /* First seen in ports */
    {
    u32 system_time;
    u8 drawFlag;
    u8 line1ViewStyle;
    u8 hour;
    u8 minute;
    u8 second;
    u32 last_activity;
    } sTime;
    typedef unsigned long u32;
    typedef unsigned char u8;
    /* In module clock: */
    struct time /* Elements: 7, Bytes: 14 */
    /* First seen in alarm */
    {
    u32 system_time;
    u32 last_activity;
    u8 drawFlag;
    u8 line1ViewStyle;
    u8 hour;
    u8 minute;
    u8 second;
    } sTime;
    typedef unsigned long u32;
    typedef unsigned char u8;
    Warning[w6]: Type conflict for external/entry "sRFsmpl", in module timer against external/entry in module rfsimpliciti; class/struct/union types have different sizes
    /* In module timer: */
    struct RFsmpl /* Elements: 2, Bytes: 4 */
    /* First seen in timer */
    {
    enum mode;
    u16 timeout;
    } sRFsmpl;
    typedef unsigned short u16;
    /* In module rfsimpliciti: */
    struct RFsmpl /* Elements: 3, Bytes: 6 */
    /* First seen in rfsimpliciti */
    {
    enum mode;
    u16 timeout;
    u8 display_sync_done;
    } sRFsmpl;
    typedef unsigned short u16;
    typedef unsigned char u8;
    Warning[w6]: Type conflict for external/entry "button", in module alarm against external/entry in module ports; class/struct/union field/base types do not match for field/base 'flag'; class/struct/union types have different numbers of fields/bases
    /* In module alarm: */
    s_button_flags volatile button;
    typedef union __Unnamed_2_141 s_button_flags;
    /* In module ports: */
    s_button_flags volatile button;
    typedef union __Unnamed_28_164 s_button_flags;
    Warning[w6]: Type conflict for external/entry "sButton", in module user against external/entry in module ports; class/struct/union types have different sizes
    /* In module user: */
    struct struct_button /* Elements: 5, Bytes: 6 */
    /* First seen in user */
    {
    u8 star_timeout;
    u8 num_timeout;
    u8 backlight_timeout;
    u8 backlight_status;
    s16 repeats;
    } volatile sButton;
    typedef unsigned char u8;
    typedef short s16;
    /* In module ports: */
    struct struct_button /* Elements: 3, Bytes: 4 */
    /* First seen in ports */
    {
    u8 star_timeout;
    u8 num_timeout;
    s16 repeats;
    } volatile sButton;
    typedef unsigned char u8;
    typedef short s16;
    Error[e24]: Segment DATA16_AN (seg part no 1, symbol "TA0CCTL2" in module "stopwatch", address [346-347]) overlaps segment DATA16_AN (seg part no 4, symbol "_A_TA0CCTL2_L" in module "timer", address [346-347])

    The IAR warnings refer to differences in structure definitions within the (debug) information in the pre-compiled library files .vs. the definitions in the include file which suggests the library files are out of date w.r.t. the source files which would explain why the CCS limited projects don't run correctly.

**Attention** This is a public forum