Releases: LairdCP/SOM60-Release-Packages
60 SOM release 11.236.0.25
Normal Release Update
Release includes
CS-RN-SOM60 release notes in pdf form.
som60sd binary development kit image and SDK for C/C++ application development for SD card.
For using Summit Linux, jump below to our temporary Summit Linux reference guide for this release
For more documentation, please see the online documentation:
http://documentation.lairdconnect.com/Builds/60-SOM/latest/Content/Home.htm
Summit Linux Reference Guide
Prerequisites
The reference guide is designed to walk you through Laird Connectivity's development process for the 60 SOM, including the Summit Linux board support package. The most seamless workflow for developing your application for the 60 SOM is to set up a GitHub account, configure your SSH keys, and then install and configure Git on your development PC.
Ubuntu
Laird recommends Ubuntu 22.04 64-bit as the base operating system for your development. All instructions in this reference guide assume a developer on an Ubuntu 22.04 64-bit system. If using other than Ubuntu 22.04 64-bit, please ensure your Linux distribution is a 64-bit variant as the cross-compiling toolchain requires a 64-bit Linux environment.
SSH
Laird makes extensive use of GitHub and having proper Secure Shell (SSH) access to our repositories on GitHub. If you haven't set up SSH, you can use the instructions below to enable SSH for use with GitHub.
Check whether your private key (/.ssh/id_rsa) and public key (/.ssh/id_rsa.pub) files exist
$ ls -1 ~/.ssh/id_rsa*
If they do not, generate them
$ ssh-keygen
- Accept default file paths
- Accept no passphrase
View your public key
$ cat ~/.ssh/id_rsa.pub
git
Laird delivers the Summit Linux board support package using git repositories. If you haven't set up git, you can use the instructions below to enable git for use with GitHub.
Install and configure the "git" package
$ sudo apt install git
$ git config --global user.name "John Doe"
$ git config --global user.email "[email protected]"
$ git config --list
Expect user.name=John Doe
Expect user.email=[email protected]
repo
Laird uses the repo tool from the Android project to pull down and correctly layout the git repositories that comprise the Summit Linux board support package. To install repo on Ubuntu, use the instructions below.
$ sudo apt install repo
You can also get it by following the instructions here:
(https://source.android.com/source/downloading.html#installing-repo)
Github Account
Summit Linux board support packages are available on GitHub. The most seamless workflow throughout a integration is to set up a GitHub account (https://github.com/) and add your SSH public key to your GitHub account. Instructions for setting up a GitHub account and adding an SSH key are below.
Go to (https://github.com/join) and follow the instructions.
Once you have a GitHub account add your public SSH key generated previously.
View your public key
- $ cat ~/.ssh/id_rsa.pub
This should be similar to: - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDW5HxCJe56MZKkGxtHU2hkb1uyuJ3i+AFZNnSIApiDe1l1H9Y40YjBF+sE47GKgNuzQIMqKZ6xjRdb8KxvtjQIE/VcSiz9KIaFtKce/wKKxy0vOXbskSLzELlA9ovY9AJmp3qUaW+BEChnggERjPvq+1oyiKGRJzo51j/CQr+Yx8c2MtKubjHknKkQ2Th8kxL1bQj4lVgyfqNGj3DXUz9S+kTm+dLnmmOXlUfxx8Khrb7j0Dg+lk1lqeolqt6aFwpMnb8V2h5lDevJ0YSSyId01OnaAnIlx1lc+zauctsgtZf5Htl9cXS7Cp3OCMfSa+IKFeFL9/ku9C25EdA5zOnt [email protected]
Copy the contents of the above output to you clipboard
Follow the instructions at
(https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/) starting with Step 2.
Summit Linux
Overview
Summit Linux is Laird's board support package specifically tailored for Laird's SOMs and customer's connectivity driven use cases. Laird regularly updates Summit Linux by merging in the upstream Linux kernel and Buildroot. We merge in major long-term support kernel releases which allow our SOMs to utilize the latest in drivers and kernel space functionality, performance enhancements, security, and bug fixes. Also, we merge in major long-term support Buildroot releases which provide for the latest in over 2200 user space applications and libraries. Summit Linux takes this solid upstream heritage and integrates our custom platform enhancements for connectivity, security, and power consumption.
Buildroot
The core piece of Summit Linux is Buildroot. Buildroot is a from source build system designed to allow the customer to create a customized Linux image for a target embedded computing module. Buildroot is capable of configuring and building the bootloader, kernel, and rootfs for Laird's SOMs. Buildroot's core build system technologies are the well-known and easy to understand make build tool and kconfig configuration tool. This enables easy build customization through the user interface tools menuconfig or xconfig and Buildroot make commands. The Linux kernel, U-Boot bootloader, and Busybox core userspace ulilities toolkit all use make, Kconfig, and menuconfig. Build and configuration concepts found in one translate nicely to another. Buildroot has easy to read and extensive documentation available at (https://buildroot.org/docs.html) in pdf, html, and ascii form. If time permits, Laird highly recommends following the Training section of the documentation landing page.
Laird's Buildroot is a fork of the upstream Buildroot stable. Starting with and merging upstream allows Laird to know the authenticity of Buildroot's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our Buildroot fork.
Linux Kernel
Laird's kernel is a fork the upstream Linux stable kernel. Starting with and merging upstream allows Laird to know the authenticity of the kernel's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our kernel fork.
Toolchain
Laird preselects prebuilt toolchains for each release of Summit Linux for our SOMs. The advantage of using a preselected and prebuilt toolchain is the high level of QA verification on common components between stock Laird development images and customer images. Laird selects toolchains that have been marked stable by the Buildroot community and use proven components.
Getting Started with Summit Linux
This section will walk a developer through following:
Downloading a developer's SD card image
Flashing a developer's SD card image
Using a prebuilt SDK
Manifest file
Downloading the board support package source code
Building the developer's SD card image
Building the NAND image
Software update
Setup web server
Buildroot cache
Creating a custom SDK
Downloading a developer's SD card image
Summit Linux releases include a prebuilt SD card image as a starting point for evaluating and integrating a Summit Linux release on a Laird SOM. For the 60 SOM, these prebuilt images are found on at 60 SOM release page. These releases are named som60sd-laird-A.B.C.D.tar.bz2. These prebuilt SD card images are good for quickly testing a SOM running the latest software.
Flashing a developer's SD card image
Once the image is downloaded. Extract the image:
~/Downloads/som60sd$ tar -xvf som60sd-laird-11.x.y.z.tar.bz2
som60sd-laird-11.x.y.z/
som60sd-laird-11.x.y.z/target-sbom
som60sd-laird-11.x.y.z/host-sbom
som60sd-laird-11.x.y.z/u-boot-spl.bin
som60sd-laird-11.x.y.z/u-boot.itb
som60sd-laird-11.x.y.z/rootfs.tar
som60sd-laird-11.x.y.z/som60sd-sdk.tar.bz2
som60sd-laird-11.x.y.z/legal-info.tar.bz2
som60sd-laird-11.x.y.z/kernel.itb
som60sd-laird-11.x.y.z/mksdcard.sh
som60sd-laird-11.x.y.z/mksdimg.sh
To flash the image to an SD card use the mksdcard.sh script. The mksdcard.sh script takes the target device as an argument and will ask if you'd like to proceed with removing all data on your SD card and flashing a new image. This is shown below:
~/Downloads/som60sd-laird-11.x.y.z$ sudo ./mksdcard.sh /dev/sdc
[sudo] password for user:
*************************************************************************
WARNING: All data on /dev/sdc now will be destroyed! Continue? [y/n]
*************************************************************************
[Partitioning /dev/sdc...]
1024+0 records in
1024+0 recor...
60 SOM release 11.92.0.23
Normal Release Update
Release includes
CS-RN-SOM60 release notes in pdf form.
som60sd binary development kit image and SDK for C/C++ application development for SD card.
For using Summit Linux, jump below to our temporary Summit Linux reference guide for this release
For more documentation, please see the online documentation:
http://documentation.lairdconnect.com/Builds/60-SOM/latest/Content/Home.htm
Summit Linux Reference Guide
Prerequisites
The reference guide is designed to walk you through Laird Connectivity's development process for the 60 SOM, including the Summit Linux board support package. The most seamless workflow for developing your application for the 60 SOM is to set up a GitHub account, configure your SSH keys, and then install and configure Git on your development PC.
Ubuntu
Laird recommends Ubuntu 22.04 64-bit as the base operating system for your development. All instructions in this reference guide assume a developer on an Ubuntu 22.04 64-bit system. If using other than Ubuntu 22.04 64-bit, please ensure your Linux distribution is a 64-bit variant as the cross-compiling toolchain requires a 64-bit Linux environment.
SSH
Laird makes extensive use of GitHub and having proper Secure Shell (SSH) access to our repositories on GitHub. If you haven't set up SSH, you can use the instructions below to enable SSH for use with GitHub.
Check whether your private key (/.ssh/id_rsa) and public key (/.ssh/id_rsa.pub) files exist
$ ls -1 ~/.ssh/id_rsa*
If they do not, generate them
$ ssh-keygen
- Accept default file paths
- Accept no passphrase
View your public key
$ cat ~/.ssh/id_rsa.pub
git
Laird delivers the Summit Linux board support package using git repositories. If you haven't set up git, you can use the instructions below to enable git for use with GitHub.
Install and configure the "git" package
$ sudo apt install git
$ git config --global user.name "John Doe"
$ git config --global user.email "[email protected]"
$ git config --list
Expect user.name=John Doe
Expect user.email=[email protected]
repo
Laird uses the repo tool from the Android project to pull down and correctly layout the git repositories that comprise the Summit Linux board support package. To install repo on Ubuntu, use the instructions below.
$ sudo apt install repo
You can also get it by following the instructions here:
(https://source.android.com/source/downloading.html#installing-repo)
Github Account
Summit Linux board support packages are available on GitHub. The most seamless workflow throughout a integration is to set up a GitHub account (https://github.com/) and add your SSH public key to your GitHub account. Instructions for setting up a GitHub account and adding an SSH key are below.
Go to (https://github.com/join) and follow the instructions.
Once you have a GitHub account add your public SSH key generated previously.
View your public key
- $ cat ~/.ssh/id_rsa.pub
This should be similar to: - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDW5HxCJe56MZKkGxtHU2hkb1uyuJ3i+AFZNnSIApiDe1l1H9Y40YjBF+sE47GKgNuzQIMqKZ6xjRdb8KxvtjQIE/VcSiz9KIaFtKce/wKKxy0vOXbskSLzELlA9ovY9AJmp3qUaW+BEChnggERjPvq+1oyiKGRJzo51j/CQr+Yx8c2MtKubjHknKkQ2Th8kxL1bQj4lVgyfqNGj3DXUz9S+kTm+dLnmmOXlUfxx8Khrb7j0Dg+lk1lqeolqt6aFwpMnb8V2h5lDevJ0YSSyId01OnaAnIlx1lc+zauctsgtZf5Htl9cXS7Cp3OCMfSa+IKFeFL9/ku9C25EdA5zOnt [email protected]
Copy the contents of the above output to you clipboard
Follow the instructions at
(https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/) starting with Step 2.
Summit Linux
Overview
Summit Linux is Laird's board support package specifically tailored for Laird's SOMs and customer's connectivity driven use cases. Laird regularly updates Summit Linux by merging in the upstream Linux kernel and Buildroot. We merge in major long-term support kernel releases which allow our SOMs to utilize the latest in drivers and kernel space functionality, performance enhancements, security, and bug fixes. Also, we merge in major long-term support Buildroot releases which provide for the latest in over 2200 user space applications and libraries. Summit Linux takes this solid upstream heritage and integrates our custom platform enhancements for connectivity, security, and power consumption.
Buildroot
The core piece of Summit Linux is Buildroot. Buildroot is a from source build system designed to allow the customer to create a customized Linux image for a target embedded computing module. Buildroot is capable of configuring and building the bootloader, kernel, and rootfs for Laird's SOMs. Buildroot's core build system technologies are the well-known and easy to understand make build tool and kconfig configuration tool. This enables easy build customization through the user interface tools menuconfig or xconfig and Buildroot make commands. The Linux kernel, U-Boot bootloader, and Busybox core userspace ulilities toolkit all use make, Kconfig, and menuconfig. Build and configuration concepts found in one translate nicely to another. Buildroot has easy to read and extensive documentation available at (https://buildroot.org/docs.html) in pdf, html, and ascii form. If time permits, Laird highly recommends following the Training section of the documentation landing page.
Laird's Buildroot is a fork of the upstream Buildroot stable. Starting with and merging upstream allows Laird to know the authenticity of Buildroot's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our Buildroot fork.
Linux Kernel
Laird's kernel is a fork the upstream Linux stable kernel. Starting with and merging upstream allows Laird to know the authenticity of the kernel's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our kernel fork.
Toolchain
Laird preselects prebuilt toolchains for each release of Summit Linux for our SOMs. The advantage of using a preselected and prebuilt toolchain is the high level of QA verification on common components between stock Laird development images and customer images. Laird selects toolchains that have been marked stable by the Buildroot community and use proven components.
Getting Started with Summit Linux
This section will walk a developer through following:
Downloading a developer's SD card image
Flashing a developer's SD card image
Using a prebuilt SDK
Manifest file
Downloading the board support package source code
Building the developer's SD card image
Building the NAND image
Software update
Setup web server
Buildroot cache
Creating a custom SDK
Downloading a developer's SD card image
Summit Linux releases include a prebuilt SD card image as a starting point for evaluating and integrating a Summit Linux release on a Laird SOM. For the 60 SOM, these prebuilt images are found on at 60 SOM release page. These releases are named som60sd-laird-A.B.C.D.tar.bz2. These prebuilt SD card images are good for quickly testing a SOM running the latest software.
Flashing a developer's SD card image
Once the image is downloaded. Extract the image:
~/Downloads/som60sd$ tar -xvf som60sd-laird-10.x.y.z.tar.bz2
som60sd-laird-11.x.y.z/
som60sd-laird-11.x.y.z/target-sbom
som60sd-laird-11.x.y.z/host-sbom
som60sd-laird-11.x.y.z/u-boot-spl.bin
som60sd-laird-11.x.y.z/u-boot.itb
som60sd-laird-11.x.y.z/rootfs.tar
som60sd-laird-11.x.y.z/som60sd-sdk.tar.bz2
som60sd-laird-11.x.y.z/legal-info.tar.bz2
som60sd-laird-11.x.y.z/kernel.itb
som60sd-laird-11.x.y.z/mksdcard.sh
som60sd-laird-11.x.y.z/mksdimg.sh
To flash the image to an SD card use the mksdcard.sh script. The mksdcard.sh script takes the target device as an argument and will ask if you'd like to proceed with removing all data on your SD card and flashing a new image. This is shown below:
~/Downloads/som60sd-laird-11.x.y.z$ sudo ./mksdcard.sh /dev/sdc
[sudo] password for user:
60 SOM release 10.140.0.12
Normal Release Update
Release includes
CS-RN-SOM60 release notes in pdf form.
som60sd binary development kit image and SDK for C/C++ application development for SD card.
For using Laird Linux, jump below to our temporary Laird Linux reference guide for this release
For more documentation, please see the online documentation:
http://documentation.lairdconnect.com/Builds/60-SOM/latest/Content/Home.htm
Laird Linux Reference Guide
Prerequisites
The reference guide is designed to walk you through Laird Connectivity's development process for the 60 SOM, including the Laird Connectivity Linux board support package. The most seamless workflow for developing your application for the 60 SOM is to set up a GitHub account, configure your SSH keys, and then install and configure Git on your development PC.
Ubuntu
Laird recommends Ubuntu 18.04 64-bit as the base operating system for your development. All instructions in this reference guide assume a developer on an Ubuntu 18.04 64-bit system. If using other than Ubuntu 18.04 64-bit, please ensure you Linux distribution is a 64-bit variant as the cross-compiling toolchain requires a 64-bit Linux environment.
SSH
Laird makes extensive use of GitHub and having proper Secure Shell (SSH) access to our repositories on GitHub. If you haven't set up SSH, you can use the instructions below to enable SSH for use with GitHub.
Check whether your private key (/.ssh/id_rsa) and public key (/.ssh/id_rsa.pub) files exist
$ ls -1 ~/.ssh/id_rsa*
If they do not, generate them
$ ssh-keygen
- Accept default file paths
- Accept no passphrase
View your public key
$ cat ~/.ssh/id_rsa.pub
git
Laird delivers the Laird Linux board support package using git repositories. If you haven't set up git, you can use the instructions below to enable git for use with GitHub.
Install and configure the "git" package
$ sudo apt install git
$ git config --global user.name "John Doe"
$ git config --global user.email "[email protected]"
$ git config --list
Expect user.name=John Doe
Expect user.email=[email protected]
repo
Laird uses the repo tool from the Android project to pull down and correctly layout the git repositories that comprise the Laird Linux board support package. To install repo on Ubuntu, use the instructions below.
$ sudo apt install repo
You can also get it by following the instructions here:
(https://source.android.com/source/downloading.html#installing-repo)
Github Account
Laird Linux board support packages are available on GitHub. The most seamless workflow throughout a integration is to set up a GitHub account (https://github.com/) and add your SSH public key to your GitHub account. Instructions for setting up a GitHub account and adding an SSH key are below.
Go to (https://github.com/join) and follow the instructions.
Once you have a GitHub account add your public SSH key generated previously.
View your public key
- $ cat ~/.ssh/id_rsa.pub
This should be similar to: - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDW5HxCJe56MZKkGxtHU2hkb1uyuJ3i+AFZNnSIApiDe1l1H9Y40YjBF+sE47GKgNuzQIMqKZ6xjRdb8KxvtjQIE/VcSiz9KIaFtKce/wKKxy0vOXbskSLzELlA9ovY9AJmp3qUaW+BEChnggERjPvq+1oyiKGRJzo51j/CQr+Yx8c2MtKubjHknKkQ2Th8kxL1bQj4lVgyfqNGj3DXUz9S+kTm+dLnmmOXlUfxx8Khrb7j0Dg+lk1lqeolqt6aFwpMnb8V2h5lDevJ0YSSyId01OnaAnIlx1lc+zauctsgtZf5Htl9cXS7Cp3OCMfSa+IKFeFL9/ku9C25EdA5zOnt [email protected]
Copy the contents of the above output to you clipboard
Follow the instructions at
(https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/) starting with Step 2.
Laird Linux
Overview
Laird Linux is Laird's board support package specifically tailored for Laird's SOMs and customer's connectivity driven use cases. Laird regularly updates Laird Linux by merging in the upstream Linux kernel and Buildroot. We merge in major long-term support kernel releases which allow our SOMs to utilize the latest in drivers and kernel space functionality, performance enhancements, security, and bug fixes. Also, we merge in major long-term support Buildroot releases which provide for the latest in over 2200 user space applications and libraries. Laird Linux takes this solid upstream heritage and integrates our custom platform enhancements for connectivity, security, and power consumption.
Buildroot
The core piece of Laird Linux is Buildroot. Buildroot is a from source build system designed to allow the customer to create a customized Linux image for a target embedded computing module. Buildroot is capable of configuring and building the bootloader, kernel, and rootfs for Laird's SOMs. Buildroot's core build system technologies are the well-known and easy to understand make build tool and kconfig configuration tool. This enables easy build customization through the user interface tools menuconfig or xconfig and Buildroot make commands. The Linux kernel, U-Boot bootloader, and Busybox core userspace ulilities toolkit all use make, Kconfig, and menuconfig. Build and configuration concepts found in one translate nicely to another. Buildroot has easy to read and extensive documentation available at (https://buildroot.org/docs.html) in pdf, html, and ascii form. If time permits, Laird highly recommends following the Training section of the documentation landing page.
Laird's Buildroot is a fork of the upstream Buildroot stable. Starting with and merging upstream allows Laird to know the authenticity of Buildroot's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our Buildroot fork.
Linux Kernel
Laird's kernel is a fork the upstream Linux stable kernel. Starting with and merging upstream allows Laird to know the authenticity of the kernel's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our kernel fork.
Toolchain
Laird preselects prebuilt toolchains for each release of Laird Linux for our SOMs. The advantage of using a preselected and prebuilt toolchain is the high level of QA verification on common components between stock Laird development images and customer images. Laird selects toolchains that have been marked stable by the Buildroot community and use proven components.
Getting Started with Laird Linux
This section will walk a developer through following:
Downloading a developer's SD card image
Flashing a developer's SD card image
Using a prebuilt SDK
Manifest file
Downloading the board support package source code
Building the developer's SD card image
Building the NAND image
Software update
Setup web server
Buildroot cache
Creating a custom SDK
Downloading a developer's SD card image
Laird Linux releases include a prebuilt SD card image as a starting point for evaluating and integrating a Laird Linux release on a Laird SOM. For the 60 SOM, these prebuilt images are found on at 60 SOM release page. These releases are named som60sd-laird-A.B.C.D.tar.bz2. These prebuilt SD card images are good for quickly testing a SOM running the latest software.
Flashing a developer's SD card image
Once the image is downloaded. Extract the image:
~/Downloads/som60sd$ tar -xvf som60sd-laird-10.x.y.z.tar.bz2
som60sd-laird-10.x.y.z/
som60sd-laird-10.x.y.z/target-sbom
som60sd-laird-10.x.y.z/host-sbom
som60sd-laird-10.x.y.z/u-boot-spl.bin
som60sd-laird-10.x.y.z/u-boot.itb
som60sd-laird-10.x.y.z/rootfs.tar
som60sd-laird-10.x.y.z/som60sd-sdk.tar.bz2
som60sd-laird-10.x.y.z/legal-info.tar.bz2
som60sd-laird-10.x.y.z/kernel.itb
som60sd-laird-10.x.y.z/mksdcard.sh
som60sd-laird-10.x.y.z/mksdimg.sh
To flash the image to an SD card use the mksdcard.sh script. The mksdcard.sh script takes the target device as an argument and will ask if you'd like to proceed with removing all data on your SD card and flashing a new image. This is shown below:
~/Downloads/som60sd-laird-10.x.y.z$ sudo ./mksdcard.sh /dev/sdc
[sudo] password for user:
60 SOM release 10.40.0.12
Normal Release Update
Release includes
- CS-RN-SOM60 release notes in pdf form.
- som60sd binary development kit image and SDK for C/C++ application development for SD card.
For using Laird Linux, jump below to our temporary Laird Linux reference guide for this release
For more documentation, please see the online documentation:
http://documentation.lairdconnect.com/Builds/60-SOM/latest/Content/Home.htm
Laird Linux Reference Guide
Prerequisites
The reference guide is designed to walk you through Laird Connectivity's development process for the 60 SOM, including the Laird Connectivity Linux board support package. The most seamless workflow for developing your application for the 60 SOM is to set up a GitHub account, configure your SSH keys, and then install and configure Git on your development PC.
Ubuntu
Laird recommends Ubuntu 18.04 64-bit as the base operating system for your development. All instructions in this reference guide assume a developer on an Ubuntu 18.04 64-bit system. If using other than Ubuntu 18.04 64-bit, please ensure you Linux distribution is a 64-bit variant as the cross-compiling toolchain requires a 64-bit Linux environment.
SSH
Laird makes extensive use of GitHub and having proper Secure Shell (SSH) access to our repositories on GitHub. If you haven't set up SSH, you can use the instructions below to enable SSH for use with GitHub.
- Check whether your private key (
/.ssh/id_rsa) and public key (/.ssh/id_rsa.pub) files exist $ ls -1 ~/.ssh/id_rsa*
- If they do not, generate them
$ ssh-keygen
1. Accept default file paths
2. Accept no passphrase- View your public key
$ cat ~/.ssh/id_rsa.pub
git
Laird delivers the Laird Linux board support package using git repositories. If you haven't set up git, you can use the instructions below to enable git for use with GitHub.
- Install and configure the "git" package
$ sudo apt install git
$ git config --global user.name "John Doe"
$ git config --global user.email "[email protected]"
$ git config --list
- Expect user.name=John Doe
- Expect user.email=[email protected]
repo
Laird uses the repo tool from the Android project to pull down and correctly layout the git repositories that comprise the Laird Linux board support package. To install repo on Ubuntu, use the instructions below.
$ sudo apt install repo
You can also get it by following the instructions here:
Github Account
Laird Linux board support packages are available on GitHub. The most seamless workflow throughout a integration is to set up a GitHub account (https://github.com/) and add your SSH public key to your GitHub account. Instructions for setting up a GitHub account and adding an SSH key are below.
- Go to (https://github.com/join) and follow the instructions.
- Once you have a GitHub account add your public SSH key generated previously.
- View your public key
1.$ cat ~/.ssh/id_rsa.pub
- This should be similar to:
1.ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDW5HxCJe56MZKkGxtHU2hkb1uyuJ3i+AFZNnSIApiDe1l1H9Y40YjBF+sE47GKgNuzQIMqKZ6xjRdb8KxvtjQIE/VcSiz9KIaFtKce/wKKxy0vOXbskSLzELlA9ovY9AJmp3qUaW+BEChnggERjPvq+1oyiKGRJzo51j/CQr+Yx8c2MtKubjHknKkQ2Th8kxL1bQj4lVgyfqNGj3DXUz9S+kTm+dLnmmOXlUfxx8Khrb7j0Dg+lk1lqeolqt6aFwpMnb8V2h5lDevJ0YSSyId01OnaAnIlx1lc+zauctsgtZf5Htl9cXS7Cp3OCMfSa+IKFeFL9/ku9C25EdA5zOnt [email protected]
- Copy the contents of the above output to you clipboard
- Follow the instructions at
(https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/) starting with Step 2.
Laird Linux
Overview
Laird Linux is Laird's board support package specifically tailored for Laird's SOMs and customer's connectivity driven use cases. Laird regularly updates Laird Linux by merging in the upstream Linux kernel and Buildroot. We merge in major long-term support kernel releases which allow our SOMs to utilize the latest in drivers and kernel space functionality, performance enhancements, security, and bug fixes. Also, we merge in major long-term support Buildroot releases which provide for the latest in over 2200 user space applications and libraries. Laird Linux takes this solid upstream heritage and integrates our custom platform enhancements for connectivity, security, and power consumption.
Buildroot
The core piece of Laird Linux is Buildroot. Buildroot is a from source build system designed to allow the customer to create a customized Linux image for a target embedded computing module. Buildroot is capable of configuring and building the bootloader, kernel, and rootfs for Laird's SOMs. Buildroot's core build system technologies are the well-known and easy to understand make build tool and kconfig configuration tool. This enables easy build customization through the user interface tools menuconfig or xconfig and Buildroot make commands. The Linux kernel, U-Boot bootloader, and Busybox core userspace ulilities toolkit all use make, Kconfig, and menuconfig. Build and configuration concepts found in one translate nicely to another. Buildroot has easy to read and extensive documentation available at (https://buildroot.org/docs.html) in pdf, html, and ascii form. If time permits, Laird highly recommends following the Training section of the documentation landing page.
Laird's Buildroot is a fork of the upstream Buildroot stable. Starting with and merging upstream allows Laird to know the authenticity of Buildroot's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our Buildroot fork.
Linux Kernel
Laird's kernel is a fork the upstream Linux stable kernel. Starting with and merging upstream allows Laird to know the authenticity of the kernel's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our kernel fork.
Toolchain
Laird preselects prebuilt toolchains for each release of Laird Linux for our SOMs. The advantage of using a preselected and prebuilt toolchain is the high level of QA verification on common components between stock Laird development images and customer images. We are currently utilizing prebuilt toolchains from Bootlin’s toolchain program. Bootlin, who is major contributor to Buildroot, provides a variety of prebuilt toolchains created from Buildroot's toolchain building capabilties. Laird selects toolchains that have been marked stable by the Buildroot community and use proven components. Beyond the toolchains themselves, Bootlin also stores the following artifacts for reference from their Buildroot based toolchain generation process: README of all essential information, defconfig fragment to generate toolchain, build log, software bill-of-material (SBOM), test system image, and test system defconfig. Laird configures each Laird Linux release to automatically download and use the correct toolchain.
Getting Started with Laird Linux
This section will walk a developer through following:
- Downloading a developer's SD card image
- Flashing a developer's SD card image
- Using a prebuilt SDK
- Manifest file
- Downloading the board support package source code
- Building the developer's SD card image
- Building the NAND image
- Software update
- Setup web server
- Buildroot cache
- Creating a custom SDK
Downloading a developer's SD card image
Laird Linux releases include a prebuilt SD card image as a starting point for evaluating and integrating a Laird Linux release on a Laird SOM. For the 60 SOM, these prebuilt images are found on at 60 SOM release page. These releases are named som60sd-laird-A.B.C.D.tar.bz2. These prebuilt SD card images are good for quickly testing a SOM running the latest software.
Flashing a developer's SD card image
Once the image is downloaded. Extract the image:
~/Downloads/som60sd$ tar -xvf som60sd-laird-7.x.y.z.tar.bz2
som60sd-laird-7.x.y.z/
som60sd-laird-7.x.y.z/target-sbom
som60sd-laird-7.x.y.z/host-sbom
som60sd-laird-7.x.y.z/u-boot-spl.bin
som60sd-laird-7.x.y.z/u-boot.itb
som60sd-laird-7.x.y.z/rootfs.tar
som60sd-laird-7.x.y.z/som60sd-sdk.tar.bz2
som60sd-laird-7.x.y.z/legal-info.tar.bz2
som60sd-laird-7.x.y.z/kernel.itb
som60sd-laird-7.x.y.z/mksdcard.sh
som60sd-laird-7.x.y.z/mksdimg.sh
To flash the image to an SD card use the mksdcard.sh script. The mksdcard.sh script takes the target device as an argument and will ask if you'd like to proceed with removing all data on your SD card and flashing a new image. This is shown below:
~/Downloads/som60sd-laird-7.x.y.z$ sudo ./mksdcard.sh /dev/sdc
[sudo] password for user:
*************************************************************************
WARNING: All data on /dev/sdc now will be destroyed! Continue? [y/n]
*********************************************************...
60 SOM release 7.648.0.13
Normal Release Update
Release includes
- CS-RN-SOM60 release notes in pdf form.
- som60sd binary development kit image and SDK for C/C++ application development for SD card.
For using Laird Linux, jump below to our temporary Laird Linux reference guide for this release
For more documentation, please see the online documentation:
http://documentation.lairdconnect.com/Builds/60-SOM/latest/Content/Home.htm
Laird Linux Reference Guide
Prerequisites
The reference guide is designed to walk you through Laird Connectivity's development process for the 60 SOM, including the Laird Connectivity Linux board support package. The most seamless workflow for developing your application for the 60 SOM is to set up a GitHub account, configure your SSH keys, and then install and configure Git on your development PC.
Ubuntu
Laird recommends Ubuntu 18.04 64-bit as the base operating system for your development. All instructions in this reference guide assume a developer on an Ubuntu 18.04 64-bit system. If using other than Ubuntu 18.04 64-bit, please ensure you Linux distribution is a 64-bit variant as the cross-compiling toolchain requires a 64-bit Linux environment.
SSH
Laird makes extensive use of GitHub and having proper Secure Shell (SSH) access to our repositories on GitHub. If you haven't set up SSH, you can use the instructions below to enable SSH for use with GitHub.
- Check whether your private key (
/.ssh/id_rsa) and public key (/.ssh/id_rsa.pub) files exist $ ls -1 ~/.ssh/id_rsa*
- If they do not, generate them
$ ssh-keygen
1. Accept default file paths
2. Accept no passphrase- View your public key
$ cat ~/.ssh/id_rsa.pub
git
Laird delivers the Laird Linux board support package using git repositories. If you haven't set up git, you can use the instructions below to enable git for use with GitHub.
- Install and configure the "git" package
$ sudo apt install git
$ git config --global user.name "John Doe"
$ git config --global user.email "[email protected]"
$ git config --list
- Expect user.name=John Doe
- Expect user.email=[email protected]
repo
Laird uses the repo tool from the Android project to pull down and correctly layout the git repositories that comprise the Laird Linux board support package. To install repo on Ubuntu, use the instructions below.
$ sudo apt install repo
You can also get it by following the instructions here:
Github Account
Laird Linux board support packages are availabe on GitHub. The most seamless workflow throughout a integration is to set up a GitHub account (https://github.com/) and add your SSH public key to your GitHub account. Instructions for setting up a GitHub account and adding an SSH key are below.
- Go to (https://github.com/join) and follow the instructions.
- Once you have a GitHub account add your public SSH key generated previously.
- View your public key
1.$ cat ~/.ssh/id_rsa.pub
- This should be similar to:
1.ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDW5HxCJe56MZKkGxtHU2hkb1uyuJ3i+AFZNnSIApiDe1l1H9Y40YjBF+sE47GKgNuzQIMqKZ6xjRdb8KxvtjQIE/VcSiz9KIaFtKce/wKKxy0vOXbskSLzELlA9ovY9AJmp3qUaW+BEChnggERjPvq+1oyiKGRJzo51j/CQr+Yx8c2MtKubjHknKkQ2Th8kxL1bQj4lVgyfqNGj3DXUz9S+kTm+dLnmmOXlUfxx8Khrb7j0Dg+lk1lqeolqt6aFwpMnb8V2h5lDevJ0YSSyId01OnaAnIlx1lc+zauctsgtZf5Htl9cXS7Cp3OCMfSa+IKFeFL9/ku9C25EdA5zOnt [email protected]
- Copy the contents of the above output to you clipboard
- Follow the instructions at
(https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/) starting with Step 2.
Laird Linux
Overview
Laird Linux is Laird's board support package specifically tailored for Laird's SOMs and customer's connectivity driven use cases. Laird regularly updates Laird Linux by merging in the upstream Linux kernel and Buildroot. We merge in major long-term support kernel releases which allow our SOMs to utilize the latest in drivers and kernel space functionality, performance enhancements, security, and bug fixes. Also, we merge in major long-term support Buildroot releases which provide for the latest in over 2200 user space applications and libraries. Laird Linux takes this solid upstream heritage and integrates our custom platform enhancements for connectivity, security, and power consumption.
Buildroot
The core piece of Laird Linux is Buildroot. Buildroot is a from source build system designed to allow the customer to create a customized Linux image for a target embedded computing module. Buildroot is capable of configuring and building the bootloader, kernel, and rootfs for Laird's SOMs. Buildroot's core build system technologies are the well-known and easy to understand make build tool and kconfig configuration tool. This enables easy build customization through the user interface tools menuconfig or xconfig and Buildroot make commands. The Linux kernel, U-Boot bootloader, and Busybox core userspace ulilities toolkit all use make, Kconfig, and menuconfig. Build and configuration concepts found in one translate nicely to another. Buildroot has easy to read and extensive documentation available at (https://buildroot.org/docs.html) in pdf, html, and ascii form. If time permits, Laird highly recommends following the Training section of the documentation landing page.
Laird's Buildroot is a fork of the upstream Buildroot stable. Starting with and merging upstream allows Laird to know the authenticity of Buildroot's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our Buildroot fork.
Linux Kernel
Laird's kernel is a fork the upstream Linux stable kernel. Starting with and merging upstream allows Laird to know the authenticity of the kernel's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our kernel fork.
Toolchain
Laird preselects prebuilt toolchains for each release of Laird Linux for our SOMs. The advantage of using a preselected and prebuilt toolchain is the high level of QA verification on common components between stock Laird development images and customer images. We are currently ultilizing prebuilt toolchains from Bootlin’s toolchain program. Bootlin, who is major contributor to Buildroot, provides a variety of prebuilt toolchains created from Buildroot's toolchain building capabilties. Laird selects toolchains that have been marked stable by the Buildroot community and use proven components. Beyond the toolchains themselves, Bootlin also stores the following artifacts for reference from their Buildroot based toolchain generation process: README of all essential information, defconfig fragment to generate toolchain, build log, software bill-of-material (SBOM), test system image, and test system defconfig. Laird configures each Laird Linux release to automatically download and use the correct toolchain.
Getting Started with Laird Linux
This section will walk a developer through following:
- Downloading a developer's SD card image
- Flashing a developer's SD card image
- Using a prebuilt SDK
- Manifest file
- Downloading the board support package source code
- Building the developer's SD card image
- Building the NAND image
- Software update
- Setup web server
- Buildroot cache
- Creating a custom SDK
Downloading a developer's SD card image
Laird Linux releases include a prebuilt SD card image as a starting point for evaluating and integrating a Laird Linux release on a Laird SOM. For the 60 SOM, these prebuilt images are found on at 60 SOM release page. These releases are named som60sd-laird-A.B.C.D.tar.bz2. These prebuilt SD card images are good for quickly testing a SOM running the latest software.
Flashing a developer's SD card image
Once the image is downloaded. Extract the image:
~/Downloads/som60sd$ tar -xvf som60sd-laird-7.x.y.z.tar.bz2
som60sd-laird-7.x.y.z/
som60sd-laird-7.x.y.z/target-sbom
som60sd-laird-7.x.y.z/host-sbom
som60sd-laird-7.x.y.z/u-boot-spl.bin
som60sd-laird-7.x.y.z/u-boot.itb
som60sd-laird-7.x.y.z/rootfs.tar
som60sd-laird-7.x.y.z/som60sd-sdk.tar.bz2
som60sd-laird-7.x.y.z/legal-info.tar.bz2
som60sd-laird-7.x.y.z/kernel.itb
som60sd-laird-7.x.y.z/mksdcard.sh
som60sd-laird-7.x.y.z/mksdimg.sh
To flash the image to an SD card use the mksdcard.sh script. The mksdcard.sh script takes the target device as an argument and will ask if you'd like to proceed with removing all data on your SD card and flashing a new image. This is shown below:
~/Downloads/som60sd-laird-7.x.y.z$ sudo ./mksdcard.sh /dev/sdc
[sudo] password for user:
*************************************************************************
WARNING: All data on /dev/sdc now will be destroyed! Continue? [y/n]
*********************************************************...
60 SOM release 7.8.0.28
Normal Release Update
Release includes
- CS-RN-SOM60 release notes in pdf form.
- som60sd binary development kit image and SDK for C/C++ application development for SD card.
For using Laird Linux, jump below to our temporary Laird Linux reference guide for this release
For more documentation, please see the online documentation:
http://documentation.lairdconnect.com/Builds/60-SOM/latest/Content/Home.htm
Laird Linux Reference Guide
Prerequisites
The reference guide is designed to walk you through Laird Connectivity's development process for the 60 SOM, including the Laird Connectivity Linux board support package. The most seamless workflow for developing your application for the 60 SOM is to set up a GitHub account, configure your SSH keys, and then install and configure Git on your development PC.
Ubuntu
Laird recommends Ubuntu 18.04 64-bit as the base operating system for your development. All instructions in this reference guide assume a developer on an Ubuntu 18.04 64-bit system. If using other than Ubuntu 18.04 64-bit, please ensure you Linux distribution is a 64-bit variant as the cross-compiling toolchain requires a 64-bit Linux environment.
SSH
Laird makes extensive use of GitHub and having proper Secure Shell (SSH) access to our repositories on GitHub. If you haven't set up SSH, you can use the instructions below to enable SSH for use with GitHub.
- Check whether your private key (
/.ssh/id_rsa) and public key (/.ssh/id_rsa.pub) files exist $ ls -1 ~/.ssh/id_rsa*
- If they do not, generate them
$ ssh-keygen
1. Accept default file paths
2. Accept no passphrase- View your public key
$ cat ~/.ssh/id_rsa.pub
git
Laird delivers the Laird Linux board support package using git repositories. If you haven't set up git, you can use the instructions below to enable git for use with GitHub.
- Install and configure the "git" package
$ sudo apt install git
$ git config --global user.name "John Doe"
$ git config --global user.email "[email protected]"
$ git config --list
- Expect user.name=John Doe
- Expect user.email=[email protected]
repo
Laird uses the repo tool from the Android project to pull down and correctly layout the git repositories that comprise the Laird Linux board support package. To install repo on Ubuntu, use the instructions below.
$ sudo apt install repo
You can also get it by following the instructions here:
Github Account
Laird Linux board support packages are availabe on GitHub. The most seamless workflow throughout a integration is to set up a GitHub account (https://github.com/) and add your SSH public key to your GitHub account. Instructions for setting up a GitHub account and adding an SSH key are below.
- Go to (https://github.com/join) and follow the instructions.
- Once you have a GitHub account add your public SSH key generated previously.
- View your public key
1.$ cat ~/.ssh/id_rsa.pub
- This should be similar to:
1.ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDW5HxCJe56MZKkGxtHU2hkb1uyuJ3i+AFZNnSIApiDe1l1H9Y40YjBF+sE47GKgNuzQIMqKZ6xjRdb8KxvtjQIE/VcSiz9KIaFtKce/wKKxy0vOXbskSLzELlA9ovY9AJmp3qUaW+BEChnggERjPvq+1oyiKGRJzo51j/CQr+Yx8c2MtKubjHknKkQ2Th8kxL1bQj4lVgyfqNGj3DXUz9S+kTm+dLnmmOXlUfxx8Khrb7j0Dg+lk1lqeolqt6aFwpMnb8V2h5lDevJ0YSSyId01OnaAnIlx1lc+zauctsgtZf5Htl9cXS7Cp3OCMfSa+IKFeFL9/ku9C25EdA5zOnt [email protected]
- Copy the contents of the above output to you clipboard
- Follow the instructions at
(https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/) starting with Step 2.
Laird Linux
Overview
Laird Linux is Laird's board support package specifically tailored for Laird's SOMs and customer's connectivity driven use cases. Laird regularly updates Laird Linux by merging in the upstream Linux kernel and Buildroot. We merge in major long-term support kernel releases which allow our SOMs to utilize the latest in drivers and kernel space functionality, performance enhancements, security, and bug fixes. Also, we merge in major long-term support Buildroot releases which provide for the latest in over 2200 user space applications and libraries. Laird Linux takes this solid upstream heritage and integrates our custom platform enhancements for connectivity, security, and power consumption.
Buildroot
The core piece of Laird Linux is Buildroot. Buildroot is a from source build system designed to allow the customer to create a customized Linux image for a target embedded computing module. Buildroot is capable of configuring and building the bootloader, kernel, and rootfs for Laird's SOMs. Buildroot's core build system technologies are the well-known and easy to understand make build tool and kconfig configuration tool. This enables easy build customization through the user interface tools menuconfig or xconfig and Buildroot make commands. The Linux kernel, U-Boot bootloader, and Busybox core userspace ulilities toolkit all use make, Kconfig, and menuconfig. Build and configuration concepts found in one translate nicely to another. Buildroot has easy to read and extensive documentation available at (https://buildroot.org/docs.html) in pdf, html, and ascii form. If time permits, Laird highly recommends following the Training section of the documentation landing page.
Laird's Buildroot is a fork of the upstream Buildroot stable. Starting with and merging upstream allows Laird to know the authenticity of Buildroot's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our Buildroot fork.
Linux Kernel
Laird's kernel is a fork the upstream Linux stable kernel. Starting with and merging upstream allows Laird to know the authenticity of the kernel's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our kernel fork.
Toolchain
Laird preselects prebuilt toolchains for each release of Laird Linux for our SOMs. The advantage of using a preselected and prebuilt toolchain is the high level of QA verification on common components between stock Laird development images and customer images. We are currently ultilizing prebuilt toolchains from Bootlin’s toolchain program. Bootlin, who is major contributor to Buildroot, provides a variety of prebuilt toolchains created from Buildroot's toolchain building capabilties. Laird selects toolchains that have been marked stable by the Buildroot community and use proven components. Beyond the toolchains themselves, Bootlin also stores the following artifacts for reference from their Buildroot based toolchain generation process: README of all essential information, defconfig fragment to generate toolchain, build log, software bill-of-material (SBOM), test system image, and test system defconfig. Laird configures each Laird Linux release to automatically download and use the correct toolchain.
Getting Started with Laird Linux
This section will walk a developer through following:
- Downloading a developer's SD card image
- Flashing a developer's SD card image
- Using a prebuilt SDK
- Manifest file
- Downloading the board support package source code
- Building the developer's SD card image
- Building the NAND image
- Software update
- Setup web server
- Buildroot cache
- Creating a custom SDK
Downloading a developer's SD card image
Laird Linux releases include a prebuilt SD card image as a starting point for evaluating and integrating a Laird Linux release on a Laird SOM. For the 60 SOM, these prebuilt images are found on at 60 SOM release page. These releases are named som60sd-laird-A.B.C.D.tar.bz2. These prebuilt SD card images are good for quickly testing a SOM running the latest software.
Flashing a developer's SD card image
Once the image is downloaded. Extract the image:
~/Downloads/som60sd$ tar -xvf som60sd-laird-7.x.y.z.tar.bz2
som60sd-laird-7.x.y.z/
som60sd-laird-7.x.y.z/target-sbom
som60sd-laird-7.x.y.z/host-sbom
som60sd-laird-7.x.y.z/u-boot-spl.bin
som60sd-laird-7.x.y.z/u-boot.itb
som60sd-laird-7.x.y.z/rootfs.tar
som60sd-laird-7.x.y.z/som60sd-sdk.tar.bz2
som60sd-laird-7.x.y.z/legal-info.tar.bz2
som60sd-laird-7.x.y.z/kernel.itb
som60sd-laird-7.x.y.z/mksdcard.sh
som60sd-laird-7.x.y.z/mksdimg.sh
To flash the image to an SD card use the mksdcard.sh script. The mksdcard.sh script takes the target device as an argument and will ask if you'd like to proceed with removing all data on your SD card and flashing a new image. This is shown below:
~/Downloads/som60sd-laird-7.x.y.z$ sudo ./mksdcard.sh /dev/sdc
[sudo] password for user:
*************************************************************************
WARNING: All data on /dev/sdc now will be destroyed! Continue? [y/n]
*********************************************************...
60 SOM Release 7.4.0.13
Normal Release Update
Release includes
- CS-RN-SOM60 release notes in pdf form.
- som60sd binary development kit image and SDK for C/C++ application development for SD card.
For using Laird Linux, jump below to our temporary Laird Linux reference guide for this release
For more documentation, please see the online documentation:
http://documentation.lairdconnect.com/Builds/60-SOM/latest/Content/Home.htm
Laird Linux Reference Guide
Prerequisites
The reference guide is designed to walk you through Laird Connectivity's development process for the 60 SOM, including the Laird Connectivity Linux board support package. The most seamless workflow for developing your application for the 60 SOM is to set up a GitHub account, configure your SSH keys, and then install and configure Git on your development PC.
Ubuntu
Laird recommends Ubuntu 18.04 64-bit as the base operating system for your development. All instructions in this reference guide assume a developer on an Ubuntu 18.04 64-bit system. If using other than Ubuntu 18.04 64-bit, please ensure you Linux distribution is a 64-bit variant as the cross-compiling toolchain requires a 64-bit Linux environment.
SSH
Laird makes extensive use of GitHub and having proper Secure Shell (SSH) access to our repositories on GitHub. If you haven't set up SSH, you can use the instructions below to enable SSH for use with GitHub.
- Check whether your private key (
/.ssh/id_rsa) and public key (/.ssh/id_rsa.pub) files exist $ ls -1 ~/.ssh/id_rsa*
- If they do not, generate them
$ ssh-keygen
1. Accept default file paths
2. Accept no passphrase- View your public key
$ cat ~/.ssh/id_rsa.pub
git
Laird delivers the Laird Linux board support package using git repositories. If you haven't set up git, you can use the instructions below to enable git for use with GitHub.
- Install and configure the "git" package
$ sudo apt install git
$ git config --global user.name "John Doe"
$ git config --global user.email "[email protected]"
$ git config --list
- Expect user.name=John Doe
- Expect user.email=[email protected]
repo
Laird uses the repo tool from the Android project to pull down and correctly layout the git repositories that comprise the Laird Linux board support package. To install repo on Ubuntu, use the instructions below.
$ sudo apt install repo
You can also get it by following the instructions here:
Github Account
Laird Linux board support packages are availabe on GitHub. The most seamless workflow throughout a integration is to set up a GitHub account (https://github.com/) and add your SSH public key to your GitHub account. Instructions for setting up a GitHub account and adding an SSH key are below.
- Go to (https://github.com/join) and follow the instructions.
- Once you have a GitHub account add your public SSH key generated previously.
- View your public key
1.$ cat ~/.ssh/id_rsa.pub
- This should be similar to:
1.ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDW5HxCJe56MZKkGxtHU2hkb1uyuJ3i+AFZNnSIApiDe1l1H9Y40YjBF+sE47GKgNuzQIMqKZ6xjRdb8KxvtjQIE/VcSiz9KIaFtKce/wKKxy0vOXbskSLzELlA9ovY9AJmp3qUaW+BEChnggERjPvq+1oyiKGRJzo51j/CQr+Yx8c2MtKubjHknKkQ2Th8kxL1bQj4lVgyfqNGj3DXUz9S+kTm+dLnmmOXlUfxx8Khrb7j0Dg+lk1lqeolqt6aFwpMnb8V2h5lDevJ0YSSyId01OnaAnIlx1lc+zauctsgtZf5Htl9cXS7Cp3OCMfSa+IKFeFL9/ku9C25EdA5zOnt [email protected]
- Copy the contents of the above output to you clipboard
- Follow the instructions at
(https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/) starting with Step 2.
Laird Linux
Overview
Laird Linux is Laird's board support package specifically tailored for Laird's SOMs and customer's connectivity driven use cases. Laird regularly updates Laird Linux by merging in the upstream Linux kernel and Buildroot. We merge in major long-term support kernel releases which allow our SOMs to utilize the latest in drivers and kernel space functionality, performance enhancements, security, and bug fixes. Also, we merge in major long-term support Buildroot releases which provide for the latest in over 2200 user space applications and libraries. Laird Linux takes this solid upstream heritage and integrates our custom platform enhancements for connectivity, security, and power consumption.
Buildroot
The core piece of Laird Linux is Buildroot. Buildroot is a from source build system designed to allow the customer to create a customized Linux image for a target embedded computing module. Buildroot is capable of configuring and building the bootloader, kernel, and rootfs for Laird's SOMs. Buildroot's core build system technologies are the well-known and easy to understand make build tool and kconfig configuration tool. This enables easy build customization through the user interface tools menuconfig or xconfig and Buildroot make commands. The Linux kernel, U-Boot bootloader, and Busybox core userspace ulilities toolkit all use make, Kconfig, and menuconfig. Build and configuration concepts found in one translate nicely to another. Buildroot has easy to read and extensive documentation available at (https://buildroot.org/docs.html) in pdf, html, and ascii form. If time permits, Laird highly recommends following the Training section of the documentation landing page.
Laird's Buildroot is a fork of the upstream Buildroot stable. Starting with and merging upstream allows Laird to know the authenticity of Buildroot's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our Buildroot fork.
Linux Kernel
Laird's kernel is a fork the upstream Linux stable kernel. Starting with and merging upstream allows Laird to know the authenticity of the kernel's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our kernel fork.
Toolchain
Laird preselects prebuilt toolchains for each release of Laird Linux for our SOMs. The advantage of using a preselected and prebuilt toolchain is the high level of QA verification on common components between stock Laird development images and customer images. We are currently ultilizing prebuilt toolchains from Bootlin’s toolchain program. Bootlin, who is major contributor to Buildroot, provides a variety of prebuilt toolchains created from Buildroot's toolchain building capabilties. Laird selects toolchains that have been marked stable by the Buildroot community and use proven components. Beyond the toolchains themselves, Bootlin also stores the following artifacts for reference from their Buildroot based toolchain generation process: README of all essential information, defconfig fragment to generate toolchain, build log, software bill-of-material (SBOM), test system image, and test system defconfig. Laird configures each Laird Linux release to automatically download and use the correct toolchain.
Getting Started with Laird Linux
This section will walk a developer through following:
- Downloading a developer's SD card image
- Flashing a developer's SD card image
- Using a prebuilt SDK
- Manifest file
- Downloading the board support package source code
- Building the developer's SD card image
- Building the NAND image
- Software update
- Setup web server
- Buildroot cache
- Creating a custom SDK
Downloading a developer's SD card image
Laird Linux releases include a prebuilt SD card image as a starting point for evaluating and integrating a Laird Linux release on a Laird SOM. For the 60 SOM, these prebuilt images are found on at 60 SOM release page. These releases are named som60sd-laird-A.B.C.D.tar.bz2. These prebuilt SD card images are good for quickly testing a SOM running the latest software.
Flashing a developer's SD card image
Once the image is downloaded. Extract the image:
~/Downloads/som60sd$ tar -xvf som60sd-laird-7.x.y.z.tar.bz2
som60sd-laird-7.x.y.z/
som60sd-laird-7.x.y.z/target-sbom
som60sd-laird-7.x.y.z/host-sbom
som60sd-laird-7.x.y.z/u-boot-spl.bin
som60sd-laird-7.x.y.z/u-boot.itb
som60sd-laird-7.x.y.z/rootfs.tar
som60sd-laird-7.x.y.z/som60sd-sdk.tar.bz2
som60sd-laird-7.x.y.z/legal-info.tar.bz2
som60sd-laird-7.x.y.z/kernel.itb
som60sd-laird-7.x.y.z/mksdcard.sh
som60sd-laird-7.x.y.z/mksdimg.sh
To flash the image to an SD card use the mksdcard.sh script. The mksdcard.sh script takes the target device as an argument and will ask if you'd like to proceed with removing all data on your SD card and flashing a new image. This is shown below:
~/Downloads/som60sd-laird-7.x.y.z$ sudo ./mksdcard.sh /dev/sdc
[sudo] password for user:
*************************************************************************
WARNING: All data on /dev/sdc now will be destroyed! Continue? [y/n]
*********************************************************...
60 SOM Release 7.2.0.25
Normal Release Update
Release includes
- CS-RN-SOM60 release notes in pdf form.
- som60sd binary development kit image and SDK for C/C++ application development for SD card.
For using Laird Linux, jump below to our temporary Laird Linux reference guide for this release
For more documentation, please see the online documentation:
http://documentation.lairdconnect.com/Builds/60-SOM/latest/Content/Home.htm
Laird Linux Reference Guide
Prerequisites
The reference guide is designed to walk you through Laird Connectivity's development process for the 60 SOM, including the Laird Connectivity Linux board support package. The most seamless workflow for developing your application for the 60 SOM is to set up a GitHub account, configure your SSH keys, and then install and configure Git on your development PC.
Ubuntu
Laird recommends Ubuntu 18.04 64-bit as the base operating system for your development. All instructions in this reference guide assume a developer on an Ubuntu 18.04 64-bit system. If using other than Ubuntu 18.04 64-bit, please ensure you Linux distribution is a 64-bit variant as the cross-compiling toolchain requires a 64-bit Linux environment.
SSH
Laird makes extensive use of GitHub and having proper Secure Shell (SSH) access to our repositories on GitHub. If you haven't set up SSH, you can use the instructions below to enable SSH for use with GitHub.
- Check whether your private key (
/.ssh/id_rsa) and public key (/.ssh/id_rsa.pub) files exist $ ls -1 ~/.ssh/id_rsa*
- If they do not, generate them
$ ssh-keygen
1. Accept default file paths
2. Accept no passphrase- View your public key
$ cat ~/.ssh/id_rsa.pub
git
Laird delivers the Laird Linux board support package using git repositories. If you haven't set up git, you can use the instructions below to enable git for use with GitHub.
- Install and configure the "git" package
$ sudo apt install git
$ git config --global user.name "John Doe"
$ git config --global user.email "[email protected]"
$ git config --list
- Expect user.name=John Doe
- Expect user.email=[email protected]
repo
Laird uses the repo tool from the Android project to pull down and correctly layout the git repositories that comprise the Laird Linux board support package. To install repo on Ubuntu, use the instructions below.
$ sudo apt install repo
You can also get it by following the instructions here:
Github Account
Laird Linux board support packages are availabe on GitHub. The most seamless workflow throughout a integration is to set up a GitHub account (https://github.com/) and add your SSH public key to your GitHub account. Instructions for setting up a GitHub account and adding an SSH key are below.
- Go to (https://github.com/join) and follow the instructions.
- Once you have a GitHub account add your public SSH key generated previously.
- View your public key
1.$ cat ~/.ssh/id_rsa.pub
- This should be similar to:
1.ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDW5HxCJe56MZKkGxtHU2hkb1uyuJ3i+AFZNnSIApiDe1l1H9Y40YjBF+sE47GKgNuzQIMqKZ6xjRdb8KxvtjQIE/VcSiz9KIaFtKce/wKKxy0vOXbskSLzELlA9ovY9AJmp3qUaW+BEChnggERjPvq+1oyiKGRJzo51j/CQr+Yx8c2MtKubjHknKkQ2Th8kxL1bQj4lVgyfqNGj3DXUz9S+kTm+dLnmmOXlUfxx8Khrb7j0Dg+lk1lqeolqt6aFwpMnb8V2h5lDevJ0YSSyId01OnaAnIlx1lc+zauctsgtZf5Htl9cXS7Cp3OCMfSa+IKFeFL9/ku9C25EdA5zOnt [email protected]
- Copy the contents of the above output to you clipboard
- Follow the instructions at
(https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/) starting with Step 2.
Laird Linux
Overview
Laird Linux is Laird's board support package specifically tailored for Laird's SOMs and customer's connectivity driven use cases. Laird regularly updates Laird Linux by merging in the upstream Linux kernel and Buildroot. We merge in major long-term support kernel releases which allow our SOMs to utilize the latest in drivers and kernel space functionality, performance enhancements, security, and bug fixes. Also, we merge in major long-term support Buildroot releases which provide for the latest in over 2200 user space applications and libraries. Laird Linux takes this solid upstream heritage and integrates our custom platform enhancements for connectivity, security, and power consumption.
Buildroot
The core piece of Laird Linux is Buildroot. Buildroot is a from source build system designed to allow the customer to create a customized Linux image for a target embedded computing module. Buildroot is capable of configuring and building the bootloader, kernel, and rootfs for Laird's SOMs. Buildroot's core build system technologies are the well-known and easy to understand make build tool and kconfig configuration tool. This enables easy build customization through the user interface tools menuconfig or xconfig and Buildroot make commands. The Linux kernel, U-Boot bootloader, and Busybox core userspace ulilities toolkit all use make, Kconfig, and menuconfig. Build and configuration concepts found in one translate nicely to another. Buildroot has easy to read and extensive documentation available at (https://buildroot.org/docs.html) in pdf, html, and ascii form. If time permits, Laird highly recommends following the Training section of the documentation landing page.
Laird's Buildroot is a fork of the upstream Buildroot stable. Starting with and merging upstream allows Laird to know the authenticity of Buildroot's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our Buildroot fork.
Linux Kernel
Laird's kernel is a fork the upstream Linux stable kernel. Starting with and merging upstream allows Laird to know the authenticity of the kernel's source code and better verify the security of our fork. Laird targets long-term support releases (LTS) for merging into our kernel fork.
Toolchain
Laird preselects prebuilt toolchains for each release of Laird Linux for our SOMs. The advantage of using a preselected and prebuilt toolchain is the high level of QA verification on common components between stock Laird development images and customer images. We are currently ultilizing prebuilt toolchains from Bootlin’s toolchain program. Bootlin, who is major contributor to Buildroot, provides a variety of prebuilt toolchains created from Buildroot's toolchain building capabilties. Laird selects toolchains that have been marked stable by the Buildroot community and use proven components. Beyond the toolchains themselves, Bootlin also stores the following artifacts for reference from their Buildroot based toolchain generation process: README of all essential information, defconfig fragment to generate toolchain, build log, software bill-of-material (SBOM), test system image, and test system defconfig. Laird configures each Laird Linux release to automatically download and use the correct toolchain.
Getting Started with Laird Linux
This section will walk a developer through following:
- Downloading a developer's SD card image
- Flashing a developer's SD card image
- Using a prebuilt SDK
- Manifest file
- Downloading the board support package source code
- Building the developer's SD card image
- Building the NAND image
- Software update
- Setup web server
- Buildroot cache
- Creating a custom SDK
Downloading a developer's SD card image
Laird Linux releases include a prebuilt SD card image as a starting point for evaluating and integrating a Laird Linux release on a Laird SOM. For the 60 SOM, these prebuilt images are found on at 60 SOM release page. These releases are named som60sd-laird-A.B.C.D.tar.bz2. These prebuilt SD card images are good for quickly testing a SOM running the latest software.
Flashing a developer's SD card image
Once the image is downloaded. Extract the image:
~/Downloads/som60sd$ tar -xvf som60sd-laird-7.x.y.z.tar.bz2
som60sd-laird-7.x.y.z/
som60sd-laird-7.x.y.z/target-sbom
som60sd-laird-7.x.y.z/host-sbom
som60sd-laird-7.x.y.z/u-boot-spl.bin
som60sd-laird-7.x.y.z/u-boot.itb
som60sd-laird-7.x.y.z/rootfs.tar
som60sd-laird-7.x.y.z/som60sd-sdk.tar.bz2
som60sd-laird-7.x.y.z/legal-info.tar.bz2
som60sd-laird-7.x.y.z/kernel.itb
som60sd-laird-7.x.y.z/mksdcard.sh
som60sd-laird-7.x.y.z/mksdimg.sh
To flash the image to an SD card use the mksdcard.sh script. The mksdcard.sh script takes the target device as an argument and will ask if you'd like to proceed with removing all data on your SD card and flashing a new image. This is shown below:
~/Downloads/som60sd-laird-7.x.y.z$ sudo ./mksdcard.sh /dev/sdc
[sudo] password for user:
*************************************************************************
WARNING: All data on /dev/sdc now will be destroyed! Continue? [y/n]
*********************************************************...
60 SOM Release 7.0.3.10
Release includes
- CS-RN-SOM60 release notes in pdf form.
- som60sd binary development kit image for SD card.
- som60sd-sdk prebuilt SDK for C/C++ application development for the SD card image.
For more documentation, please see the online documentation:
http://documentation.lairdconnect.com/Builds/60-SOM/latest/Content/Home.htm
.
LRD-REL-7.0.0.242 Add 60 SOM v7.0.3.10 manifest