Jump to content


  • Content Count

  • Joined

  • Last visited

Everything posted by aegotheles

  1. So it was obvious, you can select the alternate serial port by simply initializing Serial1.begin(XXXX). However, initially this didn't work, because when I made the msp430fr5949 pin map above the correct pin assignments for DEBUG_UART and AUX_UART were switched. They should be (I believe) - static const uint8_t DEBUG_UARTRXD = 22; /* Receive Data (RXD) at P2.1 */ static const uint8_t DEBUG_UARTTXD = 21; /* Transmit Data (TXD) at P2.0 */ static const uint8_t AUX_UARTRXD = 18; /* Receive Data (RXD) at P4.5 */ static const uint8_t AUX_UARTTXD = 17; /* Transmit Data (TXD) at P4.4
  2. I apologize if this is obvious, but on a new version of a MSP430FR5949 based datalogger programmed using Energia 18 - I switched the pins on the physical chip for serial communication from the Aux to the Debug UART for better layout. Below is the modified pin map energia_pins.h file - #if defined(__MSP430_HAS_EUSCI_A0__) || defined(__MSP430_HAS_EUSCI_A1__) static const uint8_t DEBUG_UARTRXD = 18; /* Receive Data (RXD) at P2.1 */ static const uint8_t DEBUG_UARTTXD = 17; /* Transmit Data (TXD) at P2.0 */ static const uint8_t AUX_UARTRXD = 22; /* Receive Data (RXD) at P4.5 */ static
  3. aegotheles


    What MSP430 are you using? SPI or I2C (just saw you tagged it I2C)? If you look in Adafrauit's Adafruit_BME280.cpp file under lines 374, 403, and 437 - there is the following 'if' statement, int32_t adc_T = read24(BME280_REGISTER_TEMPDATA); if (adc_T == 0x800000) // value in case temp measurement was disabled return NAN; NAN simply refers to 'not a number', and indicates typically something went wrong when reading the sensor. Adafruit's example was originally written for Arduino, so you'll have to use something
  4. Thanks! I just switched to using a Mac and didn't realize the ~/Library folder is hidden by default. OS X El Capitan 10.11.6 FWIW.
  5. Can anyone point me in the direction of the following files in Energia 18? https://github.com/energia/cc13xx-core I need to modify the board.txt and pins.h files to use the smaller 4x4 RSM package and can't seem to find this directory/files if my life depended on it. It's not located where the other msp430 variants are in /Applications/Energia.app/Contents/Java/hardware/energia in OS X.
  6. Does anyone have any code examples, experience, or can point me to the right direction when it comes to reading/writing to the internal flash that comes with these boards in Energia? I'm wanting to store up to a maximum of a days worth of non-volatile 3x32 bit 5 minute samples (3,456 bytes), before sending as packets when the Rx is in range. Thanks in advance!
  7. Thanks! This really helps clarify some of the questions. I'll add some tags to this post so others can find it at a later date.
  8. First, I'd like to say thanks for the implementation of EasyLink for the cc1310/cc1350 in Energia 18. Last year the community was invaluable in helping me develop some MSP430FR5949/BME280 dataloggers for my dissertation research. I'm working on a new version based off the cc1310, because well, transmitting my data wirelessly sure beats having to recover the dataloggers. I have a couple questions that I have been unable to answer - 1. The EMT documentation suggests that if you use delay, during compiling this is converted to a low power mode. Is this only for the MSP430/432 variants?
  9. Just wanted to say thanks! It took about a week in my spare time, but I was able to create a new energia_pins.h and boards file by comparing what Luke did in his tutorial as you had suggested. It was pretty straightforward once I was pointed in the right direction.
  10. ?Thanks for being willing to help with this dilemma! I'll answer your questions inline - So my questions are...
  11. Thanks for the response but I think i may have not explained clearly what I am trying to do. I have a embedded MSP430FR5949 based datalogger that I am trying to program using the MSP430FR5969 Launchpad as an ISP. I intend on using P1.6 and P1.7 for I2C to control and read a digital temperature sensor. I have been unable to get I2C to work on the MSP430FR5949 dataloggers but the original prototype using the MSP430FR5969 works fine. I assume the issue is due to pin assignment as one of the chips has 48 pins versus 40. I modified the energia_pins.h file for the FR5969 to get SW I2C t
  12. Great, got it. So how do I ensure when programming another chip in a series (such as the FR5949 using a FR5969 Launchpad) that the pins between the two chips correspond correctly?
  13. Ok, I received the boards yesterday and have soldered a few up. Even though the 1.6 / 1.7 I2C pins port / pins are at different physical locations on the 2 MCUs (FR5969 is 48 pin versus a FR5949 40 pin), where does this get defined in the pins.h file? Basically I don't understand how the pins numbers on the MSP430 datasheet from P1.6 and P1.7 (31 and 32 respectively) translate to the numbers seen in the pins.h file like static const uint8_t MOSI = 15; /* P1.6 aka SIMO */ static const uint8_t MISO = 14; /* P1.7 aka SOMI */ Thanks in advance!
  14. Thanks for the quick response! I'll create a variant folder and go from there.
  15. Just a quick question - probably obvious but I wanna make sure before I order some boards. If I was using a FR5969 Launchpad as an ISP to program some FR5949 chips - will the hardware I2C pins 1.6 and 1.7 and the software defined I2C pins 3.5 and 3.6 still work even though they are at different physical locations on the chips? My breadboard prototype version uses I2C on either set of I2C lines and works fine, but with a FR5969 and not the FR5949. When programming another chip in a series does the pin map need to be defined in the energia_pins.h file for the FR5969? Thanks!
  16. Hey, I've built a little datalogger using the FR5969, TMP112, and the BME280. I've been successful removing the jumpers and programming the stand alone loggers using ISP layout mentioned in multiple other threads on this forum. However, there are a ton of wasted I/Os and space for my application, so I've wanted to use a smaller chip. Enter the FR5949 (ok, just a little bit smaller but every milligram counts).. When I try to program the new loggers, I get the following error - tilib: MSP430_OpenDevice: Unknown device (error = 5) tilib: device initialization failed Can you use
  17. I apologize in advance as the answer to this may be obvious, but I've looked around the forums and haven't found an answer yet. I'm trying to use a Bosch BME280 sensor with a MSP430FR5969 to do some handy datalogging. I found a library for it located here https://github.com/embeddedadventures/BME280 originally for Arduino implementation, and it works fine on that platform. There's no obvious requests for avr based libraries etc... but where should I start in attempting to get this to work with an MSP430?
  18. It worked! Now to tackle the BMP180.
  19. Great! Thanks again for all the info. I'll read this over and hopefully post a working example tomorrow.
  20. Thanks so much for the help. Just to avoid possible confusion I'm not intending on using an EEPROM, that was just old code from the Arduino and ATTiny24 setup. So I have a few more questions. 1) Do I need to specify an absolute address in with_attribute_((section(".text"))) for it know where to place the 16 bit integer from each reading from the sensor, 2) does it need have a address specified each time in the loop when it adds sensor data and 3) do I need to preallocate the total number of samples?
  21. Sorry to bother if I'm missing something obvious in the documentation - but there's something I can't seem to figure out. I'm migrating a simple datalogger that uses an ATTiny24a, BMP180, and an external EEPROM to (hopefully!) take advantage of the power savings and FRAM on the MSP430FR5969. I've attached a sample of my code by I can't seem to find anywhere similar functions to EEPROM.read and EEPROM.write. All I've managed to find is FRAM_write<enter # of bits here> in the fram.c in the DriverLib library. Basically all I'm trying to do is log data to the FRAM at a s
  • Create New...