zlalanne 37 Posted August 22, 2015 Share Posted August 22, 2015 Hello all! If anyone else is interested in devops tools like ansible/vagrant/docker or linux administration this project might interest you. I recently started learning about ansible a tool used to configure/orchestrate servers. So I thought I would try and use that to push firmware updates out to MSP430s. I came up with a solution that allows me to run a command on my machine which then copies the firmware to Rapsberry Pis and then flashes any MSP430 LaunchPads connected to them. I first had to compile the msp430 dll and the latest version of mspdebug for the ARM architecture (rather than x86). Essentially this allows me to program MSP430s from a Raspberry Pi using mspdebug. I talk about the steps here: http://zacklalanne.me/automated-deployment-of-msp430-firmware-part1/ Then I wrote an ansible playbook to automatically deploy the dll and mspdebug as well as the firmware to the connected Raspberry Pis which then push the firmware to the MSP430s. http://zacklalanne.me/automated-deployment-of-msp430-firmware-part2/ Don't think this is too realistic for an actual production environment but getting it all to run was a good learning exercise in compiling code on linux and system administration. bluehash, dubnet and roadrunner84 3 Quote Link to post Share on other sites
zeke 693 Posted August 23, 2015 Share Posted August 23, 2015 That pretty cool. It has me wondering if over the air updates could be performed with wireless processors. Also, it appears on their website that Ansible is a fairly expensive solution. Is it safe to say that Ansible is not an open source system? Or is there an open source version and I am missing something? Still, this is fascinating to me. Quote Link to post Share on other sites
bluehash 1,581 Posted August 23, 2015 Share Posted August 23, 2015 Hello all! If anyone else is interested in devops tools like ansible/vagrant/docker or linux administration this project might interest you. I recently started learning about ansible a tool used to configure/orchestrate servers. So I thought I would try and use that to push firmware updates out to MSP430s. I came up with a solution that allows me to run a command on my machine which then copies the firmware to Rapsberry Pis and then flashes any MSP430 LaunchPads connected to them. I first had to compile the msp430 dll and the latest version of mspdebug for the ARM architecture (rather than x86). Essentially this allows me to program MSP430s from a Raspberry Pi using mspdebug. I talk about the steps here: http://zacklalanne.me/automated-deployment-of-msp430-firmware-part1/ Then I wrote an ansible playbook to automatically deploy the dll and mspdebug as well as the firmware to the connected Raspberry Pis which then push the firmware to the MSP430s. http://zacklalanne.me/automated-deployment-of-msp430-firmware-part2/ Don't think this is too realistic for an actual production environment but getting it all to run was a good learning exercise in compiling code on linux and system administration. Love it! In your first blog post, you may want to put in a link for Part-2. Quote Link to post Share on other sites
zlalanne 37 Posted August 23, 2015 Author Share Posted August 23, 2015 That pretty cool. It has me wondering if over the air updates could be performed with wireless processors. Also, it appears on their website that Ansible is a fairly expensive solution. Is it safe to say that Ansible is not an open source system? Or is there an open source version and I am missing something? Still, this is fascinating to me. Ansible is actually free and open source. They have a tool called "Ansible Tower" that is a GUI that sits on top of ansible that gives you a nice bunch of stats and options for running playbooks. I haven't used it so can't comment on how useful it is. I have been using ansible with smaller scale setups so it might be more useful when you're managing 100s of servers all based in the cloud (Amazon, DigitalOcean, etc..). This is probably a better link to learn about it: https://docs.ansible.com/ansible/index.html As for updates using wireless processor, if there is enough memory to hold the new image that's always an option. Ansible though needs a python interpreter running on the client, so it can't scale down to microcontrollers. @@bluehash Thanks for the reminder. Will add the link. Quote Link to post Share on other sites
cubeberg 540 Posted August 26, 2015 Share Posted August 26, 2015 I left a couple of posts on your first blog post on a couple of things - but this may be exactly what I need. I've had trouble with the MSP430 device I use for my home security system getting locked up (there's a bug somewhere) and it keeps breaking when I'm not home. I've got mspdebug connecting to a 2553 LP - hopefully I can get the rest working! Quote Link to post Share on other sites
zlalanne 37 Posted August 26, 2015 Author Share Posted August 26, 2015 Yea I could see this working for something like that. Is the box connected to the G2553 LaunchPad linux based? Quote Link to post Share on other sites
cubeberg 540 Posted August 26, 2015 Share Posted August 26, 2015 Currently it's not connected to anything except a cc3200 for uploading data - but I have several RPi's sitting around - so it seems like a good solution. I've got the CC3200 outputting data via serial for debugging - so I'll probably see about connecting that to the RPi as well to collect the data. Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.