diff --git a/content/technical/2019/03/sensortag-embedded-rust-coding-retreat.md b/content/technical/2019/03/sensortag-embedded-rust-coding-retreat.md index e54c24d..673fbc6 100644 --- a/content/technical/2019/03/sensortag-embedded-rust-coding-retreat.md +++ b/content/technical/2019/03/sensortag-embedded-rust-coding-retreat.md @@ -34,7 +34,7 @@ and a walk or two around the surrounds. After [linux.conf.au] I got inspired to set up some self-hosted home sensors and automation. I did some research and picked up two [Texas Instruments SensorTags][SensorTag] and a debugger add-on. It uses a [CC2650] -microcontroller with an ARM Cortex-M3 core and has support a number for low +microcontroller with an ARM Cortex-M3 core and has support for a number of low power wireless standards, such as Bluetooth, ZigBee, and 6LoWPAN. The CC2650 also has a low power 16-bit sensor controller that can be used to help achieve years long battery life from a single CR2032 button cell. In addition to the @@ -58,10 +58,10 @@ memory addresses. Fortunately [svd2rust] can automate this by converting System View Description XML files (SVD) into a Rust crate. Unfortunately TI don't publish SVD files for their devices. As luck would have it though, [M-Labs] have found that TI do publish XML descriptions in format of their own called -DSLite. They have written a tool, [dslite2svd], that converts this to SVD, so -you can then use `svd2rust`. It took a while to get `dslite2svd` working and I -had to tweak to the tool to handle differences in the files I was processing, -but eventually I was able to generate a crate that compiled. +DSLite. They have written a tool, [dslite2svd], that converts this to SVD, so +you can then use `svd2rust`. It took a while to get `dslite2svd` working. I had +to tweak it to handle differences in the files I was processing, but eventually +I was able to generate a crate that compiled. Now that I had an API for the chip I turned to working out how to program and debug the SensorTag with a very basic Rust program. I used the excellent @@ -214,7 +214,10 @@ The rest of the code is up on [Sourcehut]. It's all in a pretty rough state at the moment. I plan to tidy it up over the coming weeks and eventually publish the crates. If you're curious to see it now though, the repos are: -* [cc2650f128](https://git.sr.ht/~wezm/cc2650f128) -- chip support crate +* [cc2650f128](https://git.sr.ht/~wezm/cc2650f128) + [![crates.io](https://img.shields.io/crates/v/cc2650.svg)](https://crates.io/crates/cc2650) + [![Documentation](https://docs.rs/cc2650/badge.svg)](https://docs.rs/cc2650) + -- chip support crate generated by `dslite2svd` and `svd2rust`. * [cc26x0-hal](https://git.sr.ht/~wezm/cc26x0-hal) (see `wip` branch, currently very rough). diff --git a/content/technical/2019/03/sensortag-embedded-rust-coding-retreat.yaml b/content/technical/2019/03/sensortag-embedded-rust-coding-retreat.yaml index 177fe61..06d8342 100644 --- a/content/technical/2019/03/sensortag-embedded-rust-coding-retreat.yaml +++ b/content/technical/2019/03/sensortag-embedded-rust-coding-retreat.yaml @@ -4,7 +4,7 @@ extra: I attended a small coding retreat with some friends and worked on running kind: article section: technical created_at: 2019-03-12 19:45:00.000000000 +11:00 -#updated_at: 2019-03-02T14:09:11+11:00 +updated_at: 2019-03-23T13:16:07+11:00 keywords: - rust - embedded