Generally, I think we want the guides to track major blocks of functionality in Mynewt. To me, the major blocks are:

- OS
- Bluetooth Stack
- Bootloader, Flash & FS
- Console & Shell
- HAL
- Newtmgr

For the OS, I think we want:

- How to define a task that uses event queues to manage multiple events
- How to use memory pools and heap, and how to layout memory on embedded systems

For the Bluetooth Stack:

- How do we create an endpoint device, and define a GATT attribute
- How do we create a beacon device using the Bluetooth stack
- Connecting to a remote device, and reading attributes using the Bluetooth stack

Bootloader, Flash & FS

- How do we create a flash image, including bootloader and images
- How do you create, size and install NFFS on a device's flash
- How do you read & write files with the FS APIs

Console & Shell

- How do you initialize the console and shell, and log messages to the console
- How do you create custom shell commands

HAL

- The HAL is relatively undeveloped at the moment, I think we should add HAL tutorials in the next release.

Newtmgr

- How do you access a device using Newtmgr over BLE and Serial
- How do you do an image upgrade with Newtmgr
- How do you add a custom Newtmgr command

With the first release of Apache Mynewt poised to be unleashed to the world, 
I’d like to brainstorm some tutorial topics to get people trying out the OS and 
seeing how easy it is to use. Let’s try to come up with 10 tutorial topics.

Here are a few I thought of. I’d like us to come up with at least 10 additional 
tutorials. And yes, it would mean doing them and documenting them. Feel free to 
pick the list apart and suggest your own ideas. And we can come up with a final 
list and vote.

1. How to create a custom LED blink pattern on the STM32F Discovery board from 
STMicro
2. Turn on the LED x mins after specified wall clock time (like security lights 
that automatically on after 6 pm)
3. How to define a new event or statistic (e.g. available memory is less than a 
specified threshold) and log an alert (or read it with newtmgr)
4. How to write a test utility for a pkg

+1

5. How to plug in a different file system instead of nffs (say, yaffs ?)

I'd say this one should go in the later bucket.

6. Connect a digital sensor to a board (Arduino?) via GPIO or UART, detect and 
log level changes.

+1

7. Quiz buzzer - scan the push button input and display the corresponding 
number on a display

I think this one may be on the complicated side for what we can get done. But it would be nice to have.

8. Build a BLE beacon that broadcasts some internal information (manufacturing 
specific info or firmware info)
9. Query your Mynewt BLE device (board) remotely via console terminal

+1

10. Slinky - this is already there but could do with some embellishment esp. in 
the documentation.


Yeah. Slinky right now has too many things initialized for testing purposes. This needs to be stripped down.


Sterling

Reply via email to