• Multithreaded LEDs on working build structure.

    Ethan Durrant01/02/2015 at 23:01 0 comments

    NOTICE: I am doing these project logs in chronological order, until the present time. These events happened days or weeks in the past from this writing, but the Logs will document them.

    After Messing around with a fork of the ChibiOS/RT development Github repo and trying to build projects and create my own board files there, I decided to try to create a way so I could build ChibiOS/RT projects outside of the ChibiOS directory (and as a result make reasonable git repositories for them). This took a few days of off-and-on work during free periods and after-school, and a good few concentrated hours one weekend. First, I went through all the ChibiOS demo Makefiles, *.mk files, and ventured through many directories and header files to figure out the structure of things (my hands started to tire of typing `cd`, `ls`, `vim` and `less`, the nice `tree` command line utility was quite helpful). Next, after figuring things out better, I moved demos and board files into directories within the beginnings of what would become my chibios-tinkering repo. I proceeded to tweak the Makefiles to my liking and set up my own local directories for my custom or modified board files and linker scripts. Once I finished all of that though, I realized that my ChibiOS/RT version was not the stable one, but the testing repo on GitHub, which was using ChibiOS version 3 syntax and files. For me, who is just learning to use ChibiOS and RTOSs in general, this "unstable" version could pose an issue, mainly in finding and following documentation and tutorials online. So then began the process to change or the replace the files to be compatible with the "stable" version 2.6.6 which uses a slightly different syntax and file structure that version 3. This part of the process took a considerable time as well. Finally, I got my first program working successfully on my SmartSensor_v1 board ( an old ST board that I got from my work during the summer, seems to have been a limited dev platform given to electronics companies privately around the year 2007 ) , which I had to set up custom board files for. The program is modified from one of the examples and blinks 2 LEDs in different threads.

    here is a photo ( this is actually a re-creation photo, not historically accurate, and taken weeks later, the breadboard in the original did not contain an extra LED or the potentiometer, those are from other experiments, as you will see in later Logs ):