Jump to content
43oh

Fmilburn

Members
  • Content Count

    618
  • Joined

  • Last visited

  • Days Won

    81

Reputation Activity

  1. Like
    Fmilburn got a reaction from BlackAngel in Energia sensor code and library examples   
    I'm attaching a link to github with Energia code examples for various sensors.  I started this as a place to put examples for students in a course I was helping to develop for middle and high school level students using the MSP430F5529.  Unfortunately the course was not held but I'm putting them out there in the hope they might help someone.  Where the code has been tested with other LaunchPads I've noted it.
     
    Here it is:  https://github.com/fmilburn3?tab=repositories
     
    You won't find anything sophisticated    but many are at least somewhat unique in that I couldn't find an example for that sensor tailored specifically for the F5529, or I wanted to better document it for beginners.  Essentially all are variants of work done by others, including work on 43oh, and I hope I've recognized the contribution in the code.  There is a wiki associated with some that has the schematic and photographs.  There is some other example code that is almost complete - e.g. using small DC motors and servos and I might add them.  Here is a list of sensors and devices currently out there:
    CNY70 - used as a proximity switch CNY70 - used as a tachometer MCP41010 - digital pot HC-SR04 - distance sensor 3 watt high intensity LED MAX4466 -sound level I2C LCD (4x20) and (2x16) HC-SR501 - PIR movement detection SW-180xxP - vibration sensor Joystick PFatFs - compiles and runs on the F5529 Hall effect rainfall sensor TMP36 - temperature Sharp GPf1S53VJ000F - photo interrupter Using low power modes (LPM) in Energia TCS3200 Color Sensor using MSP432           *** added 8/8/15 DS1307 Real Time Clock (RTC) Module         *** added 8/9/15 INA125P Instrumentation Amplifier                *** added 10/9/15 MCP3008 ADC                                            *** added 10/12/15 TLC5615 DAC                                              *** added 11/30/15 dAISy MarineTraffic shore station w/ CC3200  ** added 12/16/15 AD9850 Frequency Generator                        ** added 1/20/16 FFT                                                             ** added 1/20/16 Rotary encoder                                            ** added 1/23/16 W5500 Ethernet                                          ** added 3/25/16 MSP430G2955 pins_energia.h                   ** added 3/25/16 DriverLib examples for F5529                     ** added 8/16 Infrared Transmission                                ** added 12/16 WS2812 LEDs using SPI                          ** added 12/16 Battery measurement                               ** added 1/17 Finite State Machine - alarm system          ** added 2/6/17 Using RTC module with Energia - F5529     ** added 2/24/17 RCWL-0516 "doppler radar microwave motion sensor module"     ** added 6/6/17 Vary time a LED stays lit with potentiometer  ** added 7/8/17
  2. Like
    Fmilburn got a reaction from MichelKohler in Energia vs CCS vs LearningCurve vs Ability to control things...   
    I find Energia suitable for many most of my projects. Much of the time direct register access is not needed.   But if you keep at it long enough and stretch the boundaries of what others have done and posted, then expect to encounter the limitations of Energia / Arduino or at least the need to understand what is happening at the register level.  It may be in terms of the software, the libraries, slow execution, lack of access to features, or that your desired microcontroller does not have an Energia port.  If you learn to directly access registers then all peripherals and capabilities are available. If you want to understand and port other libraries that use direct register access then clearly a deeper understanding is needed as well.  As long as you don't introduce a conflict then direct register programming and Energia work together fine and it is not one or the other.
     
    I would start with CCS and the workshop that L.R.A suggests if using the G2553.  There are also tutorials on using CCS.  I find the debugger in CCS invaluable even when using Energia.  Gaining familiarity with the datasheets, the family user guides, and header files was the most difficult part for me as I have no microcontroller or C/C++ background - but they are key.  My approach was to become proficient in Energia and then add the more traditional approach as I went along.  I even find that myself writing everything in CCS without Energia from time to time now
  3. Like
    Fmilburn got a reaction from MichelKohler in Trouble installing libraries from GitHub on Energia   
    Hi @@cwpotter
     
    It sounds like an interesting project.  That boosterpack looks pretty neat.
     
    I don't have any experience with the 430BOOST-ADS1118 but took a quick look at this and here are some things that you should look into...
    The library you link to seems to have been written for the C2000 - so you would need to port it to the CC3200.  You definitely don't want to download the entire thing if it is written for the C2000 - probably just the .ino, .cpp and .h files.  Error messages will tell you where to proceed from there.  Do they say something is missing?  Then look for it in the repository. Libraries are installed in Energia the same way they are installed for Arduino with the exception of location - see for example this:  https://learn.adafruit.com/adafruit-all-about-arduino-libraries-install-use/arduino-libraries?view=all Note that you can find the correct location for user libraries by opening File ==> Preferences in Energia which shows sketch locations.  At this location will be a folder called libraries.  Install libraries there. To be honest, I would probably use an earlier version of Energia Sometimes it is easier to start over and use existing code as a go-by.  You have 3 sources apparently   the C2000 sketch, the firmware for the G2553 that comes with the backpack (probably not Energia), and the code at element14 - none of it for the CC3200 although the C2000 appears to have been written for Energia.  How much sense does the code in these sources make to you?  If not much, then you are going to do some homework to get this going with anything other than the RPi.  Provided of course the RPi code already does what you want pretty much.
  4. Thanks
    Fmilburn reacted to Rei Vilo in Simple Radio Library for CC1310   
    The CC1310 LaunchPad has a sub-1 GHz radio.
    On Energia,
    Install the EasyLink library by calling the menu Sketch > Include Library > Manage Libraries..., then select EasyLink and click Install. Select the board CC1310 LaunchPad. Call the menu File > Example > EasyLink > EasyLinkTX for the transmitter example. Call the menu File > Example > EasyLink > EasyLinkRX for the receiver example. Both examples work together. Obviously, you need two CC1310 LaunchPad boards!
  5. Thanks
    Fmilburn reacted to chicken in [POTM] dAISy - A Simple AIS Receiver   
    Hi Ross,
    The best solution depends on what you want to achieve.
    If you want to build a chartplotter, then OpenPlotter or a standalone setup of OpenCPN would be a viable approach. Both will require a RPI 3 as the GUI of OpenCPN ps
    For OpenPlotter, I recommend the 1.0 image and not their latest alpha, unless you know what you're doing. For standalone OpenCPN, this tutorial worked for me. If you only want to track ships and may report to a website, then AISHub's rPiAIS is the quickest way to get up and running.
    More DIY alternatives are Kplex (which OpenPlotter uses under the hood) or some form of home-brew Python script.
    ais-forwarder to send received AIS messages over the network simpleAIS to decode AIS messages in your Python project You will find more AIS related projects under my Github stars.
    Best Regards,
    Adrian
     
  6. Thanks
    Fmilburn reacted to jazz in Multiplexing 7-segment displays by segment   
    This is OK, but my MSP430G2533 7-segment working (multiplexing) digit-by-digit without resistors. Current (and brightness) is handled by PWM (WD). Device (PDIP) is mounted under the display.
     

  7. Thanks
    Fmilburn reacted to Peabody in Multiplexing 7-segment displays by segment   
    In case it might be of use to someone, I've posted a Youtube video and created a Github repo dealing with an alternate way of multiplexing 7-segment displays that has a greatly reduced parts count.  It's multiplexing by segment instead of by digit.  The video shows this method implemented with an MSP430G2553.  The Github repo has demonstration Arduino Nano sketches, but they should work as-is with Energia except for the pin assignments.  The video is on my local OSH group's channel, and I can't respond to comments there, but will answer questions here if there are any.
    https://www.youtube.com/watch?v=8w09Zy8MQrc
    https://github.com/gbhug5a/7-Segment-Displays-Multiplex-by-Segment
  8. Thanks
    Fmilburn reacted to Rickta59 in Add MSP432 support to Arduino?   
    not json but instructions given for linux
    https://github.com/RickKimball/tivac-core
    Assumes you have openocd and arm-none-eabi-gcc in your path. Probably won't work for windows. Probably will work for OSX.
  9. Thanks
    Fmilburn reacted to jsolarski in Not new, but gone for along time   
    Hello,
     
    Been gone for a long time. Life has gotten in the way of project, blog and all sorts of things. I cant even remember my last post.....
    but an update......
    first kid was born
    got married
    got cancer
    second kid born
    survived cancer
    year later, still living
    during all this, got into home brewing
    Now I brew beer, and now want to take my knowledge of electronics and infuse it into an all encompassing hobby. And also my current job allows me to hack and fix ATMs.
     
    some upcoming things im working on......... usb sniffer/pasthrough , temperature logging and S.G. logging.  some Halloween blinkies ......and probably some other odds and ends
  10. Thanks
    Fmilburn reacted to jfd5041 in MSP432 Black suddenly gone from Energia   
    Thank you, Robert!  That worked.  
    (And thank you for the suggestion, Fmilburn, but older versions also had the black board removed.  I even tried and failed with a manual setup on a PC that I kept offline.)
  11. Thanks
    Fmilburn reacted to terjeio in RFC: CNC BoosterPack   
    Driver code for a few boards is available from my github account. A PCB design with reduced size allows two boards to be mounted to the EK-TM4C1294XL LaunchPad providing up to 6 axes of control (needs to be verified). I have also added TCP streaming to the EK-TM4C1294XL LaunchPad but usure if I can publish the code due to the "viral" clause in many of TIs files - even the startup code 🙁. Grbl is released under GPL and I have a hard time understanding the legalese related to that...
    I am currently working on a DRO/MPG for my lathe with Grbl running on a MSP432, and the DRO/MPG code on a Tiva C/MSP430 combo. Threading support is a part of that work and hopefully I'll be able to get it working reliably - looks promising this far.

     
  12. Thanks
    Fmilburn reacted to mph in Bosch Sensortech BME280   
    The Bosch BME280 pressure-temperature-humidity sensor is very popular for projects because there are breakout boards available from Adafruit and Sparkfun as well as a large library of code to interface it to Arduino MCUs. Not so much for the MSP430, especially transparent code to understand what is happening at the register level. I have written and tested some demo C-code that hopefully fills that gap. It sacrifices generality and efficiency for compactness and transparency.
    I use the F5529 Launchpad and communication with the sensor is via SPI using the UCB0 module.  I2C is also available for the BME280 but not implemented here. Temperature and relative humidity (no pressure) data is obtained using the forced mode with periodic polling by the MSP430.  Sensor and MCU are in low-power sleep modes when not active. Data is streamed to a terminal program that is interfaced to the Launchpad via serial UART. Each BME280 has unique trimming parameters that must be retrieved and properly parsed to convert the raw data. This process is quite complicated, so separate functions were developed to handle them and placed in an include library.  
     
    My IDE is CCS 6.1.3 with nofloat printf support. This code should work directly in the MSP430x5xx and MSP430x6xx families. Other MSP430 series such as FR and value-line will need to make appropriate module/register modifications.  Link to github is here:
    https://github.com/microphonon/BME280
  13. Thanks
    Fmilburn got a reaction from mph in TI HDC2010 temp-humidity sensor   
    Hi @mph
    It is good to see someone new contributing code.  Nicely written and commented.
  14. Thanks
    Fmilburn reacted to mph in TI HDC2010 temp-humidity sensor   
    There is code available to implement I2C communication between the MSP430 and the HDC2010 temperature-humidity sensor, but it's a bit like an onion -- you have to peel away layer after layer in various libraries to drill down into what is happening at the register level.  I decided to write some transparent demo code for this sensor that is self-contained: everything related to the I2C interface is in a single C program.  It has been successfully tested with the F5529 Launchpad.  This is a simple MCU polling operation that periodically makes a T-H measurement using the on-demand mode of the sensor. The data is sent to the serial port for display on a terminal program.  The on-board heater is activated for a few seconds upon reset. I have not implemented the temperature-humidity high/low interrupts. One could also configure the sensor to output data periodically and toggle its DRDY pin to wake-up the MCU from LPM4.  Polling code is here:
    https://github.com/microphonon/HDC2010
    The HDC2010 is a tiny sensor with a 6-bump BGA footprint.  TI makes an evaluation module that uses an MSP430F5528 to interface the sensor with a configuration/graphing GUI program.  Their program only runs on 64-bit Windows.  The portion of the PCB hardware containing the sensor can be broken off (permanently) to reduce thermal mass and allow placement in a project.  I decided to make my own breakout boards (see photo), but just learned that MikroElektronika started selling essentially the same thing for $13 (MIKROE-2937).
     

  15. Thanks
    Fmilburn reacted to mph in Sensirion SHTC3 temperature-humidity sensor   
    Sensirion has recently introduced an inexpensive, low-power temperature humidity sensor SHTC3 designed for operation in the range 1.62--3.6V .  It should be a useful peripheral for MSP430 battery-powered applications.  I have tested 3 sensors with the F5529 Launchpad and they exhibit reliable, consistent behavior.  For reference, I have written some demo code for I2C communication that is available on github:
    https://github.com/microphonon/SHTC3
    The SHTC3 comes in a small DFN package, so to do breadboard testing I had to build my own breakout boards and use reflow soldering (see photo).

  16. Thanks
    Fmilburn reacted to MarcosA in SIM800L using TM4C123GXL and Energia   
    Thank you, Fmilburn! I was wrong when I was trying to use the library SoftwareSerial.h. Now just using Serial3.begin and etc and looking the arm's pin map, the program is working. Thank you one more time! 
  17. Thanks
    Fmilburn reacted to lonelycanyon in REALLY? main() not found ? MSP432 Launchpad   
    Just in case anyone comes across this in Google, I encountered a very similar bug in energia 17 and 18: code won't compile in user saved projects, but will compile if you copy the code into an example sketch. After several days of tinkering I FOUND THE PROBLEM, it seems that is you have a function name that contains 'setup' or 'loop' and you previously compiled to a different board, the sketch won't compile. once you change the name of these functions, the sketch compiles, and curiously, if you change it back it also compiles.
    so, to avoid this bug (at least my variant of it): don't create functions that contain the words 'setup' or 'loop'
     
    steps to reproduce:
    create a new project with this code: void setuptwo() { } void setup() { // put your setup code here, to run once: setuptwo(); } void loop() { // put your main code here, to run repeatedly: } compile for MSP430F5529 compile for MSP432 Hope this helps
    compilation log.txt
  18. Thanks
    Fmilburn reacted to Fred in Free Shipping and Deals on LaunchPads at TI Store   
    If you're just after free shipping, the code OPT4FREE should work for the whole of 2018.
  19. Like
    Fmilburn got a reaction from bluehash in Free Shipping and Deals on LaunchPads at TI Store   
    The TI store has 10% off selected LaunchPad and tools with free shipping for the next week.
    http://www.ti.com/store/featured/junemidyear2018.html?HQS=ecm-tistore-promo-junemidyear18-bhp-lp-null-wwe
  20. Thanks
    Fmilburn reacted to estratos in Serial1 on the MSP430FR2433   
    For anyone interested, adding the following piece of code in pins_energia.h enables Serial1:
    static const uint8_t AUX_UARTRXD = 14; /* Receive Data (RXD) at P2.5 */ static const uint8_t AUX_UARTTXD = 15; /* Transmit Data (TXD) at P2.6 */ #define AUX_UARTRXD_SET_MODE (PORT_SELECTION0 | INPUT) #define AUX_UARTTXD_SET_MODE (PORT_SELECTION0 | OUTPUT) #define AUX_UART_MODULE_OFFSET 0x20 #define SERIAL1_AVAILABLE 1  
  21. Thanks
    Fmilburn reacted to zeke in One Wire Controller booster   
    If anyone is curious, I have been developing the edge router app in pyqt5 on linux.
    Here is one of the better tutorials that I have found on learning PyQt5.
    Apparently, there are two different sources to get PyQt5 from:
    PyQt5 from Riverbank Computing, and Qt for Python  from Qt.com, which was originally called PySide(2) PyQt5 is a bit of a mind bender at the start, but it gets better as you climb the learning curve.
  22. Like
    Fmilburn reacted to Markers in MSP430G2553 Workshop   
    Hi NurseBob. Thanks for your latest messages. The reference on low power design is great and will certainly help. You are correct in your assessment that l am "just getting into electronics" : I am 70 and a recently retired engineer and loving getting into hardware after decades of (self-taught) programming. Hence the sometimes naive questions! I have been using Dave Jones' blog which is very informative. Thanks again. 
  23. Thanks
    Fmilburn reacted to zeke in One Wire Controller booster   
    IT'S ALIVE!!!!
     
    I have 104 ds18b20 sensors wired into my board and it is reading them all.
    I am celebrating! WOO HOO!
    Now it's time to crush an mqtt server!
     

  24. Thanks
    Fmilburn got a reaction from munny in Suggestion for Bluetooth module works with MSP430F5438A   
    TI has listed a solution here:
    http://www.ti.com/tool/MSP-EXP430F5438
    http://www.ti.com/tool/cc256xmspbtblesw
    The CC2650 seems to fit your requirements and you can get additional help on e2e if needed.
  25. Like
    Fmilburn got a reaction from NurseBob in Suggestion for Bluetooth module works with MSP430F5438A   
    TI has listed a solution here:
    http://www.ti.com/tool/MSP-EXP430F5438
    http://www.ti.com/tool/cc256xmspbtblesw
    The CC2650 seems to fit your requirements and you can get additional help on e2e if needed.
×
×
  • Create New...