Tomorrow will the STD (Sumo Tournament Day)! Here are a few last tips and tricks to be prepared for that Sumo Tournament using the Pololu Zumo Robot chassis:
If two robots crash into each other, there can be quite some force. What I have observed is that it can be strong enough to temporarily disconnects the batteries from their spring contacts. I use pieces of plastic parts to keep the batteries tight and in place.
I have one rule I try to follow every day: my code shall be warning free. Writing software for multiple compilers gets challenging with this rule, but it avoids the ‘not seeing the forest because of the trees’ problem. This rule extends to writing Processor Expert components with CDE (Component Development Environment). What I have missed (and not used) is a useful option to enable debug output:
For my RNet stack I need a way to identify nodes in the network using a unique address. What I need is Media-Access (MAC) address. Base on such a unique address I can assign short addresses (e.g. with a DHCP or similar protocol to automatically assign shorter network addresses). So how to uniquely identify my network nodes?
The Freescale Kinetis microcontroller have nice feature: they have a Unique Identification Register (UID) which would be a perfect fit for a MAC address :-).
Eclipse is very workspace centric: it only knows and deals with files in the workspace. So it is easy to compare and merge files present in the workspace: I select both files/folders and compare them with each other:
Compare with Each Other
But what if the files and folders are NOT in the workspace?
The INTRO course is progressing fast, with a lot of information passed on how to build a successful mini Sumo robot based on the Freescale FRDM-KL25Z and a modified Pololu Zumo chassis. The PID control loop implementation for speed and position finally starts to work properly with the help of FreeMaster. Things are not perfect yet, but the robots get better from day-to-day.
In case you are desperately looking a component in the components library view, but somehow it does not show up? For example I know there is component ‘InterruptVector’, but it is not present in the Components library view?
For the Eclipse and Processor Expert lovers of this world: there is another Eclipse based IDE you can use: ThunderBench made by Emprog:
ThunderBench for ARM Eclipse Startup Screen
They support a range of ARM based devices, including the Freescale ones I’m using. So I downloaded the v3.24 30 day trial from their download page last week. Finally I have found some time to try it out. Could this be an alternative to use my Freescale FRDM boards with Processor Expert?
This week I saw on the IAR website that they have released the new IAR Embedded Workbench v6.7 for ARM. I was still on 6.5 using the free code size limited ‘Kickstart’ version), so I thought it would be a good time to upgrade to the v6.7. And there are good reasons as the connection to Processor Expert makes things much easier now.
CodeWarrior for MCU10.5 comes with a new Eclipse and new Processor Expert. Things are working very well so far. But I have spotted an issue which seems to be related to the new Eclipse Juno used: sometimes the Processor Expert ‘Components’ view is not correctly showing the current project used.
If you read my posts, then you probably know: I *love* the FRDM boards! But: Freescale has only the lower-end processors available with a FRDM board (yet?). As I need something more powerful for my Raspberry Pi Camera project, I’m using Tower boards instead. This gives me an ARM Cortex-M4 with 120 MHz, Floating Point unit plus 128 KByte SRAM :-).
For that project I need USB. So this post is about using the TWR-K60F120M and TWR-K70F120M with USB connectivity, using the USB CDC device class as example. Initially I thought I can do as easily with the FRDM boards. It turned out, that things are not that easy.
Eclipse based IDE’s have typically one limitation: the IDE has not much scripting capabilities. Yes, I can use things like JUnit for testing, but if it comes to build and debug C/C++ applications, then support gets really rare. An exception to this is CodeWarrior for MCU which features a command line version of the IDE which can be used for test automation as I used it in one of my tutorials. What I missed so far is to have a command line interface for Processor Expert to generate code. This is now possible with CodeWarrior for MCU10.5 :-).