馃摕 Embedded Room (at RustFest 2016) #1

Open
gnunicorn opened this Issue Aug 23, 2016 · 14 comments

Comments

Projects
None yet
10 participants
@gnunicorn

gnunicorn commented Aug 23, 2016

This issue is meant the primary discussion point on what to do/work on in the 馃摕 Embedded Room: an obvious playing feel for Rust are embedded devices and the Internet of Things. This room is dedicated to this topic.

If you have any material ready, are working on some (and/or want help with that), please post it here. If you just have a general idea (but no intention of creating it), please indicate that.

If you plan to join this room, please indicate so by clicking the 馃憤-button at the end of this first post!

@klingtnet

This comment has been minimized.

Show comment
Hide comment
@klingtnet

klingtnet Aug 24, 2016

I haven't done embedded programming besides some LED blinking but I would really like to get started with it. Should participants bring their own devices, like Arduinos or Raspberry Pi's?

I haven't done embedded programming besides some LED blinking but I would really like to get started with it. Should participants bring their own devices, like Arduinos or Raspberry Pi's?

@klingtnet

This comment has been minimized.

Show comment
Hide comment
@klingtnet

klingtnet Aug 24, 2016

An idea would be to program a super simple sound generator 馃攰 , at least this is what I would like to create anyway.

klingtnet commented Aug 24, 2016

An idea would be to program a super simple sound generator 馃攰 , at least this is what I would like to create anyway.

@TorstenScheck

This comment has been minimized.

Show comment
Hide comment
@TorstenScheck

TorstenScheck Aug 26, 2016

I'm most interested in event-driven hierarchical state machines for embedded control software.
The mio or futures_mio crates would be fine for generating events from and to CAN and GPIO, I guess.
Then I want to process these events with a UML state machine similar to Qt's QStateMachine framework. It should be possible to use the resulting lib crates on bare-metal projects, but my main target would be Linux. So Rust integration into Poky/Yocto is more important to me than bare-metal challenges. Obviously, the "embedded" field is very broad...

But for the workshop I also don't mind trying to have some LEDs blink. :-)

I'm most interested in event-driven hierarchical state machines for embedded control software.
The mio or futures_mio crates would be fine for generating events from and to CAN and GPIO, I guess.
Then I want to process these events with a UML state machine similar to Qt's QStateMachine framework. It should be possible to use the resulting lib crates on bare-metal projects, but my main target would be Linux. So Rust integration into Poky/Yocto is more important to me than bare-metal challenges. Obviously, the "embedded" field is very broad...

But for the workshop I also don't mind trying to have some LEDs blink. :-)

@skade

This comment has been minimized.

Show comment
Hide comment
@skade

skade Aug 26, 2016

Member

Well, the Workshops are intended to be meeting grounds instead of one person talking, many people listening.

RustFest should be the place where you meet people interested in your stuff, so hierarchical state machines is a great topic!

On 26 Aug 2016, at 10:12, TorstenScheck notifications@github.com wrote:

I'm most interested in event-driven hierarchical state machines for embedded control software.
The mio or futures_mio crates would be fine for generating events from and to CAN and GPIO, I guess.
Then I want to process these events with a UML state machine similar to Qt's QStateMachine framework. It should be possible to use the resulting lib crates on bare-metal projects, but my main target would be Linux. So Rust integration into Poky/Yocto is more important to me than bare-metal challenges. Obviously, the "embedded" field is very broad...

But for the workshop I also don't mind trying to have some LEDs blink. :-)


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Member

skade commented Aug 26, 2016

Well, the Workshops are intended to be meeting grounds instead of one person talking, many people listening.

RustFest should be the place where you meet people interested in your stuff, so hierarchical state machines is a great topic!

On 26 Aug 2016, at 10:12, TorstenScheck notifications@github.com wrote:

I'm most interested in event-driven hierarchical state machines for embedded control software.
The mio or futures_mio crates would be fine for generating events from and to CAN and GPIO, I guess.
Then I want to process these events with a UML state machine similar to Qt's QStateMachine framework. It should be possible to use the resulting lib crates on bare-metal projects, but my main target would be Linux. So Rust integration into Poky/Yocto is more important to me than bare-metal challenges. Obviously, the "embedded" field is very broad...

But for the workshop I also don't mind trying to have some LEDs blink. :-)


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

@SimonSapin

This comment has been minimized.

Show comment
Hide comment
@SimonSapin

SimonSapin Sep 8, 2016

I鈥檒l be there, but leaving in the afternoon for the airport.

I鈥檝e played and written about Rust on:

I鈥檒l bring the hardware for both.

I鈥檒l be there, but leaving in the afternoon for the airport.

