Jump to content
43oh

New MSP430 FRAM - FR41xx/FR2xxx


Recommended Posts

Looks like TI's expanded the MSP430 FRAM line to include a lower-end (16KB FRAM max) but high GPIO line with LCD - FR4133 (http://www.ti.com/product/msp430fr4133)

 

In addition to this we've seen teasers of an FR2xxx in the msp430-elf-gcc header files (msp430fr2032.h, msp430fr2033.h) which Will alluded to in the blog video - http://e2e.ti.com/blogs_/b/msp430blog/archive/2014/10/07/more-new-fram-microcontrollers-provide-the-lowest-power-lcd-and-maximum-flexibility.aspx

 

The FR41xx's main feature is the LCD_E peripheral which boasts ~1uA power draw while keeping the LCD enabled and with a built-in charge pump running, and additionally the LCD function pins are software reconfigurable.

 

Capabilities from the msp430fr4133.h header file:

#define __MSP430_HAS_MSP430XV2_CPU__  /* Definition to show that it has MSP430XV2 CPU */
#define __MSP430_HAS_ADC__             /* Definition to show that Module is available */
#define __MSP430_HAS_ADC_CHANNELS_10__
#define __MSP430_HAS_BACKUP_RAM__      /* Definition to show that Module is available */
#define __MSP430_HAS_CAP_TOUCH_IO_0__ /* Definition to show that Module is available */
#define __MSP430_HAS_CRC__            /* Definition to show that Module is available */
#define __MSP430_HAS_CS__             /* Definition to show that Module is available */
#define __MSP430_HAS_FRAM__           /* Definition to show that Module is available */
#define __MSP430_HAS_GC__            /* Definition to show that Module is available */
#define __MSP430_HAS_LCD_E__          /* Definition to show that Module is available */
#define __MSP430_HAS_PMM_FRAM__       /* Definition to show that Module is available */
#define __MSP430_HAS_PORT1_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_PORT2_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_PORTA_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_P1SEL0__         /* Define for DriverLib */
#define __MSP430_HAS_P2SEL0__         /* Define for DriverLib */
#define __MSP430_HAS_PASEL0__         /* Define for DriverLib */
#define __MSP430_HAS_PORT3_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_PORT4_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_PORTB_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_P3SEL0__         /* Define for DriverLib */
#define __MSP430_HAS_P4SEL0__         /* Define for DriverLib */
#define __MSP430_HAS_PBSEL0__         /* Define for DriverLib */
#define __MSP430_HAS_PORT5_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_PORT6_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_PORTC_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_P5SEL0__         /* Define for DriverLib */
#define __MSP430_HAS_P6SEL0__         /* Define for DriverLib */
#define __MSP430_HAS_PCSEL0__         /* Define for DriverLib */
#define __MSP430_HAS_PORT7_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_PORT8_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_PORTD_R__        /* Definition to show that Module is available */
#define __MSP430_HAS_P7SEL0__         /* Define for DriverLib */
#define __MSP430_HAS_P8SEL0__         /* Define for DriverLib */
#define __MSP430_HAS_PDSEL0__         /* Define for DriverLib */
#define __MSP430_HAS_RTC__            /* Definition to show that Module is available */
#define __MSP430_HAS_SFR__            /* Definition to show that Module is available */
#define __MSP430_HAS_SYS__            /* Definition to show that Module is available */
#define __MSP430_HAS_T0A3__           /* Definition to show that Module is available */
#define __MSP430_HAS_T1A3__            /* Definition to show that Module is available */
#define __MSP430_HAS_EUSCI_A0__      /* Definition to show that Module is available */
#define __MSP430_HAS_EUSCI_B0__       /* Definition to show that Module is available */
#define __MSP430_HAS_WDT_A__          /* Definition to show that Module is available */
#define __MSP430_HAS_TLV__              /* Definition to show that Module is available */

Link to post
Share on other sites

LaunchPad for the new chip with a segmented LCD ... but only two 1x10 headers (similar to the FR5969 LP)- http://www.ti.com/tool/msp-exp430fr4133

Still scratching my head a bit at the lack of 40-pin headers on those FRAM launchpads, but at least with this one I can assume the reason is that the pins are taken up by the LCD ;)

Link to post
Share on other sites

Decent price for the launchpad - $13.99 gets you an EnergyTrace eZFET.

 

