Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

View cfriedt's full-sized avatar

Chris Friedt cfriedt

View GitHub Profile
@cfriedt
cfriedt / gist:817d88b96256020649a33f32487e114c
Created November 17, 2023 15:10
zephyr-release-stats.sh
#!/bin/bash
set -e
# usage:
# ./zephyr-release-stats.sh | tee zephyr-release-stats.csv
cd $HOME/zephyrproject/zephyr
RELEASES=( v2.0.0 v2.1.0 v2.2.0 v2.3.0 v2.4.0 v2.5.0 v2.6.0 v2.7.0 v3.0.0 v3.1.0 v3.2.0 v3.3.0 v3.4.0 v3.5.0 )
N=${#RELEASES[@]}
@cfriedt
cfriedt / using-linux-zephyr-and-greybus-for-iot-with-the-cc1352r-sensortag.md
Last active October 10, 2020 00:18
using-linux-zephyr-and-greybus-for-iot-with-the-cc1352r-sensortag.md
@cfriedt
cfriedt / using-linux-zephyr-and-greybus-to-blink-an-led-via-ieee-802154.md
Last active October 17, 2023 07:46
Blink an LED using Linux, Zephyr & Greybus via IEEE 802.15.4
@cfriedt
cfriedt / using-linux-zephyr-and-greybus-to-blink-an-led-via-bluetooth.md
Last active July 22, 2020 12:06
Blink an LED using Linux, Zephyr & Greybus via Bluetooth
@cfriedt
cfriedt / linux-to-zephyr-tcp-comm-802154-6lowpan.md
Last active June 14, 2020 12:50
Linux to Zephyr TCP Communication over IEEE 802.15.4 and 6LowPAN

Linux to Zephyr TCP Communication over IEEE 802.15.4 and 6LowPAN

This document describes, in some detail, the steps required to establish a reliable TCP commmunication channel between a Linux workstation and Zephyr device over IEEE 802.15.4 and IPv6 (via 6LowPAN).

Hardware Requirements

  • a Linux workstation running Ubuntu Bionic
    • Only x86_64 is supported at this time
  • a board that is supported by Zephyr with support for IEEE 802.15.4
  • In this example, we use the cc1352r1_launchxl
@cfriedt
cfriedt / wwtdow.md
Last active May 30, 2020 16:19
What Would Travis Do (On Windows)

What Would Travis Do (on Windows)

A Travis-CI Compatible Environment for Windows on Google Cloud

This gist should help users set a Google Cloud Virtual Machine (VM) environment similar environment to that provided by the Travis CI for Windows.

Initially, the regular traditional Windows Command Prompt is used for executing commands, and then git-bash is used for subsequent commands, much like the Travis environment.

Create a new VM Instance

@cfriedt
cfriedt / gcloud-windows-cmake-cplusplus.md
Last active May 30, 2020 14:09
Minimal C/C++ Build Environment for Windows Server 2016 on Google Cloud

Minimal C/C++ Build Environment for Windows Server 2016 on Google Cloud

These instrctions are an abridged version of the instructions to build WireShark for Windows found here.

In this case, the regular traditional Windows Command Prompt is used for executing commands, not the Windows PowerShell.

Rather than using a mingw environment (for gcc) or using LLVM/clang, we opt to simply use Microsoft Visual Studio. However, the Chocolatey package manager provides builds for a number of additional tools that might make Windows development seem a bit more familiar for non-Windows developers.

Create a new VM Instance

First, we have to set up a [virtual machine](https://en.wikipedia

@cfriedt
cfriedt / rfBleConnect.patch
Created January 1, 2020 03:46
rfBleConnect SimpleLink SDK-style example that runs on top of Zephyr
diff --git a/samples/rfBleConnect/CMakeLists.txt b/samples/rfBleConnect/CMakeLists.txt
new file mode 100644
index 0000000000..54b14914b5
--- /dev/null
+++ b/samples/rfBleConnect/CMakeLists.txt
@@ -0,0 +1,20 @@
+# SPDX-License-Identifier: Apache-2.0
+
+cmake_minimum_required(VERSION 3.13.1)
+
@cfriedt
cfriedt / log.txt
Last active January 11, 2020 03:43
zephyr ble debug output for ti cc1352r1 launchxl
*** Booting Zephyr OS build zephyr-v2.1.0-827-g823bf2ec1b38 ***
[00:00:00.010,253] <dbg> bt_conn.bt_conn_prepare_events:
[00:00:00.010,406] <dbg> bt_ctlr_hal_ti_radio.ble_cc13xx_cc26xx_data_init: device address: cd:de:1e:b0:6f:c0
[00:00:00.011,077] <dbg> bt_ctlr_hal_ti_radio.get_isr_latency: isr_latency: 99
[00:00:00.011,596] <dbg> bt_conn.bt_conn_prepare_events:
[00:00:00.011,688] <dbg> bt_conn.bt_conn_prepare_events:
[00:00:00.011,779] <dbg> bt_conn.bt_conn_prepare_events:
[00:00:00.011,871] <dbg> bt_conn.bt_conn_prepare_events:
[00:00:00.011,993] <dbg> bt_conn.bt_conn_prepare_events:
[00:00:00.012,084] <dbg> bt_conn.bt_conn_prepare_events: