Regarding Project A2

Hello RIOT community,

I am Dinuka Sawlathura from University of Moratuwa, Sri Lanka. I am doing Computer Science & Engineering(Integrated Computer Engineering).

I like to work on following project,

Project A2: Intelligently Interacting Light Switches I would like to know whether for what platform(ARM,Intel Galileo) we have to develop the applications?

Thank you, best regards, Dinuka

Hi Dinuka,

welcome to RIOT!

I would like to know whether for what platform(ARM,Intel Galileo) we have to develop the applications?

You can target any platform you want, as long as it runs RIOT. If you want adapt the project idea as is, the biggest constraint for target hardware is memory size. We use the stm32f4discovery boards ourselves for testing with RIOT, CAF and C++. The board is already supported by RIOT and has 1MB ROM and 192 KB RAM if I am not mistaken.

Here are some more thoughts on the project, which I have posted on the mailing list earlier:

The idea is to use the C++ Actor Framework for programming. It is an implementation of the actor model [1] and can be found on Github [2]. The project itself features some examples and documentation how to use it. It should be noted that RIOT support is still in development, see the topic/caf branch of my RIOT fork [3] and the topic/riot branch of CAF [4]. For now, you can use actors on the board, but the network communication is not implemented (yet).

The network stack we want to deploy is based on IEEE 802.15.4, 6LoWPAN, UDP and CoAP. To enable IEEE 802.15.4 and 6LoWPAN on desktop machines we acquired some usb dongles [4]. For testing CAF with RIOT, we use stm32f4discovery boards which have a lot of memory available, but do not have a transceiver. Getting that to work is required at some point.

In any case, I would suggest to start by developing the application logic on a desktop machine. It allows for easier debugging and should allow you to use basically the same code on RIOT later on. Further, it is helpful to have a small setup for testing your deployment later on.

Hope this answers your question.

Raphael

[1] Actor model - Wikipedia [2] GitHub - actor-framework/actor-framework: An Open Source Implementation of the Actor Model in C++ [3] GitHub - josephnoir/RIOT: RIOT - The friendly OS for IoT [4] ROSAND Technologies :: Products :: R-Idge