Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by tml

  1. @@roadrunner84, thank you for your extraordinary patience while explaining these really basic stuff I should have been more precise: what I meant was: "Is there any reason for clearing the flag after instead of before execution of the function() " I guess it does not matter, anyway.
  2. OK, thanks! So this looks like what I was refering to in my last code snippet. Is there any reason for clearing the flag after the execution of the function() - provided this function doesn't check the flags? Like the interrupt flags, they are very often cleared upon ISR entry before any other interrupt is queued.
  3. Hi, This is really about basics, however if I don't ask I won't know the answer ;-) How do you deal with LPM and ISRs in a clean and readable way? Say you have a product that does measurements on multiple sensors; one are I2C ones, the other are ADC-based, yet the other are simple timer-capture-based impulse counters. They basically should work sequentially, not simultaneously. The problem I have is like this (pseudo code): 0: { 1: setUpSensor(); 2: enterLPM0(); 3: startMeasurement(); 4: enterLPM0(); 5: } ISR1() { .....; exitLPM(); } ISR2() { .....; exitLPM(); } Now, at line 2 w
  4. Hi! My first weather station that I've presented in this topic has been successfully working in the field since the deployment in September 2014 until early April 2015, when something failed and it stopped communicating with the world. I'll see what happened, I just need to bring it down from the 20m tall tree :-) In the meantime I've been working on the new hardware and I've finally completed it. The enhancements comparing to the 1st version are: added on-board lead-acid battery charging circuit (based on the Texas Instruments bq24450 chip) added support for microSD card (to store the
  5. You don't know how happy this makes me that my 1st open source project is useful for somebody! All you need to do is from the host application to store the proper image on the download area of the MCU's flash and then manage the bootloader flags. If you had any problems please let me know.
  6. Fixed the link in the main post, sorry! I will need to rework the bootloader to add PetitFs + microSD supportso that it makes backup and reflashes from the SD, not the MCU flash. This way the working image size can be extended to MCU flash size minus bootloader coode size. So if you planned similar functionality and can open the source that'd be great! :-)
  7. I will be happy to do that soon. I'd like to move the data to some other place anyway (I'm not happy with the service I use now) and was thinking about IoT data servers. Do you know any that would allow not only to post data to but also get data from? I need to provide a configuration and firmware in ihex format for the weather station which it downloads each time it sends the data to the server. I need to be able to upload this config file and ihex firmware image.
  8. Thanks Bluehash! As for the current PCBs: I will of course share the design files soon (I need to clear up the working directories, see what's needed and what is not). But, the board has couple of issues that I described in the post. I plan to share the fixed version as well, but now I need to spend some time with my wife and daughter This project sinked me a lot!
  9. Hi Folks, Some time ago in a thread http://forum.43oh.com/topic/5550-simple-msp430f5529-bootloader/ I shared my bootloader that I wrote for my weather station project. I'd like to share some info on the project that I have completed and that its now operating in the field. Link to the description: http://eltomek.blogspot.com/2014/10/diy-weather-station.html All comments are welcome. Thanks all from this forum who helped me in numerous posts where I had no idea how to get out of technical issues! Best Regards, Tomek
  10. Thanks for good words! As for jumping to 0x1000 it's ok but it needs a sane application - if a damaged one gets flashed it will be unable to jump to BSL for recovery. Best Regards, Tomek
  11. When I started thinking about doing the bootloader I indeed got interested in the BSL but then I found out over the websites that: 1. invoking BSL requires a physical reset (source: http://processors.wiki.ti.com/index.php/Custom_MSP430_BSL#Device_Startup_Sequence - " NOTE: The boot code will be only executed on hardware reset (pulling down the /RST signal). Software reset such as using watchdog timer, setting the PMMSWBOR or PMMSWPOR of PMMCTL0 will not trigger the boot code.") 2. it needs to be written in plain asm (source unknown). I still don't know whether this is true and don't understa
  12. Hi, I will definitely share all the details about my project when only it gets done, deployed in the field and the code is polished to the minimum extent needed for it to be shown to the people ;-) Right now it's full of todos and hacks. I plan to release it as an open hardware and open software project, the first will be easier though. Best Regards, tml
  13. Hi, I have spent quite a significant amount of time to figure out how and then write a simple bootloader for MSP430F5529 that I would like to share with you. It was written for mspgcc (4.6.3) and uses small memory model; for accessing high flash (20-bit addressed) I use some simple assembler inlines. It won't work out of the box in CCS. This project is fully functional and I use it to remotely reflash my weather station (https://plus.google.com/u/0/photos/102121325118286323880/albums/5936572393229426625?authkey=CJ3N8Y2CtJiOIQ). I just push the new application image onto the web server, then
  14. As for the mspgcc 4.6.3 I painfully got to know it doesn't support it :-) Possibly after turning on the optimization (don't know yet, didn't check), the far rom access function based on inlined assemblies stopped working properly and I thought CCS will be a better solution. But somehow I still feel gcc would be better for me if only it supported access to far rom from the C level. As for the memory model for the sake of efficiency I would rather stick to small memory model and just declare some pointers as 20-bit ones, like mentioned at http://sourceforge.net/apps/mediawiki/mspgcc/index.ph
  15. Hi, I got tired fighting with inlined assemblies to get the access to ROM over 64kB and after thorough considerations decided to move to CCSv6. But, I noticed that CCSv6 brought cooperation with MSP430 GCC (http://www.ti.com/tool/msp430-gcc-opensource) into CCSv6 and I wonder is this compiler will support 20-bit addressing natively (with memory model) as opposed to inline assembly. Do you have any experience with it? Best Regards, tml
  16. Hi, I am currently putting things together with my MSP430-LaunchPad-based weather station (https://plus.google.com/u/0/photos/+TomekLorek/albums/5936572393229426625?authkey=CJ3N8Y2CtJiOIQ) that is pretty much already working, reporting data from 4 sensors via GSM etc. It is going to be solar-powered (already working as well with a Phocos CA-08 controller and a lead-acid batteries) but the last thing I'd like to do before deploying it in the field is remote flashing. I have written the code myself but still am quite new to microcontrollers especially when it comes to booting. A quick chat
  17. Ok, it seems that I will have to live with it. I asked here and there and got to know that I am pretty lucky it's just 8mA. First issue: LDO in case Uin is just slightly higher than desired Uout (in my case 0.5V) consumes pretty much of current to saturate the output transistor, that's why it consumes ~1.7mA. As for the PWM step-down it gets 1.2-2.5mA when not switching. While switching it can consume much more, in my case it consumes 5.7mA, that is ~3-4mA more than when no switching. That is pretty good result. The key to understand that is to notice the big (5A) internal switching transistor
  18. All right, however the application note (http://www.u-blox.com/images/downloads/Product_Docs/LEON-G1-G2_SystemIntegrationManual_(UBX-13002023).pdf) say that in power off mode (after AT+CPWROFF) has microprocessor not operating, only RTC runs. However I don't quite believe the RTC can consume that much. RF is not working either. Checking the modem should be potentially easy since I have a spare one with just some wires led out. I don't know how many current is drained by the TI's 3.3 LDO as I didn't find it in the application notes. EDIT: connecting the spare GSM modem gave me the 0.2mA a
  19. Desoldering will be a problem with my soldering skills :-) I have some spare pcbs so I can try to populate one of them with the components and see which one is problematic. I wrote this post hoping that there is some obvious issue in it, but on the other hand it's simple. When I finish this project and it is ready and working I'm going to publish the hardware along with the code for the public.
  20. Hi! I've made a prototype of the weather station board in a boosterpack-way that has uBlox Leon G100 modem on it. The 1st power stage is done by ST1S10 PWM step-down to 3V8 which forks out to: - TI LP2985IM5-3.3 input (to supply the MSP430) - Leon G100 modem power supply. The schematic can be found under this link (no Google account is needed): https://drive.google.com/file/d/0Bx30mlv7ga40aUZvN3FpelFaQTA/edit?usp=sharing and the pcb looks like this: https://lh5.googleusercontent.com/-wbVHEIxOnhU/UtrBD6GiAFI/AAAAAAAAIEA/5cDehtwIxAU/w1200/IMG_20140118_185923.jpg There is no launchpa
  21. Thank you for your response! Yes, I am talking about F5529 LP. For fhe GSM modem (which is shielded) it is important to take care of the signal path and ground plane on the PCB - taking this into consideration the pcb will be slightly larger than the LP and the modem will not be under the LP but a bit aside so that it does not interfere with MSP's ADC. Initially I wanted to put the F5529 chip on the pcb but as this is my first hardware project I was afraid that it would not work after spending several dozens of $ on the fabrication + soldering. The boosterpack way gives me significantly large
  22. Hi, On the http://www.ti.com/ww/en/launchpad/byob.html site TI recommends the stackability from bottom to top, meaning the boosterpacks to have female pin sockets and be put on top of the LaunchPad's male pin headers. What is the reason behind such attitude and is it any better than stacking the other way around - i.e to put booster packs on the bottom of the LP. In my application (field-operating weather station) I'd like to have the pcb with the GSM modem tied to the case with male pin headers exposed and to attach the LP on top of that. Can I fall into any traps/inconviniences with suc
  23. Thanks! In fact the 5V is as far as I know used exclusively for USB module which I don't need in my application.
  24. Hi, Is that possible to externally supply the MSP430F5529 throught boosterpack connect that expose +3V3 and/or +5V instead of attaching the power to the EZFET connector? Looking at the schematics there seem to be no diodes preventing the reverse current from the boosterpack but I
  25. Thanks! I was thinking of this quite a bit and finally decided to design a dedicated PCB - I convinced myself that booster pack way is good for prototyping and development. However I can still change that as my PCB is not ready yet
  • Create New...