Universal remote controller, version 1 (2013)
I needed to re-create the remote controller after switching from Arduino to STM32 platform. I had to use software USART in the previous version which has had uncomfortable latency. The controller thus jammed and was not 100% operational.
Changing the processor also caused different demands for space and voltage supply. The other parts remained unchanged. I created a small pocket for the new processor using an L profile and hot melt gun. Further, I divided 2.8V from the battery box for the processor and its peripherals, 4.8V for the XBee module.
Entire connection of all the peripherals took place without any bigger changes. Then, all that remained was to program the processor. I created a simple library for the communication with the XBee module. The communication is done in the basic mode with only 2 end devices connected to each other using static addresses.
The next step was to put all peripherals into operation using own libraries. The peripherals are periodically read and commands are sent after any change using the XBee module. Since the development kit STM32F100 used in this construction consists of more USART peripherals and built-in debugger, the entire debugging of the code was much less painful than using Arduino platform.
Despite the fact that I used entire case and PCB from the previous version, the development of this remote controller took me more time than I anticipated. This was mainly caused by the fact that I had to learn the processor. The entire configuration and source codes are more difficult in the beginning than it was in previously used platform.
The result was satisfying. The controller was much more reliable than the previous version. Since the Christmas was close I bought myself another XBee module and two thumb joysticks which disrupted the concept of this remote controller. Thus, I started to work on a new version.
Pictures, schemes, videosClick the image to show it in higher resolution
Source codesClick the label to show the source code
Back to Robotics STM32.