We start to send the first batch of Multipilot32 to user and DevCoreTeam , i hope that this video will be usefull in power on and uploading firmare . In the next day will be available more info about the first flyable code . The first software that i upgrade to MP32 is Arducopter NG. The first revision of code will be only a porting of mono task application to new micro controller . This is only first step of our work , a starting point this micro is more fast until 24x more flash 512 kbyte , more ram 64 kbyte ram. An a lot of advanced feature. And is cheaper :)
I open a Call for C / C++ developer and beta tester that would support the development of our project.
In the next day will be available new code and doc in source branch inside redfox74. if you need more info contact me directly in PM or leave a message in the thread.
The board is compatible with all the DiyDrones accessories and is an upgrade of cpu from avr 8 bit processor to 32 Bit Arm Cortex . In this first stage we need advanced user that can develop code and have experiences on writing code on micro processor.
This is the official thread where there're some info about the project and roadmap.
Posted by Roberto Navoni on February 25, 2011 at 11:00am
Official Video by Mediaset : http://www.striscialanotizia.mediaset.it/video/videoextra.shtml?12757 This video was produced by Italian Television . Some people inform the autorithy about the presence of ufo in the sky of Naples in Italy ... , But a Napoletan member of FOXTEAM http://www.virtualrobotix.com see the trasmission and identify in that ufo his quad .. that use Multipilot .. ;) So he called The Gabibbo and explain that The UFO isn't extra terrastrial , but An Italian QUAD .. ;)
after some time of evaluation of software architecture for Multipilot32 I decide to put on it a Real Time Operating Systems.
Instead of choose FreeRtos or other clone . I found this interesting operating system that yet support HAL .
Above there's an introduction of Chibi OS , what do you think about ? My idea is to rewrite the lib of our Arducopter project using a professional approach with a Realtime Kernel on low level OS call.
A video of Chibios User that develop his quadcopter ... :)
This document will help you understand what ChibiOS/RT has to offer in a world with so many similar products.
Why another RTOS:
The first question to be answered is: there was really the need for yet another RTOS? There are several reasons:
The ChibiOS/RT ancestor has been created more than 15 years ago and while it had far less features than the current product it was complete and functioning. ChibiOS/RT is just a new (and silly) name given to something created when there were not many free RTOSs around (actually none, at least none in my knowledge, there was no widespread Internet at that time).
When, after a while, I needed a RTOS again, none of the existing FOSS projects met my expectations or my ideas of how a RTOS should be. I decided that work on that old project was a better idea than contribute to, or fork, something else.
I wanted another toy.
How is different ?
Well, there are some design choices that should be explained and contribute to make ChibiOS/RT a peculiar design. Nothing really new in itself but the whole is interesting.
Not Just a scheduler.
While the ChibiOS/RT kernel can be used even alone, see the General Architecture document, the RTOS also offers other subsystems:
Support for startup and board initialization.
An HAL abstracting many common device drivers, see the Features Matrix.
Integration with other open source projects like File Systems, Networking Stacks etc.
ChibiOS/RT is meant to be a whole operating system not just a scheduler.
Static Design.
Everything in the kernel is static, nowhere memory is allocated or freed, there are three allocator subsystems but those are optional and not part of core OS, dynamic services are built as a layer on top of the fully static kernel. Safety is something you design in, not something you can add later, using memory allocation in the kernel is unnecessary and relying on that is just asking for trouble.
No Internals structure and tables.
The kernel has no internal tables, there is nothing that must be configured at compile time or that can overflow at run time, no upper bounds, the internal structures are all dynamic even if all the objects are statically allocated.
No error Condition.
System APIs have no error conditions, all the previous points are finalized to this objective. Everything you can invoke in the kernel is designed to not fail unless you pass garbage as parameters, stray pointers for examples. The APIs are not slowed down by parameter checks, parameter checks (and consistency checks) do exist but only when the related debug switches are activated. All the static core APIs always succeed if correct parameters are passed. Exception to this rule are the optional dynamic APIs that, of course, can report memory exhausted.
Very Simple API.
Each API function should have the parameters you would expect for that function and do just one thing with no options.
Fast and Compact.
Note, first “fast” then “compact”, the focus is on speed and execution efficiency and then on code size. This does not mean that the OS is large, the kernel size with all the subsystems activated weighs around 5.5KiB (STM32, Cortex-M3), see the section ”Performance and Testing Data” for more details about performance and footprint. It would be possible to make something even smaller but:
It would be pointless, it is already really small.
I would not trade efficiency or features in order to save few bytes.
Test and Metric.
I think it is nice to know how an OS is tested and how it performs before committing to use it. Test results on all the supported platforms and performance metrics are included in each ChibiOS/RT release. The test code is released as well, all the included demos are capable of executing the test suite and the OS benchmarks. See the section ”Performance and Testing Data” for more details about performance and footprint.
Ardupilot32 is Alive , I start to make some prototipe , the first to board assembled work fine , this week i don't prepare a video with a Weekly update because i'm working on a lot of thinks.
I'm working on IDE , On Bootloader , I'm working on Wrapper for Arduino compatibility, I'm working on testing hardware , the OilPan interface ... a lot lot of thinks ...
So I open a official repo with a raw code of my project ,some source code , ide that i'm using , some startup info ... I hope that for the next week i have some time to update doc and info on the board.
In the last two day I start t o upgrade the last revision of xduino for support Ardupilot32 , It'snt mature project .. don't support i2c , spi , pwm . But is a good point of start for my work.
If some one would help me That's is good , on the official thread you can found link to last code :
I need some help to write optimezed low level drive. Need Help for developing Ide plugin , Need Help for chosing better and cheaper platform for 16 Feb Podcast.