Proposed CFE Demo on RTEMS
Joel Sherrill
joel.sherrill at oarcorp.com
Mon Dec 22 16:02:49 UTC 2014
On 12/22/2014 08:52 AM, Cudmore, Alan P. (GSFC-5820) wrote:
> I don't think it will be hard to make some neat flight software demos
> based on RTEMS.
>
It needs to be completely open so anyone can show it. I am
hoping it is enough to garner more interest in RTEMS and
help get help/funding to finish some of the missing pieces.
> In my view, the best thing the community could do is to keep improving the
> BSP/device support for the low cost platforms such as the Pi, Beaglebone,
> and Edison. We need network ( Ethernet or wireless ), EMMC/SD card
> support, I2C, SPI, etc. With this kind of support, we can be closer to
> just dropping or software on the board and running. Of course, this
> benefits all RTEMS users, not just the FSW community.
Agreed. Some of this can be done as GSoC projects if we have
mentors and good project descriptions.
> The other part that is required by our flight software is a dynamic
> loader. We hope to integrate support for Chris's loader soon, which will
> make our flight software much easier to integrate on a generic RTEMS
> system. A neat demo is easily possible for next years workshop. (I already
> have a pretty impressive Pi based demo system, but it uses linux)
>
You know the dynamic loader is in the tree now but has compile
issues on some targets and a fair number of warnings. It just needs
some final love. :)
> More info for those interested:
>
> Our flight software consists of 4 layers:
> RTOS - Can be RTEMS, vxWorks, Linux/POSIX, and soon FreeRTOS and ARINC653
> OSAL - OS abstraction layer - ported to Linux/POSIX, RTEMS, vxWorks
> cFE - Core flight executive
> CFS Applications ( CFS stands for Core Flight System , encompassing all of
> the flight software )
>
> Currently the OSAL and cFE are open source. We are waiting for the
> approval for many of our CFS Applications to become open source as well.
> It would be nice to have a complete open source Flight Software Stack that
> can be downloaded, compiled, and run with little effort.
>
This would be important for both small satellite and CubeSat
projects as well as "more serious" missions. The low cost missions
being able to start with a solid foundation and flight proven
middleware is a HUGE advantage over the repeated roll your
own process done now.
> A beagle, Pi, or Edison demo should not be too hard. We already run on
> RTEMS targets, but the important part would be to finish the RTEMS "out of
> the box" experience, so that anyone can duplicate the demo. Other
> interesting platforms would be Zync, OpenRisc, and LEON3.
>
Agreed. Mark and I had three boards with us last week and I
would like to up the game. More boards we are able to travel with
and show a demo on. Plus a better demo. :)
> To do this, we need:
> - Port the OSAL to use the RTEMS loader. The CFS applications are
> dynamically loaded. In the past we have worked with Cexp, and a static
> module loader that is not open currently source, and a "fake" loader where
> I just link everything into one image with the RTOS. This is the only
> generic RTEMS item needed. This will be done soon!
> - BSP network support: We can command our software and receive telemetry
> over UDP/IP, which would be good for a demo. The open source cFE package
> has a very simple Python/QT4 based command and telemetry system, and there
> are better command and telemetry systems being developed that will
> hopefully make their way to a public release.
The Pi is wired over USB which will require the new stack plus
some work.
The Beagle is wired and might have a FreeBSD driver but it
also has an LWIP driver so pushing that might be a good quicker
solution. Either is an option though. Worst case, the Minix can
be ported.
The Edison is harder. The BSP itself needs more work. PCI
configuration space support, interrupts, etc. But it is Wifi
so that's a whole new world.
The Zynq and LEON3 should be in better shape for demos.
> - BSP file system support: We could run our software using a tar/IMFS
> system but we really want to load file and apps from flash ( SD/emmc ).
>
Has anyone identified a project plan for this? It would be
a good GSoC project.
> After that, we just need to have the Glue code for entry point, memory
> access, resets, etc.
>
What do you require for this? I don't know this.
> After the basic platform is established, a community demo could include
> CFS apps interfacing with components such as GPS, IMU, Motor controllers,
> etc. I like the tiny Intel Edison stack with an IMU and battery pack. An
> impressive demo would be something that you could just pass around while
> it's sending telemetry to the ground system/PC. Of course, an even better
> demo would be an RTEMS powered Drone.
>
:) I would just like to set this as a challenge for the community
to focus on the CFE requirements and a demo. This software stack
will also meet the needs of other domains and then we can focus
on a vertical stack for another domain.
Hopefully the CFE and RTEMS communities can pull this off quickly.
--joel
> Alan
>
>
>
> On 12/21/14 12:16 PM, "Joel Sherrill"<joel.sherrill at oarcorp.com> wrote:
>
>> Hi
>>
>> One idea Mark and I had at the Flight Software
>> Workshop was to up the ante on demos for RTEMS.
>> We ran fileio and ticker as demos. The next
>> space show we go to, we want to show CFE/CFS
>> doing something on at least the Beagle. Ideally
>> it would also run on the Pi and Edison showing
>> portability.
>>
>> CFE has an open source portion so at this point
>> we need to turn to Alan Cudmore for guidance on
>> what is possible without taking a huge lab.
>>
>> We particularly think this will appeal to the
>> small sat and cubesat communities but the big
>> mission folks will see value in it as well.
>> After all, we won't carry a hugely expensive
>> space qualified board around for demos. :)
>>
>> So let's define what it is and tackle it as
>> a community.
>>
>> --joel
--
-- Joel Sherrill, Ph.D. Director of Research& Development joel.sherrill at OARcorp.com On-Line Applications Research Ask me about RTEMS: a free RTOS Huntsville AL 35805 Support Available (256) 722-9985
More information about the devel
mailing list