The FR4133/2033 chip (http://ti.com/product/msp430fr2033 for the details on the latter) also has no DMA and no hardware multiplier.  Single eUSCI_A and eUSCI_B.  More or less a "value line" type of chip but with a metric shitton of GPIO if you need that sort of thing...

 

Does have RTC though, so that's handy.  There's some IR Modulation logic inside the SYS module where it can produce IR modulated signals on a GPIO - see page 43 of the user guide - http://ti.com/lit/slau445

Drivable by eUSCI_A or by software apparently.

Link to post
Share on other sites

The MSP430FR4133 is listed as preview. Is this another beta chip like the early FR5969s? The errata sheet lists it as XMS430FR4133

 

I can't see any marking on the main microcontroller in the photos. Also, the hardware files seem to list it as a MSP430G621 on the BOM (along with a F5528 for the FET and a G2452 for the EnergyTrace), but I assume that's just a mistake.

Link to post
Share on other sites

Is it worth using a raw LCD for hobby use? I can see there might be cost savings if you're producing 1000s of your design, but considering how cheap and easy to use modules with built-in controllers are it doesn't make much sense - except for the challenge of course!

 

I'm trying not to just buy every dev kit because they look fun to play with. I have too many already. I'll hold off as long as I can...

Link to post
Share on other sites

@@nickn Once you get over an initial fear of SMD, you try it and don't want to go back. There are always breakout boards or (if you are willing to pay a fair premium for convenience) the MSP-TS430 target boards.

 

Unfortunately not all LQFP64 devices can use the same target board. There is a LQFP 64 board but the new FR4xxx isn't listed as compatible. It might be that it's too new, but it's probably that the power and debug pins are in a different place.

Link to post
Share on other sites

@@Fred it's not so much that I have a particular fear of SMD packages, it's more about the convince for me to throw components on a breadboard easy.  I love the flexibility to build and teardown easily (although once you circuit has more than a few components,  things can start to get a little hectic.)

 

What you mention above are certainly options, but breakout boards and such mean shelling out additional cash (and as I don't currently have any sort of steady job, I have to watch my spending) and my soldering equipment is terrible. With that all said, I still should pick up some perfboard sometime to move some of my circuits off the breadboard.

 

 

Sorry if I went a bit off-topic.

 

Anyways, the new FRAM board looks nice. I like the idea on an on-board LCD and the price isn't bad.

Link to post
Share on other sites

Unfortunately not all LQFP64 devices can use the same target board. There is a LQFP 64 board but the new FR4xxx isn't listed as compatible. It might be that it's too new, but it's probably that the power and debug pins are in a different place.

 

Yeah unfortunately this is because of different pinouts as you alluded to. There is a board that supports FR4xx - but it is a new one: http://www.ti.com/tool/msp-ts430pm64d.

 

 

Does have RTC though, so that's handy.  There's some IR Modulation logic inside the SYS module where it can produce IR modulated signals on a GPIO - see page 43 of the user guide - http://ti.com/lit/slau445

Drivable by eUSCI_A or by software apparently.

 

If you want to learn more about the IR module there's also an app note about it: http://www.ti.com/lit/pdf/slaa644 Really fun if you want to make your own remote control :-)

 

 

 

The MSP430FR4133 is listed as preview. Is this another beta chip like the early FR5969s? The errata sheet lists it as XMS430FR4133

Right - currently this device is just sampling engineering samples so people can start designing with it now to be able to go to production at release. Production orders can only be placed later at full release and those parts will be the final release revision and be MSP430FR4133 not XMS430FR4133. If you look at the product page this is why it says "Preview" next to the part number at the top. It will change to "Active" at full production silicon release. http://forum.43oh.com/topic/5609-ti-msp430-wolverine-now-in-production/?p=48972

 

In addition to this we've seen teasers of an FR2xxx in the msp430-elf-gcc header files (msp430fr2032.h, msp430fr2033.h) which Will alluded to in the blog video - http://e2e.ti.com/blogs_/b/msp430blog/archive/2014/10/07/more-new-fram-microcontrollers-provide-the-lowest-power-lcd-and-maximum-flexibility.aspx

 

You can find FR2033 device here: http://www.ti.com/product/msp430fr2033 Pretty similar but no LCD.

 

Finally, if you want to know more about the differences on this part, there are some migration guides posted too:

http://www.ti.com/lit/pdf/slaa649 (F2xx/G2xx to FR2xx)

http://www.ti.com/lit/pdf/slaa648 (F4xx to FR4xx)

Link to post
Share on other sites

@@KatiePier Interesting info, thank you. I'm surprised that there's no matching IR receive logic. Obviously it can all be done without a specific peripheral, but I'd have though both sides would be there.

 

It's a shame about the different pinouts. If there was a standard for each package it might be tempting to get one or two of the target boards, but if they only support a small range of devices they're just too expensive to justify. Not a big deal for corporate customers I suppose, but difficult for the hobbyist.

Link to post
Share on other sites

I like the addition of a 5v pad on the launchpad. Wasnt entirely needed but its a nice touch. LED1 shared with TX though, yes I see the utility of it but I would have preferred the user LED to not be shared with the TX pin and instead to have a separate TX LED. But from what I can see, neither of the 2 user buttons or LED2 share connections with the LCD or boosterpack headers which is also a very nice feature to me, no interfering of buttons with boosterpack functionality or LCD functionality and no random blinking of the LED unexpectedly when interacting with boosterpacks or the LCD.

 

@@Fred - it appears it does support IrDA encode / decode with the eUSCI_A0 module. See slau445.pdf, page 441.

I believe the IR functionality previously referred to is the format used by TV remotes which are not IrDA. Also a nice feature to have though.

 

 

 

 

 

Dunno if I am going to pick one up, but I like it.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...