I鈥檝e played and written about Rust on:

I鈥檒l bring the hardware for both.

@SimonSapin

This comment has been minimized.

Show comment
Hide comment
@SimonSapin

SimonSapin Sep 8, 2016

@klingtnet I don鈥檛 think anyone is gonna be handing out hardware, so if you want to play with some you should bring it :)

If you want to buy an Arduino board, be careful when choosing it as most of them have AVR microcontrollers. While https://github.com/avr-llvm/llvm and https://github.com/avr-rust/rust exist they seem fiddly to compile and use. You鈥檒l make your life easier by picking one of the Arduino boards with an ARM processor.

Raspberry Pi鈥檚 typically run Linux, so they鈥檙e probably much easier to use with Rust than anything without an OS.

@klingtnet I don鈥檛 think anyone is gonna be handing out hardware, so if you want to play with some you should bring it :)

If you want to buy an Arduino board, be careful when choosing it as most of them have AVR microcontrollers. While https://github.com/avr-llvm/llvm and https://github.com/avr-rust/rust exist they seem fiddly to compile and use. You鈥檒l make your life easier by picking one of the Arduino boards with an ARM processor.

Raspberry Pi鈥檚 typically run Linux, so they鈥檙e probably much easier to use with Rust than anything without an OS.

@klingtnet

This comment has been minimized.

Show comment
Hide comment
@klingtnet

klingtnet Sep 8, 2016

@SimonSapin Good to know that working with AVR's can be a bit fiddly, I was about to buy an Arduino Mega clone with such a controller.

@SimonSapin Good to know that working with AVR's can be a bit fiddly, I was about to buy an Arduino Mega clone with such a controller.

@pwrdwnsys

This comment has been minimized.

Show comment
Hide comment
@pwrdwnsys

pwrdwnsys Sep 9, 2016

@SimonSapin Thanks for the links to your articles. I have ordered a micro:bit kit to use during the workshop.

@SimonSapin Thanks for the links to your articles. I have ordered a micro:bit kit to use during the workshop.

@jamesmunns

This comment has been minimized.

Show comment
Hide comment
@jamesmunns

jamesmunns Sep 14, 2016

@SimonSapin I have two Teensy 3.2s (and might have a couple more at work I can borrow), I'll bring the ones I can.

@SimonSapin I have two Teensy 3.2s (and might have a couple more at work I can borrow), I'll bring the ones I can.

@skade

This comment has been minimized.

Show comment
Hide comment
@skade

skade Sep 14, 2016

Member

I got hold of the tessel 2 fleet from NodeSchool (10 pieces). They are labeled and named after those lables.

Member

skade commented Sep 14, 2016

I got hold of the tessel 2 fleet from NodeSchool (10 pieces). They are labeled and named after those lables.

@finnp finnp referenced this issue in finnp/hardware Sep 16, 2016

Closed

Rust Fest #1

@mbr

This comment has been minimized.

Show comment
Hide comment
@mbr

mbr Sep 16, 2016

I'll bring a bare metal ARM MCU that runs a Rust firmware already and a thesis about it.=)

mbr commented Sep 16, 2016

I'll bring a bare metal ARM MCU that runs a Rust firmware already and a thesis about it.=)

@vladimir-lu

This comment has been minimized.

Show comment
Hide comment
@vladimir-lu

vladimir-lu Sep 16, 2016

I'll be going to the embedded workshop with some arm hardware and lots of optimism... 馃槃

I'll be going to the embedded workshop with some arm hardware and lots of optimism... 馃槃

@jupp0r

This comment has been minimized.

Show comment
Hide comment
@jupp0r

jupp0r Sep 17, 2016

@TorstenScheck would you be interesting in starting to hack on something like Boost.MSM in Rust?

jupp0r commented Sep 17, 2016

@TorstenScheck would you be interesting in starting to hack on something like Boost.MSM in Rust?

@TorstenScheck

This comment has been minimized.

Show comment
Hide comment
@TorstenScheck

TorstenScheck Sep 17, 2016

@jupp0r Yes, I plan to work on a UML state machine in rust. I need to wrap my head around an appropriate architecture though. It should be event loop agnostic and allow idiomatic rust usage. I will have to study Tokio and Rotor to get a better feeling for such a library.

So far, I've used QStatemachine, which is also an UML Statemachine/Statechart framework:

@jupp0r Yes, I plan to work on a UML state machine in rust. I need to wrap my head around an appropriate architecture though. It should be event loop agnostic and allow idiomatic rust usage. I will have to study Tokio and Rotor to get a better feeling for such a library.

So far, I've used QStatemachine, which is also an UML Statemachine/Statechart framework:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment