From 8fb2fc04db94d4fbce0fa321f1f69aaf30087667 Mon Sep 17 00:00:00 2001 From: cure123123 <72863081+cure123123@users.noreply.github.com> Date: Mon, 5 Aug 2024 11:31:30 +0800 Subject: [PATCH 01/23] Update Seeeduino-XIAO-by-Nanase.md --- .../SeeedStudio_XIAO_SAMD21/Seeeduino-XIAO-by-Nanase.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/Seeeduino-XIAO-by-Nanase.md b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/Seeeduino-XIAO-by-Nanase.md index dc9e43a2a671..9d3356819d93 100644 --- a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/Seeeduino-XIAO-by-Nanase.md +++ b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/Seeeduino-XIAO-by-Nanase.md @@ -305,7 +305,7 @@ Temp: 22.05 °C, Humidity: 44.72 %, Pressure: 1008.9 hPa Temp: 22.06 °C, Humidity: 44.81 %, Pressure: 1008.9 hPa ``` -## UART +### UART As mentioned earlier, the physical UART pins are different from those on the USB CDC. `Serial1` is used for serial communication using the TX and RX pins. From 8b36785de6bc561732d68706b47a7ac462b85a59 Mon Sep 17 00:00:00 2001 From: nfs0619 <1447996181@qq.com> Date: Mon, 5 Aug 2024 11:45:04 +0800 Subject: [PATCH 02/23] Updated weekly wiki --- docs/Seeed_Elderly/weekly_wiki/wiki240729.md | 216 ++++++++++++++++++ .../XIAO_ESP32C3_Pin_Multiplexing.md | 2 +- docs/weekly_wiki.md | 92 ++------ 3 files changed, 236 insertions(+), 74 deletions(-) create mode 100644 docs/Seeed_Elderly/weekly_wiki/wiki240729.md diff --git a/docs/Seeed_Elderly/weekly_wiki/wiki240729.md b/docs/Seeed_Elderly/weekly_wiki/wiki240729.md new file mode 100644 index 000000000000..e4a5de85b682 --- /dev/null +++ b/docs/Seeed_Elderly/weekly_wiki/wiki240729.md @@ -0,0 +1,216 @@ +--- +description: Weekly Wiki +title: Weekly Wiki +keywords: +- weeely wiki +image: https://files.seeedstudio.com/wiki/IndexWiki/logo_image.jpg +last_update: + date: 07/29/2024 + author: Frank +--- + +
+ +## Greetings + +This is Frank in Seeed Studio and welcome to the Seeed Studio weekly wiki! Each Monday, I will introduce you our latest wiki, including the ones related to our new products, the interesting projects published by Seeed Studio, and the tutorials, introductions, etc... You name it. + +✨ For each week, when a collaborator contributes a project or fixes something important, we put the stars at the end of title of "Weekly Wiki" for more people be able to see their efforts👍. + +Today is July 29th and a brand new week has begun! Check out what Seeed Studio did last week! + +## Latest Wiki Launched + +### [SenseCAP Watcher as a Grove sensor](https://wiki.seeedstudio.com/watcher_as_grove/) + +
+ +In this wiki, we will explore the exciting possibilities that arise when Watcher, acting as a Grove sensor, leverages its UART (Universal Asynchronous Receiver/Transmitter) functionality. By enabling UART communication, Watcher can transmit valuable data such as captured images and recognition results through its UART interface, located on the back of the device. This opens up a world of opportunities for integrating Watcher with various hardware platforms and creating innovative applications. + +### [Watcher & Node-RED To Kafka Quick Start](https://wiki.seeedstudio.com/watcher_node_red_to_kafka/) + +
+ +Apache Kafka is a distributed event streaming platform designed for high-throughput, fault-tolerant data processing. It enables real-time data feeds by allowing producers to publish messages to topics, while consumers can subscribe to these topics to process the data. Kafka is widely used for building data pipelines, real-time analytics, and integrating various data sources. Its robust architecture ensures scalability and durability, making it a popular choice for modern data-driven applications. + +Why use Docker? Because Docker can simulate the environment of multiple computers on a single machine and deploy applications with great ease. Therefore, in this project, we will use Docker to set up the environment and improve efficiency. + +### [T1000-E Tracker for Meshtastic](https://wiki.seeedstudio.com/sensecap_t1000_e/) + +

pir

+ +
+ + Get One Now 🖱️ + +
+ + +It is a high-performance tracker designed for Meshtastic, as small as a credit card, effortlessly fitting in your pocket or attaching to your assets. It embeds Semtech's LR1110, Nordic's nRF52840, and Mediatek's AG3335 GPS module, providing Meshtastic users with a high-precision, low-power positioning and communication solution. + +
+ +
+ +This wiki provides a tutorial on how to use NVStreamer for RTSP video streaming on [reComputer J4012](https://www.seeedstudio.com/reComputer-J4012-p-5586.html). + +### [How to Run VLM on reComputer with Jetson Platform Services](https://wiki.seeedstudio.com/run_vlm_on_recomputer/) + +VLMs are multi modal models supporting images, video and text and using a combination of large language models and vision transformers. Based on this capability, they are able to support text prompts to query videos and images thereby enabling capabilities such as chatting with the video, and defining natural language based alerts. The [VLM AI service](https://docs.nvidia.com/jetson/jps/inference-services/vlm.html), enables quick deployment of VLMs with Jetson Platform Services for video insight applications. The VLM service exposes REST API endpoints to configure the video stream input, set alerts and ask questions in natural language about the input video stream. + +
+ +
+ +This wiki provides a tutorial on how to run VLM on [reComputer J4012](https://www.seeedstudio.com/reComputer-J4012-p-5586.html). + +### [How to Run Zero-Shot Detection on reComputer with Jetson Platform Services](https://wiki.seeedstudio.com/run_zero_shot_detection_on_recomputer/) + +Generative AI vision transformers such as CLIP have made it possible to build zero shot detection models capable of open vocabulary object detection. Meaning, the model is not bounded by a set of pre-defined classes to detect. The objects to detect are configured at runtime by the user. The Zero Shot Detection AI service, enables quick deployment of generative AI with Jetson Services for open vocabulary detection on video live stream input. The Zero Shot Detection AI service exposes REST API endpoints to control stream input and objects to detect. + +
+ +
+ +This wiki provides a tutorial on how to run Zero-Shot Detection on [reComputer J4012](https://www.seeedstudio.com/reComputer-J4012-p-5586.html). + +### [Pose-Based Light Control with Node-Red and Raspberry Pi with AIkit](https://wiki.seeedstudio.com/pose_based_light_control_with_nodered_and_rpi_with_aikit/) + +

pir

+ +This wiki will guide you on how to run YOLOv8 using an AI kit, use YOLOv8 to monitor your posture, and ultimately control your lights based on your posture. In this project, a USB camera captures your pose, and yolov8n run on [AI kit](https://www.seeedstudio.com/Raspberry-Pi-AI-Kit-p-5900.html) with [reComputer R1000](https://www.seeedstudio.com/reComputer-R1000-Series-Optional-Accessories.html) to detect your pose. The processed video, displaying the detected pose, is then streamed in real-time to [reTerminal DM](https://www.seeedstudio.com/reTerminal-DM-CM4104032-p-5898.html) using [gstreamer](https://gstreamer.freedesktop.org/). Meanwhile, the joint coordinates are sent using [mqtt](https://mqtt.org/) to [Node-RED](https://nodered.org/) which deploy on the reComputer R1000. At last, the Node-RED flow controls the smart lights based on the joint coordinates. + +### [reComputer R1000 with FIN to create a Equip Graphic](https://wiki.seeedstudio.com/reComputer_r1000_fin_floor_gaphic/) + +FIN Framework (FIN) is a software framework with application suites that can integrate, control, manage, analyze, visualize and connect. Its capabilities can be integrated by OEMs into a range of products and services. + +This article will show you how to use the `Graphics Builder` of FIN Framwork, and to create a `Equip Graphic` using the `Graphics Builder`. + +### [Convert Model to Edge TPU TFlite Format for Google Coral](https://wiki.seeedstudio.com/convert_model_to_edge_tpu_tflite_format_for_google_coral/) + +The [Coral M.2 Accelerator](https://www.seeedstudio.com/Coral-M2-Accelerator-with-Dual-Edge-TPU-p-4681.html) with Dual Edge TPU is an M.2 module that brings two Edge TPU coprocessors to existing systems and products with an available M.2 E-key slot.[Tensorflow](https://www.tensorflow.org/) and [Pytorch](https://pytorch.org/) is the most popular deep learning frameworks. So in order to use the Edge TPU, we need to compile the model to Edge TPU format. + +This wiki article will guide you through the process of compiling a model and running it on the Google Coral TPU, enabling you to leverage its capabilities for high-performance machine learning applications. + +### [How to Use Multiple CSI Cameras on reComputer with ROS](https://wiki.seeedstudio.com/csi_camera_on_ros/) + +This tutorial provides a step-by-step guide on how to read multiple CSI camera image data through ROS on [reComputer J30/J40](https://www.seeedstudio.com/reComputer-J4012-p-5586.html) series devices and publish image topics to be displayed in the RVIZ visualization interface. + +### [Recording and playback for Respeaker Lite](https://wiki.seeedstudio.com/respeaker_record_and_play/) + +This project demonstrates a basic loopback mechanism using the I2S interface, to test the reading and writing functions of I2S audio data. By switching I2S mode, the audio data is read from the microphone and then written to the speaker. + +### [How to Use NVStreamer for RTSP Streaming on reComputer with Jetson Platform Services](https://wiki.seeedstudio.com/getting_started_with_nvstreamer/) + +[NVStreamer](https://docs.nvidia.com/moj/nvstreamer/moj-nvstreamer.html) is a software developed by NVIDIA that can store and serve video files, which can then be streamed using the RTSP protocol. It is particularly useful for testing with VST, as it provides an alternative method to cameras for creating video sources as input for VST. Specifically, it offers a mechanism to use specific video files as input for VST testing. VST can be configured to receive RTSP streams as if they were coming from ONVIF-S cameras. + + +## Existed Wiki Updated + +### [XIAO ESP32C3 WiFi Usage](https://wiki.seeedstudio.com/XIAO_ESP32C3_WiFi_Usage/) + +We've added examples of [WiFi Usage](https://wiki.seeedstudio.com/XIAO_ESP32C3_WiFi_Usage/#scan-wi-fi-access-points). + +### [XIAO Pin Multiplexing](https://wiki.seeedstudio.com/XIAO_ESP32C3_Pin_Multiplexing/) + +We've added examples of [XIAO ESP32C3 Serial1 Usage](https://wiki.seeedstudio.com/XIAO_ESP32C3_Pin_Multiplexing/#serial1-usage). + +We've added examples of [XIAO ESP32C6 Serial1 Usage](https://wiki.seeedstudio.com/xiao_pin_multiplexing_esp33c6/#serial1-usage). + +We've added examples of [XIAO ESP32S3 Serial1 Usage](https://wiki.seeedstudio.com/xiao_esp32s3_pin_multiplexing/#serial1-usage). + + + + + +## The Efforts of Contributor + + + +- Check on [GitHub](https://github.com/orgs/Seeed-Studio/projects/6) for more information. +- We will be really appreciate if you can [share your ideas](https://github.com/orgs/Seeed-Studio/projects/6?pane=issue&itemId=35179519) with us! + + +## Past Weekly wiki + +
Click here + +- [weekly wiki on 2.27th](/Seeed_Elderly/weekly_wiki/wiki227) +- [weekly wiki on 3.06th](/Seeed_Elderly/weekly_wiki/wiki306) +- [weekly wiki on 3.13th](/Seeed_Elderly/weekly_wiki/wiki313) +- [weekly wiki on 3.20th](/Seeed_Elderly/weekly_wiki/wiki320) +- [weekly wiki on 3.27th](/Seeed_Elderly/weekly_wiki/wiki327) +- [weekly wiki on 4.03rd](/Seeed_Elderly/weekly_wiki/wiki403) +- [weekly wiki on 4.10th](/Seeed_Elderly/weekly_wiki/wiki410) +- [weekly wiki on 4.17th](/Seeed_Elderly/weekly_wiki/wiki417) +- [weekly wiki on 4.24th](/Seeed_Elderly/weekly_wiki/wiki424) +- [weekly wiki on 5.15th](/Seeed_Elderly/weekly_wiki/wiki515) +- [weekly wiki on 5.22nd](/Seeed_Elderly/weekly_wiki/wiki522) +- [weekly wiki on 5.29th](/Seeed_Elderly/weekly_wiki/wiki529) +- [weekly wiki on 6.05th](/Seeed_Elderly/weekly_wiki/wiki605) +- [weekly wiki on 6.12th](/Seeed_Elderly/weekly_wiki/wiki612) +- [weekly wiki on 6.19th](/Seeed_Elderly/weekly_wiki/wiki619) +- [weekly wiki on 7.03th](/Seeed_Elderly/weekly_wiki/wiki703) +- [weekly wiki on 7.10th](/Seeed_Elderly/weekly_wiki/wiki710) +- [weekly wiki on 7.17th](/Seeed_Elderly/weekly_wiki/wiki717) +- [weekly wiki on 7.24th](/Seeed_Elderly/weekly_wiki/wiki724) +- [weekly wiki on 7.31th](/Seeed_Elderly/weekly_wiki/wiki731) +- [weekly wiki on 8.07th](/Seeed_Elderly/weekly_wiki/wiki807) +- [weekly wiki on 8.21st](/Seeed_Elderly/weekly_wiki/wiki821) +- [weekly wiki on 8.28th](/Seeed_Elderly/weekly_wiki/wiki828) +- [weekly wiki on 9.11st](/Seeed_Elderly/weekly_wiki/wiki911) +- [weekly wiki on 9.18th](/Seeed_Elderly/weekly_wiki/wiki918) +- [weekly wiki on 9.25th](/Seeed_Elderly/weekly_wiki/wiki925) +- [weekly wiki on 10.9th](/Seeed_Elderly/weekly_wiki/wiki1009) +- [weekly wiki on 10.16th](/Seeed_Elderly/weekly_wiki/wiki1016) +- [weekly wiki on 10.23th](/Seeed_Elderly/weekly_wiki/wiki1023) +- [weekly wiki on 10.30th](/Seeed_Elderly/weekly_wiki/wiki1030) +- [weekly wiki on 11.06th](/Seeed_Elderly/weekly_wiki/wiki1106) +- [weekly wiki on 11.13th](/Seeed_Elderly/weekly_wiki/wiki1113) +- [weekly wiki on 11.20th](/Seeed_Elderly/weekly_wiki/wiki1120) +- [weekly wiki on 11.27th](/Seeed_Elderly/weekly_wiki/wiki1127) +- [weekly wiki on 12.04th](/Seeed_Elderly/weekly_wiki/wiki1204) +- [weekly wiki on 12.11th](/Seeed_Elderly/weekly_wiki/wiki1211) +- [weekly wiki on 12.18th](/Seeed_Elderly/weekly_wiki/wiki1218) +- [weekly wiki on 12.25th](/Seeed_Elderly/weekly_wiki/wiki1225) +- [weekly wiki on 2024.1.08th](/Seeed_Elderly/weekly_wiki/wiki240108) +- [weekly wiki on 2024.1.15th](/Seeed_Elderly/weekly_wiki/wiki240115) +- [weekly wiki on 2024.1.22nd](/Seeed_Elderly/weekly_wiki/wiki240122) +- [weekly wiki on 2024.1.29th](/Seeed_Elderly/weekly_wiki/wiki240129) +- [weekly wiki on 2024.2.19th](/Seeed_Elderly/weekly_wiki/wiki240219) +- [weekly wiki on 2024.2.26th](/Seeed_Elderly/weekly_wiki/wiki240226) +- [weekly wiki on 2024.3.04th](/Seeed_Elderly/weekly_wiki/wiki240304) +- [weekly wiki on 2024.3.11th](/Seeed_Elderly/weekly_wiki/wiki240311) +- [weekly wiki on 2024.3.18th](/Seeed_Elderly/weekly_wiki/wiki240318) +- [weekly wiki on 2024.3.25th](/Seeed_Elderly/weekly_wiki/wiki240325) +- [weekly wiki on 2024.4.01st](/Seeed_Elderly/weekly_wiki/wiki240401) +- [weekly wiki on 2024.4.08th](/Seeed_Elderly/weekly_wiki/wiki240408) +- [weekly wiki on 2024.4.15th](/Seeed_Elderly/weekly_wiki/wiki240415) +- [weekly wiki on 2024.4.22nd](/Seeed_Elderly/weekly_wiki/wiki240422) +- [weekly wiki on 2024.4.29th](/Seeed_Elderly/weekly_wiki/wiki240429) +- [weekly wiki on 2024.5.06th](/Seeed_Elderly/weekly_wiki/wiki240506) +- [weekly wiki on 2024.5.13th](/Seeed_Elderly/weekly_wiki/wiki240513) +- [weekly wiki on 2024.5.20th](/Seeed_Elderly/weekly_wiki/wiki240520) +- [weekly wiki on 2024.5.27th](/Seeed_Elderly/weekly_wiki/wiki240527) +- [weekly wiki on 2024.6.03rd](/Seeed_Elderly/weekly_wiki/wiki240603) +- [weekly wiki on 2024.6.10th](/Seeed_Elderly/weekly_wiki/wiki240610) +- [weekly wiki on 2024.6.17th](/Seeed_Elderly/weekly_wiki/wiki240617) +- [weekly wiki on 2024.6.24th](/Seeed_Elderly/weekly_wiki/wiki240624) +- [weekly wiki on 2024.7.01st](/Seeed_Elderly/weekly_wiki/wiki240701) +- [weekly wiki on 2024.7.08th](/Seeed_Elderly/weekly_wiki/wiki240708) +- [weekly wiki on 2024.7.16th](/Seeed_Elderly/weekly_wiki/wiki240716) +- [weekly wiki on 2024.7.22th](/Seeed_Elderly/weekly_wiki/wiki240722) + +
+ diff --git a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C3/XIAO_ESP32C3_Pin_Multiplexing.md b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C3/XIAO_ESP32C3_Pin_Multiplexing.md index d2668e80c6fc..24a386dd7903 100644 --- a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C3/XIAO_ESP32C3_Pin_Multiplexing.md +++ b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C3/XIAO_ESP32C3_Pin_Multiplexing.md @@ -321,7 +321,7 @@ According to the above XIAO ESP32C3 Pin diagrams for specific parameters,we can Core Function that need to be include: - `Serial1.begin(BAUD,SERIAL_8N1,RX_PIN,TX_PIN);` -- enalbe Serial1,the function prototype : `.begin(unsigned long baud, uint32_t config, int8_t rxPin, int8_t txPin);` - - `baud` :badu rate + - `baud` :baud rate - `config`:Configuration bit - `rxPin` :Receive Pin - `txPin` :Send Pin diff --git a/docs/weekly_wiki.md b/docs/weekly_wiki.md index 8029e40c31cf..76ccbcea2b81 100644 --- a/docs/weekly_wiki.md +++ b/docs/weekly_wiki.md @@ -5,7 +5,7 @@ keywords: - weeely wiki image: https://files.seeedstudio.com/wiki/IndexWiki/logo_image.jpg last_update: - date: 07/29/2024 + date: 08/05/2024 author: Frank --- @@ -17,98 +17,43 @@ This is Frank in Seeed Studio and welcome to the Seeed Studio weekly wiki! Each ✨ For each week, when a collaborator contributes a project or fixes something important, we put the stars at the end of title of "Weekly Wiki" for more people be able to see their efforts👍. -Today is July 29th and a brand new week has begun! Check out what Seeed Studio did last week! +Today is August 5th and a brand new week has begun! Check out what Seeed Studio did last week! ## Latest Wiki Launched -### [SenseCAP Watcher as a Grove sensor](https://wiki.seeedstudio.com/watcher_as_grove/) +### [Watcher To WhatsApp](https://wiki.seeedstudio.com/watcher_node_red_to_whatsapp/) -
+
-In this wiki, we will explore the exciting possibilities that arise when Watcher, acting as a Grove sensor, leverages its UART (Universal Asynchronous Receiver/Transmitter) functionality. By enabling UART communication, Watcher can transmit valuable data such as captured images and recognition results through its UART interface, located on the back of the device. This opens up a world of opportunities for integrating Watcher with various hardware platforms and creating innovative applications. +**WhatsApp** is an instant messaging and voice-over-IP service owned by Meta. It enables users to send text, voice, and video messages, make voice and video calls, and share images, documents, locations, and other content. -### [Watcher & Node-RED To Kafka Quick Start](https://wiki.seeedstudio.com/watcher_node_red_to_kafka/) +This tutorial will guide you through integrating the Watcher API with Node-RED to seamlessly send data from the Watcher to WhatsApp. This integration provides a simple and efficient method to **receive notifications and opens the door for further applications and integrations**. -
+### [Local AI Assistant : Deploy Ollama and AnytingLLM on Jetson](https://wiki.seeedstudio.com/local_ai_ssistant/) -Apache Kafka is a distributed event streaming platform designed for high-throughput, fault-tolerant data processing. It enables real-time data feeds by allowing producers to publish messages to topics, while consumers can subscribe to these topics to process the data. Kafka is widely used for building data pipelines, real-time analytics, and integrating various data sources. Its robust architecture ensures scalability and durability, making it a popular choice for modern data-driven applications. - -Why use Docker? Because Docker can simulate the environment of multiple computers on a single machine and deploy applications with great ease. Therefore, in this project, we will use Docker to set up the environment and improve efficiency. - -### [T1000-E Tracker for Meshtastic](https://wiki.seeedstudio.com/sensecap_t1000_e/) - -

pir

- -
- - Get One Now 🖱️ - -
- - -It is a high-performance tracker designed for Meshtastic, as small as a credit card, effortlessly fitting in your pocket or attaching to your assets. It embeds Semtech's LR1110, Nordic's nRF52840, and Mediatek's AG3335 GPS module, providing Meshtastic users with a high-precision, low-power positioning and communication solution. - -
- -
- -This wiki provides a tutorial on how to use NVStreamer for RTSP video streaming on [reComputer J4012](https://www.seeedstudio.com/reComputer-J4012-p-5586.html). - -### [How to Run VLM on reComputer with Jetson Platform Services](https://wiki.seeedstudio.com/run_vlm_on_recomputer/) - -VLMs are multi modal models supporting images, video and text and using a combination of large language models and vision transformers. Based on this capability, they are able to support text prompts to query videos and images thereby enabling capabilities such as chatting with the video, and defining natural language based alerts. The [VLM AI service](https://docs.nvidia.com/jetson/jps/inference-services/vlm.html), enables quick deployment of VLMs with Jetson Platform Services for video insight applications. The VLM service exposes REST API endpoints to configure the video stream input, set alerts and ask questions in natural language about the input video stream. - -
- -
- -This wiki provides a tutorial on how to run VLM on [reComputer J4012](https://www.seeedstudio.com/reComputer-J4012-p-5586.html). - -### [How to Run Zero-Shot Detection on reComputer with Jetson Platform Services](https://wiki.seeedstudio.com/run_zero_shot_detection_on_recomputer/) - -Generative AI vision transformers such as CLIP have made it possible to build zero shot detection models capable of open vocabulary object detection. Meaning, the model is not bounded by a set of pre-defined classes to detect. The objects to detect are configured at runtime by the user. The Zero Shot Detection AI service, enables quick deployment of generative AI with Jetson Services for open vocabulary detection on video live stream input. The Zero Shot Detection AI service exposes REST API endpoints to control stream input and objects to detect. +Local AI Assistant is an artificial intelligence application that runs on local hardware and software, offering intelligent interaction and data processing capabilities. It operates independently of cloud services, protecting user privacy while providing quick response times and high levels of customization.
- +
-This wiki provides a tutorial on how to run Zero-Shot Detection on [reComputer J4012](https://www.seeedstudio.com/reComputer-J4012-p-5586.html). - -### [Pose-Based Light Control with Node-Red and Raspberry Pi with AIkit](https://wiki.seeedstudio.com/pose_based_light_control_with_nodered_and_rpi_with_aikit/) - -

pir

- -This wiki will guide you on how to run YOLOv8 using an AI kit, use YOLOv8 to monitor your posture, and ultimately control your lights based on your posture. In this project, a USB camera captures your pose, and yolov8n run on [AI kit](https://www.seeedstudio.com/Raspberry-Pi-AI-Kit-p-5900.html) with [reComputer R1000](https://www.seeedstudio.com/reComputer-R1000-Series-Optional-Accessories.html) to detect your pose. The processed video, displaying the detected pose, is then streamed in real-time to [reTerminal DM](https://www.seeedstudio.com/reTerminal-DM-CM4104032-p-5898.html) using [gstreamer](https://gstreamer.freedesktop.org/). Meanwhile, the joint coordinates are sent using [mqtt](https://mqtt.org/) to [Node-RED](https://nodered.org/) which deploy on the reComputer R1000. At last, the Node-RED flow controls the smart lights based on the joint coordinates. - -### [reComputer R1000 with FIN to create a Equip Graphic](https://wiki.seeedstudio.com/reComputer_r1000_fin_floor_gaphic/) - -FIN Framework (FIN) is a software framework with application suites that can integrate, control, manage, analyze, visualize and connect. Its capabilities can be integrated by OEMs into a range of products and services. - -This article will show you how to use the `Graphics Builder` of FIN Framwork, and to create a `Equip Graphic` using the `Graphics Builder`. - -### [Convert Model to Edge TPU TFlite Format for Google Coral](https://wiki.seeedstudio.com/convert_model_to_edge_tpu_tflite_format_for_google_coral/) - -The [Coral M.2 Accelerator](https://www.seeedstudio.com/Coral-M2-Accelerator-with-Dual-Edge-TPU-p-4681.html) with Dual Edge TPU is an M.2 module that brings two Edge TPU coprocessors to existing systems and products with an available M.2 E-key slot.[Tensorflow](https://www.tensorflow.org/) and [Pytorch](https://pytorch.org/) is the most popular deep learning frameworks. So in order to use the Edge TPU, we need to compile the model to Edge TPU format. - -This wiki article will guide you through the process of compiling a model and running it on the Google Coral TPU, enabling you to leverage its capabilities for high-performance machine learning applications. +In this wiki, we will demonstrate how to set up a local knowledge base on Jetson devices with [ollama](https://ollama.com/) and [AnythingLLM](https://anythingllm.com/). By leveraging the powerful capabilities of large language models, we aim to enhance our work efficiency. -### [How to Use Multiple CSI Cameras on reComputer with ROS](https://wiki.seeedstudio.com/csi_camera_on_ros/) +### [Quick start with Zigbee on XIAO ESP32C6 by Arduino](https://wiki.seeedstudio.com/xiao_esp32c6_zigbee_arduino/) -This tutorial provides a step-by-step guide on how to read multiple CSI camera image data through ROS on [reComputer J30/J40](https://www.seeedstudio.com/reComputer-J4012-p-5586.html) series devices and publish image topics to be displayed in the RVIZ visualization interface. +
-### [Recording and playback for Respeaker Lite](https://wiki.seeedstudio.com/respeaker_record_and_play/) +Zigbee is a widely adopted wireless communication protocol that finds extensive use in home automation, smart energy management, and Internet of Things (IoT) applications. Known for its low power consumption, reliable data transmission, and mesh network capabilities, Zigbee is an excellent choice for building scalable and efficient wireless networks. -This project demonstrates a basic loopback mechanism using the I2S interface, to test the reading and writing functions of I2S audio data. By switching I2S mode, the audio data is read from the microphone and then written to the speaker. +Let's embark on this exciting journey of Zigbee development with the XIAO ESP32C6 and unlock the full potential of this powerful wireless communication protocol! -### [How to Use NVStreamer for RTSP Streaming on reComputer with Jetson Platform Services](https://wiki.seeedstudio.com/getting_started_with_nvstreamer/) +### [reComputer R1000 with FlowFuse](https://wiki.seeedstudio.com/recomputer_r1000_flow_fuse/) -[NVStreamer](https://docs.nvidia.com/moj/nvstreamer/moj-nvstreamer.html) is a software developed by NVIDIA that can store and serve video files, which can then be streamed using the RTSP protocol. It is particularly useful for testing with VST, as it provides an alternative method to cameras for creating video sources as input for VST. Specifically, it offers a mechanism to use specific video files as input for VST testing. VST can be configured to receive RTSP streams as if they were coming from ONVIF-S cameras. +[FlowFuse](https://flowfuse.com/) enhances Node-RED by adding features for collaborative development, managing remote deployments, supporting DevOps delivery pipelines, and hosting Node-RED applications. It serves as a DevOps platform specifically designed for the development and delivery of Node-RED applications, making it easier for teams to work together and deploy their projects efficiently. -## Existed Wiki Updated + From 889345cb8de82782baa7f555e355da3df71e8e07 Mon Sep 17 00:00:00 2001 From: cure123123 <72863081+cure123123@users.noreply.github.com> Date: Mon, 5 Aug 2024 13:32:43 +0800 Subject: [PATCH 04/23] text correction --- .../SeeedStudio_XIAO_SAMD21/Seeeduino-XIAO-by-Nanase.md | 2 +- .../SeeedStudio_XIAO_SAMD21/XIAO-SAMD21-MicroPython.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/Seeeduino-XIAO-by-Nanase.md b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/Seeeduino-XIAO-by-Nanase.md index 9d3356819d93..86724c3dddd9 100644 --- a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/Seeeduino-XIAO-by-Nanase.md +++ b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/Seeeduino-XIAO-by-Nanase.md @@ -115,7 +115,7 @@ Contrary to the original Arduino, it is turned on at LOW and turned off at HIGH. The official website describes two other built-in LEDs as `two LEDs for serial port downloading`. However, looking at the schematic, there is no physical pin connected to these RX and TX LEDs. -If you look at [USBCore.cpp](https://github.com/Seeed-Studio/ArduinoCore-samd/blob/1.7.2/cores/arduino/USB/USBCore.cpp#L622-L627) here, you can see that they are turned on by `digitalWrite` every time serial USB transmission / reception occurs, which means that the two LEDs are are programmable. +If you look at [USBCore.cpp](https://github.com/Seeed-Studio/ArduinoCore-samd/blob/1.7.2/cores/arduino/USB/USBCore.cpp#L622-L627) here, you can see that they are turned on by `digitalWrite` every time serial USB transmission / reception occurs, which means that the two LEDs are programmable. ```cpp uint32_t USBDeviceClass::recv(uint32_t ep, void *_data, uint32_t len) diff --git a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/XIAO-SAMD21-MicroPython.md b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/XIAO-SAMD21-MicroPython.md index 0bb9e1027814..a9acfe21ac2e 100644 --- a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/XIAO-SAMD21-MicroPython.md +++ b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_SAMD21/XIAO-SAMD21-MicroPython.md @@ -43,7 +43,7 @@ First, we are going to connect the Seeed Studio XIAO SAMD21 to the computer and
-- **Step 4**. Chose the "Interpreter" interface and select the device as **"MicroPython(generic)"** and the port as **"Try to detect prot automatically"** +- **Step 4**. Chose the "Interpreter" interface and select the device as **"MicroPython(generic)"** and the port as **"Try to detect port automatically"**
From 0b7550764fd6c2b1201205f7f01c0181c0d5adf5 Mon Sep 17 00:00:00 2001 From: Spencer Yan Date: Mon, 5 Aug 2024 15:56:21 +0800 Subject: [PATCH 05/23] docs(XIAO C6): update arduino board install steps and images --- .../XIAO_ESP32C6_Getting_Started.md | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C6/XIAO_ESP32C6_Getting_Started.md b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C6/XIAO_ESP32C6_Getting_Started.md index 25bc1c3bbef8..8ac8dd6449a0 100644 --- a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C6/XIAO_ESP32C6_Getting_Started.md +++ b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C6/XIAO_ESP32C6_Getting_Started.md @@ -264,29 +264,30 @@ And the on-board package for XIAO ESP32C6 requires at least version **2.0.8** to #### Add the XIAO-C6 Board {#add-board} -As of July 14, 2024, the most current stable release of Arduino-ESP32 is version `3.0.2`. Version 3.0.0, released on May 28, [added support](https://docs.espressif.com/projects/arduino-esp32/en/latest/getting_started.html#supported-soc-s) for the **ESP32-C6** chipset. To work with XIAO-C6, you can utilize the stable release of [the board manager URL](https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html#installing-using-arduino-ide) provided below: +To install the XIAO ESP32C6 board, follow these steps: ``` https://espressif.github.io/arduino-esp32/package_esp32_index.json ``` +1. Add the above board manager URL to the preferences of your Arduino IDE, which is taken from the [Installing - Arduino ESP32](https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html#installing-using-arduino-ide). -if you've install the ESP32 board package before, you''ll need to remove it first. - -
+
+2. Download the XIAO ESP32C6 board package. -To install the XIAO ESP32C6 board, follow these steps: +:::note +Only available if the version of the esp32 board is greater than `3.0.0`. +::: -1. Add the above board manager URL to your Arduino IDE preferences. -
+
-2. Download the XIAO ESP32C6 board package. +3. Opt for `XIAO_ESP32C6` variant. -
+
-Additionally, the latest development release version (`3.0.0-rc1`) was released on April, 2024. And has supported XIAO ESP32C6. +Now enjoy coding ✨. ## Run your first Blink program From 76b07a3794780a86e7fe7df2b445aac9471ca324 Mon Sep 17 00:00:00 2001 From: nfs0619 <1447996181@qq.com> Date: Mon, 5 Aug 2024 16:23:05 +0800 Subject: [PATCH 06/23] Add Raspberry Pi NAS --- .../Application/Raspberry_Pi_as_a_NAS.md | 344 ++++++++++++++++++ sidebars.js | 7 + 2 files changed, 351 insertions(+) create mode 100644 docs/Top_Brand/Raspberry_Pi/Application/Raspberry_Pi_as_a_NAS.md diff --git a/docs/Top_Brand/Raspberry_Pi/Application/Raspberry_Pi_as_a_NAS.md b/docs/Top_Brand/Raspberry_Pi/Application/Raspberry_Pi_as_a_NAS.md new file mode 100644 index 000000000000..0d6247dd91bc --- /dev/null +++ b/docs/Top_Brand/Raspberry_Pi/Application/Raspberry_Pi_as_a_NAS.md @@ -0,0 +1,344 @@ +--- +description: Raspberry Pi as a NAS +title: Raspberry Pi as a NAS +keywords: +- Application +image: https://files.seeedstudio.com/wiki/wiki-platform/S-tempor.png +slug: /Raspberry_Pi_as_a_NAS +last_update: + date: 8/5/2024 + author: Frank +--- + + +# Use the Raspberry Pi as a NAS (Network-Attached Storage) + +The Raspberry Pi is a powerful microcomputer, popular among tech enthusiasts. It can be used for various DIY projects, including setting up a Network Attached Storage (NAS). In this , we will explore the following aspects: + +- [Is Raspberry Pi good for NAS?](#jump1) +- [How to convert Raspberry Pi 5 to NAS?](#jump2) +- [Common Issues and Solutions When Using Raspberry Pi as a NAS](#jump3) + +## Is Raspberry Pi Good for NAS? + +
pir
+ + + +The Raspberry Pi has strong processing capabilities and flexible configuration options, making it an ideal choice for building a NAS. Here are its advantages: +- Cost-Effective: The Raspberry Pi is relatively inexpensive compared to traditional NAS devices. +-Low Power Consumption: The Raspberry Pi has very low power consumption, making it suitable for 24/7 operation. +- Flexibility and Customizability: You can install various operating systems and software to configure the NAS as needed. +- Community Support: The Raspberry Pi has a large user community, providing abundant resources and technical support. + +However, there are some limitations to consider: +- Performance Limitations: The Raspberry Pi may have performance constraints compared to high-end NAS devices, especially when handling large amounts of data. +- Storage Limitations: The Raspberry Pi itself does not have built-in large-capacity storage and requires external hard drives or SSDs. + +## How to Convert Raspberry Pi 5 to NAS? + +Converting the Raspberry Pi 5 into a NAS is not complicated. Just follow these steps: + +### Step 1: Prepare the Hardware +- [A Raspberry Pi 5](https://www.seeedstudio.com/Raspberry-Pi-5-8GB-p-5810.html) +- A microSD card (32GB or larger recommended) +- A stable power adapter +- External hard drive or SSD +- Network connection (wired or wireless) + +### Step 2: Install the Operating System + +1. Use a tool like [Raspberry Pi Imager](https://www.raspberrypi.com/software/) to write the OS image to the microSD card. + +
pir
+ +2. Select "Raspberry Pi 5" -> "Raspberry Pi OS (32-bit)" -> SD card (make sure to select the correct device to avoid data loss if other USB devices are connected), then click "Next." Here is an example: + +
pir
+ +3. Then, edit the settings. Here’s an example of the settings provided: +- Enter your chosen hostname nas (recommended in this tutorial). +- Enter a username and password, which you will need later for authentication. +- Check the box next to "Configure WiFi" so your Pi can automatically connect to Wi-Fi. +- Enter your network SSID (name) and password. +- Check the box next to "Enable SSH," so we can connect to the Pi without using a mouse and keyboard. + +
pir
+ +4. After clicking "Save," start burning the image. The process may take some time. When it appears as shown in the image below, it indicates that the burning is complete. + +
pir
+ +### Step 3: Remote Connection to the Pi + +After inserting the SD card, power up the Raspberry Pi (if possible, connect it to the network via an Ethernet cable, but in this tutorial, we will use WiFi chosen during imaging). + +Open a terminal session on your computer and access the Raspberry Pi via SSH by running the following command, replacing **username** and **hostname** with the ones set during imaging: + +```bash +$ ssh @.local +``` + +For example: + +```bash +$ ssh seeed@nas.local +``` + +You will need to enter the password you created during imaging. Here is an example: + +
pir
+ +Now that we have completed the SSH connection, it’s time to turn it into a NAS. + +### Step 4: Install and Configure NAS + +#### 1.Locate the Drive + +First, connect the storage device to the Raspberry Pi, then check the connected storage devices with the following command: + +```bash +$ lsblk +``` + +You will see output similar to this: + +
pir
+ +:::tip +In this output, mmcblk0 is your microSD card, and the first connected USB storage device appears as sda (Storage Device A). Additional devices will be sdb, sdc, etc. +::: + +#### 2.Partition the Drive + +Next, partition the drive so that Raspberry Pi OS can recognize it as a single storage device: + +```bash +$ sudo fdisk /dev/sda +``` + +Here are some relevant commands: +- Create a new partition: n +- List current partitions: p +- Delete a partition: d +- Quit without saving changes: q + +In this project, we will proceed to create a fresh partition by entering ‘**n**’ followed by pressing the **Enter** key, and we will designate it as a primary partition by typing ‘**p**’ and then pressing **Enter**. For the remaining options, we will opt for the default settings by simply pressing **Enter**. Should an existing partition be present, we will remove it by typing ‘**d**’.Here is an example: + +
pir
+ +:::tip +If the message "**All space for primary partitions is in use**" appears, it means there are already four primary partitions or three primary partitions and an extended partition on the disk, and you will need to delete a partition (**d**). +::: + +:::note +If there are mounted partitions on the disk (like my sda1), follow these steps to unmount them: +1. Exit fdisk: Type q and press Enter to exit fdisk and avoid accidental modifications. +2. Unmount file systems: If there are mounted partitions on the disk, unmount them first. You can view the mounted partitions with the following command: + +```bash +$ mount | grep /dev/sda +``` + +3. Then unmount them using the umount command, for example: + +```bash +$ sudo umount /dev/sda1 +``` + +4. Run: + +```bash +$ sudo fdisk /dev/sda +``` + +Here is an example: + +
pir
+ +Then, return to the partitioning step above. +::: + +#### 3.Format the Drive + +Now that the drive has been partitioned, it's essential to format it to ensure that the Raspberry Pi OS can access and manipulate data on it. To format your drive with the ext4 file system, use the following command: + +```bash +$ sudo mkfs.ext4 /dev/sda1 +``` + +
pir
+ +#### 4.Mount the Drive + +Next, mount the drive to make it available in the Raspberry Pi's file system: +```bash +$ sudo mount /dev/sda1 /mnt +``` + +And ensure that the drive is mounted every time the system starts: +```bash +$ sudo nano /etc/fstab +``` + +Add the following line to the end of the file: +``` +/dev/sda1 /mnt/sda1/ ext4 defaults,noatime 0 1 +``` + +Press **Ctrl**+**X**, then **Y**, and finally **Enter** to save the edited file in nano. Here is an example: + +
pir
+ +#### 5.Create a Shared Folder + +Run the following command to create a shared folder on your drive: +```bash +$ sudo mkdir /mnt/sda1/shared +``` + +Grant read, write, and execute permissions to all users on the Raspberry Pi with the following command: +```bash +$ sudo chmod -R 777 /mnt/sda1/shared +``` + +Here is an example: + +
pir
+ + +### Step 5: Share the Drive Over the Network + +Run the following command to install [Samba](https://www.samba.org/), a tool for sharing directories over a network: +```bash +$ sudo apt install samba samba-common-bin +``` + +Here is an example: + +
pir
+ + +Then, configure Samba to share the directory over the network. We can instruct Samba through the Samba configuration file. Open the configuration file in an editor: smb.conf +```bash +$ sudo nano /etc/samba/smb.conf +``` + +Add the following lines at the end of the file: +``` +[shared] +path=/mnt/sda1/shared +writeable=Yes +create mask=0777 +directory mask=0777 +public=no +``` + +Press **Ctrl**+**X**, then **Y**, and finally **Enter** to save the edited file in nano. Here is an example: + +
pir
+ +Restart Samba to apply the configuration changes: +```bash +$ sudo systemctl restart smbd +``` + +Here is an example: + +
pir
+ + +### Step 6: Grant access to the drive + +Finally, you need to grant access to the Samba share so that only authenticated users can access the files over the network. Run the following command to create a user to manage the Samba share, naming the username as pinas in this example: + +```bash +$ sudo adduser +``` + +Here is an example: + +
pir
+ + +Then, add a password for that user using the following command: +```bash +$ sudo smbpasswd -a +``` + +Here is an example: + +
pir
+ + +### Step 7: Access and Use the NAS + +#### From Windows + +1. Open File Explorer and select "Map network drive" from the Computer menu. +2. Choose a drive letter and enter the folder path, using a domain name format to easily access the device even if the IP address changes (in this tutorial, the path is \\nas\pinas). +3. Enter the login username and password. Here is an example: + +
pir
+ +4. Once logged in, you can access the files on the server. + +
pir
+ +### Next Step + +If you want to make your hard drive and Raspberry Pi look more organized and aesthetically pleasing, you can use a 3D printer to create brackets and enclosures to secure the Raspberry Pi and the external hard drive, and then assemble them together. + + +## Common Issues and Solutions When Using Raspberry Pi as a NAS + +Here are some common issues you might encounter when using a Raspberry Pi as a NAS and how to solve them: + +### Question 1: How to improve Raspberry Pi NAS performance? + +- Use an SSD instead of an HDD to improve data read speeds. +- Ensure the Raspberry Pi is connected via a wired network for more stable performance. +- Optimize the Samba configuration file by adjusting cache settings and maximum connections. + +### Question 2: How to secure Raspberry Pi NAS? +- Regularly update the system and software to patch security vulnerabilities. +- Use strong passwords and limit SSH access. +- Configure a firewall and use a VPN for remote access. + +### Question 3: How to automate backups to Raspberry Pi NAS? +- Use the rsync tool to set up periodic backup tasks: +```bash +rsync -av --delete /source_directory /mnt/external_hdd/backup_directory +``` +- Configure cron jobs for automatic backups. + + + + + + + + + + + + + +## Tech Support & Product Discussion + + +Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs. + +
+ + +
+ +
+ + +
diff --git a/sidebars.js b/sidebars.js index 8c07f3eac820..7fda97f45a0c 100644 --- a/sidebars.js +++ b/sidebars.js @@ -4162,6 +4162,13 @@ const sidebars = { 'Top_Brand/Raspberry_Pi/Kit/Grove_Starter_Kit_for_IoT_based_on_Raspberry_Pi', ], }, + { + type: 'category', + label: 'Application', + items: [ + 'Top_Brand/Raspberry_Pi/Application/Raspberry_Pi_as_a_NAS', + ], + }, ], }, From 627377ddb0113708b8b35dcb7e8e31d07f2f59e0 Mon Sep 17 00:00:00 2001 From: cure123123 <72863081+cure123123@users.noreply.github.com> Date: Mon, 5 Aug 2024 17:06:25 +0800 Subject: [PATCH 07/23] text correction --- .../SeeedStudio_XIAO_RP2040/XIAO-RP2040-with-Arduino.md | 2 +- .../Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_Series_Projects.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_RP2040/XIAO-RP2040-with-Arduino.md b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_RP2040/XIAO-RP2040-with-Arduino.md index 9eee9e902253..ef31392f380b 100644 --- a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_RP2040/XIAO-RP2040-with-Arduino.md +++ b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_RP2040/XIAO-RP2040-with-Arduino.md @@ -96,7 +96,7 @@ Once uploaded, you should be able to see the pin 25 Green (USER) LED on the boar If uploading the Arduino program fails, try holding down the "BOOT" button and then clicking the "RUN" button. At this point, Seeed Studio XIAO RP2040 will enter boot mode (your computer will load a removable disk), and you will be able to upload the Arduino program again. ::: -## **Pin Multuiplexing on the Seeed Studio XIAO RP2040** +## **Pin Multiplexing on the Seeed Studio XIAO RP2040** The Seeed Studio XIAO RP2040 contains 11 digital pins, 4 analog pins, 11 PWM Pins,1 I2C interface, 1 UART interface, 1 SPI interface, 1 SWD Bonding pad interface. We are going to provide the tutorials about these interfaces to make it helpful for your projects. diff --git a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_Series_Projects.md b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_Series_Projects.md index 84ca58c387c9..9a3ab85d3800 100644 --- a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_Series_Projects.md +++ b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_Series_Projects.md @@ -379,7 +379,7 @@ This section aims to list the tutorials in the Wiki on some of the function poin This section will list the major platforms supported by XIAO, including PlatformIO, MicroPython, CircuitPython. support is updated in real time. -#### Plarform IO +#### Platform IO
From 22f7d5f1e57c1056963d98f089e349d59939e5de Mon Sep 17 00:00:00 2001 From: KasunThushara <73091563+KasunThushara@users.noreply.github.com> Date: Mon, 5 Aug 2024 14:48:27 +0530 Subject: [PATCH 08/23] ADD HA :installtion on recomputer --- .../recomputer-r1000-home-assistant.md | 144 ++++++++++++++++++ sidebars.js | 10 ++ 2 files changed, 154 insertions(+) create mode 100644 docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Home-Assistant/recomputer-r1000-home-assistant.md diff --git a/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Home-Assistant/recomputer-r1000-home-assistant.md b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Home-Assistant/recomputer-r1000-home-assistant.md new file mode 100644 index 000000000000..a2a463d9fd85 --- /dev/null +++ b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Home-Assistant/recomputer-r1000-home-assistant.md @@ -0,0 +1,144 @@ +--- +description: Learn how to set up and configure Home Assistant on a reComputer R1000 +title: reComputer R1000 with Home Assistant +keywords: + - Home Assistant + - reComputer R1000 + - Home Automation + - Bookworm + +image: https://files.seeedstudio.com/wiki/reComputer-R1000/recomputer_r_images/01.png +slug: /recomputer_r1000_home_automation +last_update: + date: 08/02/2024 + author: Kasun Thushara +--- + +## Introduction + +The reComputer r1000, designed for Building Automation Systems, features multiple isolated RS485 channels that support both high and low-speed communication. It is compatible with BACnet, Modbus RTU, and Modbus TCP/IP protocols, making it versatile for various automation needs. This guide provides a concise introduction to installing Home Assistant on the reComputer r1000, enabling seamless integration and control of your smart home devices. + +
+ +[Home Assistant](https://www.home-assistant.io/) is a free and open-source software for home automation, serving as a central control system or smart home hub for various devices. Designed with local control in mind, it ensures your Building Management System (BMS) operates independently of remote servers or internet connections, enhancing security and reliability. This means your BMS can run 24/7 without the vulnerabilities associated with cloud-connected devices, providing a robust and secure automation solution. + +## Getting Start + +Before you start this project, you may need to prepare your hardware in advance as described here. + +### Hardware Preparation + +
+
+ + + + + + + + + + + +
reComputer R1000
+
+ +:::note +During the HA installation process, we tested using wireless connectivity. +::: + +### Software Preparation + +The reComputer comes with a pre-installed Bookworm 64 bit version. This guide covers the steps for **installing Home Assistant Supervised** on that system. + +## Why Home Assistant Supervised? + +There are a few methods to install Home Assistant on your reComputer. You can opt for a full installation of Home Assistant, or if you plan to run Home Assistant alongside other applications on top of your operating system, the supervised method is ideal. Another option is to use Docker, but this requires setting up separate Docker containers as add-ons. This guide focuses on the more complex installation process of the **Supervised method**. Don't worry—we'll walk you through it step by step. + + +## Home Assistant Supervised Installation - Bookworm + +#### Step 1: Update and Install Dependencies + +```bash +sudo apt update +sudo apt-get install -y jq wget curl udisks2 apparmor-utils libglib2.0-bin network-manager dbus systemd-journal-remote systemd-resolved +``` + +#### Step 2: Start and Enable Network Manager + +Check the status of Network Manager + +```bash +sudo systemctl status NetworkManager.service +``` + +NetworkManager does not start, start and enable + +```bash +sudo systemctl start NetworkManager +sudo systemctl enable NetworkManager +``` + +#### Step 3: Modify Boot Parameters + +Edit the `cmdline.txt` file: +```bash +sudo nano /boot/firmware/cmdline.txt +``` + +Add the following at the end of the line: + +```bash +systemd.unified_cgroup_hierarchy=false lsm=apparmor +``` + +Reboot the system: +```bash +sudo reboot +``` + +#### Step 4: Install Docker + +```bash +sudo curl -fsSL get.docker.com | sh +sudo gpasswd -a $USER docker +newgrp docker +``` + +#### Step 5: Install OS Agent + +```bash +wget https://github.com/home-assistant/os-agent/releases/download/1.6.0/os-agent_1.6.0_linux_aarch64.deb +sudo dpkg -i os-agent_1.6.0_linux_aarch64.deb +``` + +#### Step 6: Install Home Assistant Supervised + +```bash +wget https://github.com/home-assistant/supervised-installer/releases/download/1.6.0/homeassistant-supervised.deb +sudo dpkg -i homeassistant-supervised.deb +``` + +Upon successful correction, a blue screen will appear, allowing you to select **Raspberry Pi4 64** model. + +
+ +## Tech Support & Product Discussion + +Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs. + +
+ + +
+ +
+ + +
+ + diff --git a/sidebars.js b/sidebars.js index 8c07f3eac820..bb59cc4ab328 100644 --- a/sidebars.js +++ b/sidebars.js @@ -3021,6 +3021,16 @@ const sidebars = { ], }, + { + type: 'category', + label: 'Home Assistant', + items: [ + 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Home-Assistant/recomputer-r1000-home-assistant', + + ], + }, + + { type: 'category', label: 'Cloud Solutions', From d8f6e866292a1f15991a2e64df189944cd852088 Mon Sep 17 00:00:00 2001 From: KasunThushara <73091563+KasunThushara@users.noreply.github.com> Date: Tue, 6 Aug 2024 06:15:25 +0530 Subject: [PATCH 09/23] Add last words on installtions --- .../recomputer-r1000-home-assistant.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Home-Assistant/recomputer-r1000-home-assistant.md b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Home-Assistant/recomputer-r1000-home-assistant.md index a2a463d9fd85..0bedc8047d42 100644 --- a/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Home-Assistant/recomputer-r1000-home-assistant.md +++ b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Home-Assistant/recomputer-r1000-home-assistant.md @@ -127,6 +127,18 @@ Upon successful correction, a blue screen will appear, allowing you to select **
+After a few minutes, the installation will begin. + +You can then view the Home Assistant Dashboard UI on a web browser using `:8123`. + +It will take some time to finish the initial startup process. Once it has finished starting up, create an account and follow the initial setup instructions + +
+ +:::note +If there are warnings in notifications, please reboot the reComputer. +::: + ## Tech Support & Product Discussion Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs. From 0d1d2fd295fb878897575d41f63c47997b142bef Mon Sep 17 00:00:00 2001 From: youjiang <254693273@qq.com> Date: Tue, 6 Aug 2024 14:44:28 +0800 Subject: [PATCH 10/23] genai guide page --- .../Generative_AI/Generative_AI_Intro.md | 368 ++++++++++++++++++ sidebars.js | 9 +- 2 files changed, 373 insertions(+), 4 deletions(-) create mode 100644 docs/Edge/NVIDIA_Jetson/Application/Generative_AI/Generative_AI_Intro.md diff --git a/docs/Edge/NVIDIA_Jetson/Application/Generative_AI/Generative_AI_Intro.md b/docs/Edge/NVIDIA_Jetson/Application/Generative_AI/Generative_AI_Intro.md new file mode 100644 index 000000000000..621e5bf1c0f9 --- /dev/null +++ b/docs/Edge/NVIDIA_Jetson/Application/Generative_AI/Generative_AI_Intro.md @@ -0,0 +1,368 @@ +--- +description: reComputer-Jetson® generative AI guide page +title: Generative AI with reComputer-Jetson® +keywords: + - Edge + - reComputer + - Jetson +image: https://files.seeedstudio.com/wiki/wiki-platform/S-tempor.png +slug: /Generative_AI_Intro +last_update: + date: 08/06/2024 + author: Youjiang +--- + +
+ +
+ +**Generative AI** is an artificial intelligence technology that can generate new data, such as images, text, or audio, by learning from existing data. **Nvidia Jetson** is an edge AI platform developed by NVIDIA, featuring high-performance processing capabilities and low-power design, suitable for various embedded and IoT devices. It supports deep learning, computer vision, and other AI applications, offering powerful computing capabilities and a rich set of development tools. The combination of Generative AI and Jetson enables efficient local real-time generation and inference on edge devices. + +## Text Generation + +Text generation is a technology that uses deep learning and large language model to generate natural language text. These models are trained on massive datasets, allowing them to learn the vocabulary, grammar, and semantic structure of language. They can produce fluent and coherent text, not only limited to answering questions or engaging in conversations but also including tasks like writing articles, creating stories, generating code, and translating languages. Here, we are deploying text generation algorithms on Jetson to create our own local chatbot. + +
+ + + + + + + + + + + + + + + + + + + + +
Local AI AssistantLocal Voice Chatbot
+
+ +
+
+
+ +
+
Set up a local knowledge base on Jetson devices with ollama and AnythingLLM.Building a locally-operated voice chatbot with Nvidia Riva and Meta Llama2.
+
+ +## Image Generation + +Image generation, by interpreting input text descriptions, allows models to produce high-quality images that match the descriptions. This technology has broad applications in fields such as artistic creation, advertising design, and game development, enabling the automated generation of visual content that meets user needs. + +
+ + + + + + + + + + + + + + + + +
Run a Local LLM Text-to-Image
+
+ +
+
Deploy the image generation model on Jetson and evaluate its inference performance.
+ +
+
+ +## Audio Generation + +Audio generation can produce high-quality, realistic audio, including speech, music, and sound effects, using neural networks. By training on extensive datasets, these models learn to replicate natural sound patterns and nuances, enabling applications such as speech synthesis, automated music composition, and sound effect creation. + +
+ + + + + + + + + + + + + + + + + + + + +
Speech Subtitle GenerationDeploy Whisper on NVIDIA Jetson Orin
+
+ +
+
+
+ +
+
Speech Subtitle Generation on Jetson, which can offer real-time speech-to-subtitle services while avoiding information leakage on the internet. Deploying Whisper on the Jetson Orin to build robust, efficient STT applications.
+ +
+
+ +## Multimodal Generation + +Multimodal generation technology combines various forms of data, such as text, images, and sound, to create content that integrates multiple types of information. This technology uses deep learning models to process and fuse data from different modalities, resulting in more expressive and diverse content. For example, text-to-image models can generate corresponding images based on textual descriptions, while speech synthesis models can produce speech from text and simultaneously generate related images. Multimodal generation shows broad application prospects in virtual reality, augmented reality, and multimedia content creation. + +
+ + + + + + + + + + + + + + + + +
+ Run VLM on reComputer +
+
+ +
+
+ This wiki provides a tutorial on how to run VLM on reComputer J4012 Jetson Orin NX with Jetson Platform Services. +
+ +
+
+ +## Retrieval Augmented Generation + +RAG (Retrieval-Augmented Generation) is a technology that combines retrieval mechanisms with generation models. The RAG model not only uses a generative model to produce responses but also incorporates information retrieval techniques to enhance the accuracy and richness of the generated content by retrieving relevant information from large databases. This technology excels in applications such as question-answering systems, intelligent search, and content generation. By leveraging retrieved information, RAG models can generate more detailed and information-rich responses, thereby improving the quality and relevance of the generated content. + +
+ + + + + + + + + + + + + + + + + + + + +
+ Local AI Assistant + + Local RAG with LlamaIndex +
+
+ +
+
+
+ +
+
+ Set up a local knowledge base on Jetson devices with ollama and AnythingLLM. + + With this local RAG project, it can protect your data privacy and provide you with low-latency communication experience. +
+ + + +
+
+ +## Others + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Fine-tune LLM on Jetson + + Quantized LLM with MLC + + Zero-Shot Detection +
+
+ +
+
+
+ +
+
+
+ +
+
+ Deploy Llama-Factory on Nvidia Jetson and use Llama-Factory to train a large language model. + + Deploying the quantized Llama2-7B with MLC LLM on the Jetson Orin NX. + + The Zero Shot Detection AI service exposes REST API endpoints to control stream input and objects to detect. +
+ + + + + +
+ Format Output with Langchain +
+
+ +
+
+ Use Langchain to format the output of large language models and deploy it on edge computing devices. +
+ +
+
+ + +## Tech Support & Product Discussion + +Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs. + +
+ + +
+ +
+ + +
+ + diff --git a/sidebars.js b/sidebars.js index 8c07f3eac820..651df129ad53 100644 --- a/sidebars.js +++ b/sidebars.js @@ -3245,10 +3245,11 @@ const sidebars = { { type: 'category', label: 'Generative AI', - // link: { - // type: "doc", - // id: 'Edge/NVIDIA_Jetson/Application/Generative_AI', - // }, + link: { + type: "doc", + id: 'Edge/NVIDIA_Jetson/Application/Generative_AI/Generative_AI_Intro', + }, + items: [ // Models 'Edge/NVIDIA_Jetson/Application/Generative_AI/Finetune_LLM_by_Llama_Factory_on_Jetson', From 0a22a9a0f5d74b653decfa0dd369e7e6561f7cf4 Mon Sep 17 00:00:00 2001 From: Allen-Kuang <2286173541@qq.com> Date: Tue, 6 Aug 2024 15:05:13 +0800 Subject: [PATCH 11/23] update: watcher as a grove wiki add KS link --- .../Getting_Started/sensecap_watcher_as_grove.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/Sensor/SenseCAP/SenseCAP_Watcher/Getting_Started/sensecap_watcher_as_grove.md b/docs/Sensor/SenseCAP/SenseCAP_Watcher/Getting_Started/sensecap_watcher_as_grove.md index 46012e061570..ccab126de710 100644 --- a/docs/Sensor/SenseCAP/SenseCAP_Watcher/Getting_Started/sensecap_watcher_as_grove.md +++ b/docs/Sensor/SenseCAP/SenseCAP_Watcher/Getting_Started/sensecap_watcher_as_grove.md @@ -13,6 +13,9 @@ last_update:
+**SenseCAP Watcher, is now pre-launched on Kickstarter proudly with the official KS badge of "Project We Love"!** +[Click to subscribe ~](https://www.kickstarter.com/projects/seeed/sensecap-watcher-open-source-ai-assistant-for-smarter-spaces?ref=aulzfo) + In this wiki, we will explore the exciting possibilities that arise when Watcher, acting as a Grove sensor, leverages its UART (Universal Asynchronous Receiver/Transmitter) functionality. By enabling UART communication, Watcher can transmit valuable data such as captured images and recognition results through its UART interface, located on the back of the device. This opens up a world of opportunities for integrating Watcher with various hardware platforms and creating innovative applications. Throughout this wiki, we will dive into the details of reading and interpreting the data output from Watcher's UART interface. Additionally, we will provide comprehensive tutorials on how to parse and utilize this data using popular development boards and platforms, including XIAO, Arduino, Raspberry Pi, and Jetson. From 16f47cb731270a3f1fc399cf8d3800855b0412e9 Mon Sep 17 00:00:00 2001 From: ZhuYaoHui1998 <510677932@qq.com> Date: Tue, 6 Aug 2024 15:16:43 +0800 Subject: [PATCH 12/23] add caution about Download BSP --- .../A203v2/reComputer_A203_Flash_System.md | 2 ++ .../Carrier_Boards/A603/A603_Flash_JetPack.md | 6 ++++++ .../Carrier_Boards/A607/A607_Flash_JetPack.md | 7 +++++++ .../Carrier_Boards/A608/A608_Flash_JetPack.md | 12 ++++++++++++ .../J401/reComputer_J4012_Flash_Jetpack.md | 6 ++++++ .../reComputer_Industrial_Getting_Started.md | 5 +++++ .../reServer_Industrial_Getting_Started.md | 6 ++++++ 7 files changed, 44 insertions(+) diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A203v2/reComputer_A203_Flash_System.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A203v2/reComputer_A203_Flash_System.md index 878f47e55614..ea1974138836 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A203v2/reComputer_A203_Flash_System.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A203v2/reComputer_A203_Flash_System.md @@ -280,6 +280,8 @@ Now, we need to install the driver as well to make sure each component on the bo + + !!!Note There are two JetPack 5.0.2 drivers for A203 included in the downloaded files. Both work fine, except that one of them supports **IMX-219 camera** and the other one supports **IMX-477 camera**. diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md index 591fb7046ef2..255ea1bee9fa 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md @@ -123,6 +123,12 @@ First of all, you need to install the peripheral drivers for this board. These a +:::caution + +Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. + +::: + **Note:** Currently we provide the above drivers. We will keep updating the drivers in the future with the release of new JetPack versions. ## Flash to Jetson diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A607/A607_Flash_JetPack.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A607/A607_Flash_JetPack.md index b143db8f5c1e..b7b9346ba5e3 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A607/A607_Flash_JetPack.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A607/A607_Flash_JetPack.md @@ -110,6 +110,13 @@ First of all, you need to install the peripheral drivers for this board. These a +:::caution + +Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. + +::: + + **Note:** Currently we provide the above drivers. We will keep updating the drivers in the future with the release of new JetPack versions. ## Flash to Jetson diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A608/A608_Flash_JetPack.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A608/A608_Flash_JetPack.md index 527b52317d04..f85aecf05ea8 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A608/A608_Flash_JetPack.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A608/A608_Flash_JetPack.md @@ -74,6 +74,12 @@ Here we will use NVIDIA L4T 35.3.1 to install Jetpack 5.1.1 on the A608 Carrier **Step 2.** [Download](https://nv-jetson-images.oss-us-west-1.aliyuncs.com/A608/a608_jp511.tar.gz?OSSAccessKeyId=LTAI5tKm7UD2hmuFW85cz42T&Expires=4861269491&Signature=801mYzDJxj5g68Vqo2H4k7VVLkM%3D) peripheral drivers and put all the drivers in same folder. +:::caution + +Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. + +::: + Now you will see three compressed files in the same folder:
@@ -130,6 +136,12 @@ Here we will use NVIDIA L4T 35.4.1 to install Jetpack 5.1.2 on the A608 Carrier **Step 2.** [Download](https://nv-jetson-images.oss-us-west-1.aliyuncs.com/A608/608_jp512.zip?OSSAccessKeyId=LTAI5tKm7UD2hmuFW85cz42T&Expires=4866749054&Signature=GavBxI%2Fe6tSG%2BTKECy4NNQ%2BtI7g%3D) peripheral drivers and put all the drivers in same folder. +:::caution + +Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. + +::: + Now you will see three compressed files in the same folder:
diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/J401/reComputer_J4012_Flash_Jetpack.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/J401/reComputer_J4012_Flash_Jetpack.md index 9a116552139e..2fd42397ae41 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/J401/reComputer_J4012_Flash_Jetpack.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/J401/reComputer_J4012_Flash_Jetpack.md @@ -476,6 +476,12 @@ Here we will use NVIDIA L4T 36.3 to install Jetpack 6.0 on the reComputer +:::caution + +Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. + +::: + **Step 2:** Extract the downloaded image file: ```bash sudo tar xpf mfi_xxxx.tar.gz diff --git a/docs/Edge/NVIDIA_Jetson/reComputer_Jetson_Series/reComputer_Industrial/reComputer_Industrial_Getting_Started.md b/docs/Edge/NVIDIA_Jetson/reComputer_Jetson_Series/reComputer_Industrial/reComputer_Industrial_Getting_Started.md index 6f189a80afd8..00652f4697bc 100644 --- a/docs/Edge/NVIDIA_Jetson/reComputer_Jetson_Series/reComputer_Industrial/reComputer_Industrial_Getting_Started.md +++ b/docs/Edge/NVIDIA_Jetson/reComputer_Jetson_Series/reComputer_Industrial/reComputer_Industrial_Getting_Started.md @@ -342,6 +342,11 @@ The first method download is around 14GB and the second method download is about +:::caution + +Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. + +::: The source code for the above images can be found [here](https://github.com/Seeed-Studio/Linux_for_Tegra) diff --git a/docs/Edge/NVIDIA_Jetson/reServer_Jetson_Series/reServer_Industrial_J30_J40/reServer_Industrial_Getting_Started.md b/docs/Edge/NVIDIA_Jetson/reServer_Jetson_Series/reServer_Industrial_J30_J40/reServer_Industrial_Getting_Started.md index 88128d8c03e0..7a0e53309e0f 100644 --- a/docs/Edge/NVIDIA_Jetson/reServer_Jetson_Series/reServer_Industrial_J30_J40/reServer_Industrial_Getting_Started.md +++ b/docs/Edge/NVIDIA_Jetson/reServer_Jetson_Series/reServer_Industrial_J30_J40/reServer_Industrial_Getting_Started.md @@ -372,6 +372,12 @@ import TabItem from '@theme/TabItem'; +:::caution + +Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. + +::: + - **Step 2:** Extract the generated file From 18579500a52587c5db76e9199a1bd51857d80332 Mon Sep 17 00:00:00 2001 From: youjiang <254693273@qq.com> Date: Tue, 6 Aug 2024 16:45:29 +0800 Subject: [PATCH 13/23] update --- .../Application/Generative_AI/Generative_AI_Intro.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/Edge/NVIDIA_Jetson/Application/Generative_AI/Generative_AI_Intro.md b/docs/Edge/NVIDIA_Jetson/Application/Generative_AI/Generative_AI_Intro.md index 621e5bf1c0f9..c8a27d7f4a2d 100644 --- a/docs/Edge/NVIDIA_Jetson/Application/Generative_AI/Generative_AI_Intro.md +++ b/docs/Edge/NVIDIA_Jetson/Application/Generative_AI/Generative_AI_Intro.md @@ -1,5 +1,5 @@ --- -description: reComputer-Jetson® generative AI guide page +description: This page introduces how to deploy generative AI technologies on reComputer devices using the Nvidia Jetson platform, including text generation, image generation, audio generation, multimodal generation, and retrieval-augmented generation. It details the application scenarios, technical features, and relevant resource links for each technology, providing developers with comprehensive reference materials and technical support information. title: Generative AI with reComputer-Jetson® keywords: - Edge From 98af51f494f9411177e690775e54e915cf1a8330 Mon Sep 17 00:00:00 2001 From: nfs0619 <1447996181@qq.com> Date: Tue, 6 Aug 2024 17:54:36 +0800 Subject: [PATCH 14/23] Contributor429 --- .../Sensor/Wio_Terminal/Wio_Terminal_Intro.md | 614 ++++++++++++++---- 1 file changed, 495 insertions(+), 119 deletions(-) diff --git a/docs/Sensor/Wio_Terminal/Wio_Terminal_Intro.md b/docs/Sensor/Wio_Terminal/Wio_Terminal_Intro.md index 041a8c6bc0b6..f9e55563b45d 100644 --- a/docs/Sensor/Wio_Terminal/Wio_Terminal_Intro.md +++ b/docs/Sensor/Wio_Terminal/Wio_Terminal_Intro.md @@ -6,147 +6,523 @@ keywords: image: https://files.seeedstudio.com/wiki/wiki-platform/S-tempor.png slug: /Wio_Terminal_Intro last_update: - date: 07/19/2023 - author: Matthew + date: 08/6/2024 + author: Frank --- +## Introduction +
+The Wio Terminal is a versatile development board powered by an ATSAMD51 microcontroller and equipped with a 2.4" LCD screen. It includes onboard Wi-Fi/Bluetooth capabilities, a built-in accelerometer, microphone, buzzer, microSD card slot, and various I/O interfaces. The Wio Terminal is designed to simplify the development of IoT applications, making it an ideal tool for both beginners and experienced developers. + +## The Idea of OSHW (Fabricatable Open Source Hardware) + +Open Source Hardware (OSHW) refers to hardware whose design is made publicly available so that anyone can study, modify, distribute, make, and sell the design or hardware based on that design. [The Wio Terminal embodies the OSHW philosophy by providing extensive documentation, open-source code, and design files](https://github.com/Seeed-Studio/OSHW-WioTerminal), allowing users to fully understand and replicate the hardware. This openness fosters innovation, collaboration, and learning within the developer community. + ## Getting Started with Wio Terminal -
-
-
Wio Terminal
- Getting Started -
- LCD, - IMU, - PDM, - IO Ports, - Light Sensor, - SD Card -
- CircuitPython, - Wi-Fi, - Bluetooth +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Get Started with Wio TerminalCircuitPython on Wio TerminalHow to use FreeRTOS to Multi-tasking in Arduino
In this show, our engineer Lakshantha will explain how to use the Wio terminal along with the software and present you with fun demos as well! This wiki introduce how to install and run the official CircuitPython by Adafruit Industries on the Seeeduino Wio Terminal! For Arduino compatibility, we have ported FreeRTOS into the Arduino framework so that you are able to use FreeRTOS with your favorite Arduino boards with ease! This wiki introduce how to start with FreeRTOS for Arduino.
-
-## Application -### Easy IoT with Wio Terminal - -
-
-
Easy IoT
- Google Cloud IoT -
- Wappsto IoT -
- Azure IoT Central, - Azure IoT Hub -
+## Hardware Overview + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
LCD UsageInput/OutputIMU Usage
This wiki introduce how to install the TFT LCD library used on Wio Terminal. It provides basic graphical functions to the Wio Terminal with minimum effort!This wiki introduce how to use the Grove IOs on the Wio Terminal. This allows you to enjoy the plug and play functionality of the Grove Ecosystem as well as using the 40 pin Raspberry pi compatible GPIO!This wiki introduce how to install the built-in 3-Axis Digital Accelerometer(LIS3DHTR) library used on Wio Terminal. This allows you to access the accelerometer information of the Wio Terminal as well as using it for motion control and etc.
-
-### Embedded Machine Learning with Wio Terminal - -
-
-
TinyML with Edge Impulse
- > Continuous Motion Recognition -
- > Audio scene recognition -
- > People counting with Ultrasonic sensor -
- > Distinguishing Beverage -
- > Anomaly detection for Predictive Maintenance -
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
SD CardWi-FiBluetooth
This wiki introduce how to install the File System library used on Wio Terminal. It provides basic functionality of File operating with the SD card, allowing to Read/Write in or from the SD card using SPI interface.This wiki introduces how to update the latest firmware for the Wireless Core Realtek RTL8720 on the Wio Terminal, as well as installing all the dependent libraries for Wio Terminal to enable wireless connectivity.This wiki introduces how to update the latest firmware for the Wireless Core Realtek RTL8720 on the Wio Terminal, as well as installing all the dependent libraries for Wio Terminal to enable Bluetooth connectivity.
-
-
TinyML with TensorFlow Lite
- > TensorFlow Lite Micro Getting Started -
- > Weather Prediction -
- > Speech Recognition and Speech-to-Internet -
- > Gesture Recognition -
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
RTCInfrared EmitterMicrophone
This wiki introduces how to use the built-in RTC functionality inside the SAMD51 core within Wio Terminal for you to keep track of time. This feature saves you from adding an external RTC module to the system!This wiki demonstrates how to use the built-in Infrared Emitter as component in Wio Terminal. The Infrared Emitter is a Digital Interface and can be used to send IR signal, just like what a remote control does!This wiki introduces how to use the built-in microphone for audio input in Wio Terminal. The microphone can be used to detect surrounding sound and respond accordingly.
+ +
+ +
+ + + + + + + + + + + + + + + +
Buttons5 Way Switch
This wiki demonstrates how to use the configurable buttons in Wio Terminal. There are three buttons that can be used for Wio Terminal. This wiki demonstrates how to use the 5 way Switch in Wio Terminal.
-## Wio Terminal Extension Board - -
- +
+ +
+ + + + + + + + + + + + + + + +
Light SensorBuzzer
This wiki demonstrates how to use the built-in light sensor as a component in Wio Terminal. The light sensor uses Analog interface and you can simply read the surrounding Light sensor values via reading its pin. This wiki demonstrates how to use the built-in piezo buzzer as a component in Wio Terminal. The piezo can be connected to an analog pulse-width modulation(PWM) output to generate various tones and effects!
-## Kit with courses by Wio Terminal - -
-
-
Courses with Wio Terminal
- What is TinyML -
- Applications Kit ML101 with Prof. Vijay Course -
- Introduction to Artificial Intelligence for Makers -
+ +## Extension Board + +
+ +
+ + + + + + + + + + + + + + + + + + + + +
Wio Terminal Chassis Battery(650mAh)Wio Terminal LoRaWan Chassis with Antenna-built-in LoRa-E5 and GNSS, EU868/US915 +
The Wio Terminal Battery Chassis is a must-have extension board for Wio-Terminal Dev Board as it provides an external power source for Wio Terminal to enhance its portability and compactness. Wio Terminal LoRaWan Chassis with Antenna-built-in LoRa-E5 and GNSS, EU868/US915 embedded with LoRa-E5 STM32WLE5JC, powered by ARM Cortex M4 ultra-low-power MCU core and LoRa SX126x, is a wireless radio module supporting LoRa and LoRaWAN protocol on the EU868 & US915 frequency and (G)FSK, BPSK, (G)MSK, LoRa modulations.
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + +
Ethernet ConnectionAudio Extension Board
This wiki introduces how to use the ENC28J60 OVERLAYS HAT for Raspberry Pi on Wio Terminal for stable network connectivity. This is a perfect example of using Raspberry Pi 40 Pi extensions board on Wio Terminal. This wiki introduces how to use the Audio library with Wio Terminal using ReSpeaker 2-Mic Hat. With the help of this library, you are able to record, play and analysis audio using Wio Terminal! Furthermore, this audio library can be implemented into different areas such as Speech recognition and much more!
+
+ +## Kit with Courses + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Applications Kit ML101 with Prof. Vijay CourseWhat is TinyML?Introduction to Artificial Intelligence for Makers
This book is designed specifically for educators to be able to adopt the Wio Terminal into the classroom or workshops to show learners the power of TinyML. It provides the basic underpinnings that one would have to cover to teach the very basics of ML while keeping the concepts grounded in hands-on exercises.ML as you might have guessed stands for Machine Learning and in most of cases (not always though) nowadays refers to Deep Learning. Tiny in TinyML means that the ML models are optimized to run on very low-power and small footprint devices, such as various MCUs. It is a subset of ML on the Edge or Embedded Machine Learning.The purpose of this article to build interest and provide a general understanding for makers who want to start their deep learning journey. I will point some of the common use cases and potential pitfalls. Also at the end of this article, I'll recommend some courses and books to learn more about this topic.
+ + + +## Application + +### Easy IoT + +
+ +
+ + + + + + + + + + + + + + + + + + + + +
Connect Wio Terminal to Microsoft Azure IoT CentralConnecting the Wio Terminal to Microsoft Azure IoT
In this tutorial, we will walk you through the process of connecting the Wio Terminal to Microsoft Azure IoT Central and send telemetry data from the onboard sensors/ hardware on the Wio Terminal such as the 3-axis accelerometer, light sensor, 3 buttons to Microsoft Azure IoT Central. This sample application shows you how to connect your Wio Terminal to Azure IoT Hub. It is built on top of the Azure SDK for Embedded C, a small footprint, easy-to-port library for communicating with Azure services.
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + +
Connect Wio Terminal to Google Cloud IoT CoreGet Started with Wio Terminal and Wappsto IoT
In this tutorial, we will walk you through the process of connecting the Wio Terminal to Google Cloud IoT Core and send telemetry data from the Wio Terminal to the Google Cloud IoT core. In this tutorial, we will guide you through connecting the Wio Terminal to Wappsto IoT and using the various features of Wappsto after the connection.
-## Tutorials and Projects - -
-
- - How to play retro games on Wio Terminal -
- USB Host for a - Keyboard, - Mouse, - Xbox -
- USB Client for a - Keyboard, - Mouse, - MIDI, - HMI -
- How to display Gyro on Wio Terminal -
- How to use Wio Terminal to store data -
- How to use Wio Terminal to display photos -
+### Embedded ML + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Projects based Edge ImpulseProjects based TensorFlow LiteLoRa Node with AIoTs GPS
Edge Impulse enables developers to create the next generation of intelligent device solutions with embedded Machine Learning. Machine Learning at the very edge will enable valuable use of the 99% of sensor data that is discarded today due to cost, bandwidth or power constraints. + Now, Wio Terminal is officially supported by the Edge Impulse. Let's see how to get Wio Terminal started with the Machine learning at the very edge!This article introduces how to install the official Arduino Tensorflow Lite library into your Wio Terminal, allowing you to test out some Machine Learning models using Wio Terminal.In this project, it will be used a built-in 3 axis accelerometer sensor and the neural network algorithm to build up an intelligent recognition system. Based on the movement of Wio Terminal, it can show you its state in real-time.
-
-
Wio Terminal Fun Projects
- Use Codecraft compling platform connect Azure IoT -
- Wio Terminal Interactive Faces Demo -
- Pressure sensor using the Wio terminal -
- Reading Coronavirus Live Data using Wio Terminal -
- How to measure noise levels with Wio Terminal -
- How to Use Wio Terminal as RTL8720DN Dev Board -
+ + + + + +## Tutorial + +### Basic Usage + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
USB HostUSB ClientDisplaying Gyro
This wiki introduces how to use the Wio Terminal as a USB-Host, which means you could plug USB devices into the Wio Terminal and play with it just like a computer!This wiki introduce how to use the Wio Terminal as USB-Client, including using it for Human Interface Device(HID) such as keyboard, mouse and etc. It also supports Musical Instrument Digital Interface(MIDI).This example demonstrates how to draw line graph on Wio Terminal. In this example, the 3-axis accelerator readings(3 sets of data) are plotted into one line graph to show the real-time positioning of the Wio Terminal!
-
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Storing DataDisplaying PhotosInteractive Faces Demo
This example demonstrates using the line graph functions to display the Grove - Light sensor reading on Wio Terminal, just like the Serial Plotter! To add more, the light sensor data are stored in the SD Card.This example demonstrates how to display images from SD card in loop.This example demonstrates how to display multiple images (eyes) onto the LCD screen through SD card (BMP format), and with the use of the built-in buttons and gyroscope to interact with users.
+
+ +### Project + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Pressure sensor using the Wio TerminalReading Coronavirus Live Data using Wio TerminalBuild a IR Thermal Imaging Camera using Wio Terminal
The demo shows that the Grove- high precision pressure sensor DPS310 is fully compatible with the Wio terminal, and its measurement has high precision.This wiki is a modification of Reading Github Repository Stats from Wio Terminal, where it is modified to access to Coronavirus COVID19 API and parse the data and display Live COVID-19 data on the LCD screen.With Grove - Infrared Temperature Sensor Array (AMG8833) and Wio Terminal, we can build a low cost FLIR™ like Thermal Imagining camera with ease!
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Build a HMI Display for Raspberry PiHow to measure noise levels with Wio TerminalAccessing to GitHub using Wio Terminal
In this wiki, we will introduce how to use Wio Terminal as a HMI (Human Machine Interface) USB display for Raspberry Pi, Nvidia Jetson Nano, BeagleBone and even Odyssey X86J4105.This example detects dB using the mic on ReSpeaker 2-Mic Hat, The around evirnment is detected, then displayed on the display.This wiki introduces how to use Wio Terminal to access to HTTPS server, which means you could use Wio Terminal to grab live data from the internet! Here, Wio Terminal is connected to a Wi-Fi and obtain data from the Github.
+
+ +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Blynk for Wio TerminalEdge Impulse TunerCodecraft connecting Azure IoT with Wio Terminal
This wiki introduces how to use the Wio Terminal with the Blynk software to interact with Wi-Fi or Bluetooth. This allows you to use Wio Terminal as the core of an IoT device and able to control hardware from phones very easily!Here we gonna provide the audio classification project and show you the usage of EON Tuner. If you are interested in Using LoRa to transmit data based on Wio Terminal and Edge Impulse, you can always click and see the example project.Here we gonna show you how to connect Codecraft with Azure IoT based on Wio Terminal and apply sensors to IoT projects.
+
+ + ## ✨ Contributor Project From c217d679c2b7f9a7e359a131b58a1adb63543ffc Mon Sep 17 00:00:00 2001 From: ZhuYaoHui1998 <510677932@qq.com> Date: Wed, 7 Aug 2024 13:38:00 +0800 Subject: [PATCH 15/23] fixed download link of reComputer and reServer BSP packages --- .../A203v2/reComputer_A203_Flash_System.md | 4 +++- .../J401/reComputer_J4012_Flash_Jetpack.md | 13 ++++-------- .../reComputer_Industrial_Getting_Started.md | 16 ++++++-------- .../reServer_Industrial_Getting_Started.md | 21 +++++++------------ 4 files changed, 21 insertions(+), 33 deletions(-) diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A203v2/reComputer_A203_Flash_System.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A203v2/reComputer_A203_Flash_System.md index ea1974138836..ddfa819be407 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A203v2/reComputer_A203_Flash_System.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A203v2/reComputer_A203_Flash_System.md @@ -456,8 +456,10 @@ After we unzip the package, we need to install the driver as well to make sure e -!!!Note +:::note + There are two JetPack 5.0.2 drivers for A203 included in the downloaded files. Both work fine, except that one of them supports **IMX-219 camera** and the other one supports **IMX-477 camera**. +::: ### Step 4. Unzip the Driver in the file diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/J401/reComputer_J4012_Flash_Jetpack.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/J401/reComputer_J4012_Flash_Jetpack.md index 2fd42397ae41..65e1f5798963 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/J401/reComputer_J4012_Flash_Jetpack.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/J401/reComputer_J4012_Flash_Jetpack.md @@ -456,31 +456,26 @@ Here we will use NVIDIA L4T 36.3 to install Jetpack 6.0 on the reComputer Jetson Orin NX 16GB - Download + Download 6.0 36.3 Jetson Orin NX 8GB - Download + Download Jetson Orin Nano 8GB - Download + Download Jetson Orin Nano 4GB - Download + Download
-:::caution - -Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. - -::: **Step 2:** Extract the downloaded image file: ```bash diff --git a/docs/Edge/NVIDIA_Jetson/reComputer_Jetson_Series/reComputer_Industrial/reComputer_Industrial_Getting_Started.md b/docs/Edge/NVIDIA_Jetson/reComputer_Jetson_Series/reComputer_Industrial/reComputer_Industrial_Getting_Started.md index 00652f4697bc..89f4219f72ef 100644 --- a/docs/Edge/NVIDIA_Jetson/reComputer_Jetson_Series/reComputer_Industrial/reComputer_Industrial_Getting_Started.md +++ b/docs/Edge/NVIDIA_Jetson/reComputer_Jetson_Series/reComputer_Industrial/reComputer_Industrial_Getting_Started.md @@ -315,38 +315,34 @@ The first method download is around 14GB and the second method download is about reComputer Industrial J4012 - Download + Download 5.1.1 35.3.1 reComputer Industrial J4011 - Download + Download reComputer Industrial J3011 - Download + Download reComputer Industrial J3010 - Download + Download reComputer Industrial J2012 - Download + Download reComputer Industrial J2011 - Download + Download -:::caution -Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. - -::: The source code for the above images can be found [here](https://github.com/Seeed-Studio/Linux_for_Tegra) diff --git a/docs/Edge/NVIDIA_Jetson/reServer_Jetson_Series/reServer_Industrial_J30_J40/reServer_Industrial_Getting_Started.md b/docs/Edge/NVIDIA_Jetson/reServer_Jetson_Series/reServer_Industrial_J30_J40/reServer_Industrial_Getting_Started.md index 7a0e53309e0f..c031d4802ec5 100644 --- a/docs/Edge/NVIDIA_Jetson/reServer_Jetson_Series/reServer_Industrial_J30_J40/reServer_Industrial_Getting_Started.md +++ b/docs/Edge/NVIDIA_Jetson/reServer_Jetson_Series/reServer_Industrial_J30_J40/reServer_Industrial_Getting_Started.md @@ -313,14 +313,14 @@ import TabItem from '@theme/TabItem'; 5.1.1 35.3.1 - Download + Download 6.0 36.3 - Download + Download @@ -328,14 +328,14 @@ import TabItem from '@theme/TabItem'; 5.1.1 35.3.1 - Download + Download 6.0 36.3 - Download + Download @@ -343,14 +343,14 @@ import TabItem from '@theme/TabItem'; 5.1.1 35.3.1 - Download + Download 6.0 36.3 - Download + Download @@ -358,25 +358,20 @@ import TabItem from '@theme/TabItem'; 5.1.1 35.3.1 - Download + Download 6.0 36.3 - Download + Download
-:::caution - -Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. - -::: From 1ff5cd5d409656655840fd67a39a76194b98eaad Mon Sep 17 00:00:00 2001 From: ZhuYaoHui1998 <510677932@qq.com> Date: Wed, 7 Aug 2024 13:57:29 +0800 Subject: [PATCH 16/23] fixed download link of reComputer and reServer BSP packages --- .../Carrier_Boards/A603/A603_Flash_JetPack.md | 9 ++------- .../Carrier_Boards/A607/A607_Flash_JetPack.md | 12 +++--------- .../Carrier_Boards/A608/A608_Flash_JetPack.md | 17 +++++------------ 3 files changed, 10 insertions(+), 28 deletions(-) diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md index 255ea1bee9fa..408c55bad2b7 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md @@ -110,24 +110,19 @@ First of all, you need to install the peripheral drivers for this board. These a Jetson Orin NX 8GB/ 16GB,
Jetson Orin Nano 4GB/ 8GB 5.1.2 35.4.1 - Download + Download Jetson Orin NX 8GB/ 16GB,
Jetson Orin Nano 4GB/ 8GB 6.0 36.3 - Download + Download
-:::caution - -Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. - -::: **Note:** Currently we provide the above drivers. We will keep updating the drivers in the future with the release of new JetPack versions. diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A607/A607_Flash_JetPack.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A607/A607_Flash_JetPack.md index b7b9346ba5e3..1f0e960cba39 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A607/A607_Flash_JetPack.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A607/A607_Flash_JetPack.md @@ -82,7 +82,7 @@ First of all, you need to install the peripheral drivers for this board. These a 6.0 36.3 - Download + Download Jetson Orin Nano 4GB @@ -93,7 +93,7 @@ First of all, you need to install the peripheral drivers for this board. These a 6.0 36.3 - Download + Download Jetson Orin Nano 8GB @@ -104,18 +104,12 @@ First of all, you need to install the peripheral drivers for this board. These a 6.0 36.3 - Download + Download
-:::caution - -Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. - -::: - **Note:** Currently we provide the above drivers. We will keep updating the drivers in the future with the release of new JetPack versions. diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A608/A608_Flash_JetPack.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A608/A608_Flash_JetPack.md index f85aecf05ea8..7ea84faa74c1 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A608/A608_Flash_JetPack.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A608/A608_Flash_JetPack.md @@ -72,13 +72,9 @@ Here we will use NVIDIA L4T 35.3.1 to install Jetpack 5.1.1 on the A608 Carrier
-**Step 2.** [Download](https://nv-jetson-images.oss-us-west-1.aliyuncs.com/A608/a608_jp511.tar.gz?OSSAccessKeyId=LTAI5tKm7UD2hmuFW85cz42T&Expires=4861269491&Signature=801mYzDJxj5g68Vqo2H4k7VVLkM%3D) peripheral drivers and put all the drivers in same folder. +**Step 2.** [Download](http://recomputer-jetson.oss-us-west-1.aliyuncs.com/A608/608_jp511.zip) peripheral drivers and put all the drivers in same folder. -:::caution -Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. - -::: Now you will see three compressed files in the same folder: @@ -98,7 +94,9 @@ cd Linux_for_Tegra/ sudo ./apply_binaries.sh sudo ./tools/l4t_flash_prerequisites.sh cd .. -tar -zxvf a608_jp511.tar.gz +unzip 608_jp511.zip +cp -r ./608_jp511/Linux_for_Tegra/* ./Linux_for_Tegra/ + ``` **Step 4.** Flash the system to A608. @@ -134,13 +132,8 @@ Here we will use NVIDIA L4T 35.4.1 to install Jetpack 5.1.2 on the A608 Carrier **Step 1.** [Download](https://developer.nvidia.com/embedded/jetson-linux-r3541) the NVIDIA drivers on the host PC. The required drivers are shown below:
-**Step 2.** [Download](https://nv-jetson-images.oss-us-west-1.aliyuncs.com/A608/608_jp512.zip?OSSAccessKeyId=LTAI5tKm7UD2hmuFW85cz42T&Expires=4866749054&Signature=GavBxI%2Fe6tSG%2BTKECy4NNQ%2BtI7g%3D) peripheral drivers and put all the drivers in same folder. - -:::caution - -Due to server maintenance aimed at better serving everyone, the download of BSP image files is temporarily unavailable. We sincerely apologize for the inconvenience and will restore the service as soon as possible. +**Step 2.** [Download](http://recomputer-jetson.oss-us-west-1.aliyuncs.com/A608/608_jp512.zip) peripheral drivers and put all the drivers in same folder. -::: Now you will see three compressed files in the same folder: From 3de2795cc0fc8e86fa8b743e7be6be7c4aaf3a3b Mon Sep 17 00:00:00 2001 From: ZhuYaoHui1998 <510677932@qq.com> Date: Wed, 7 Aug 2024 13:58:34 +0800 Subject: [PATCH 17/23] fixed download link of reComputer and reServer BSP packages --- .../NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md index 408c55bad2b7..fd62c7f359ae 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md @@ -288,10 +288,6 @@ sudo apt install unzip unzip A603-JP5.1.2.zip ``` -:::caution -Here it will ask whether to replace the files. Type **A** and press **ENTER** to replace the necessary files. -::: - **Step 5:** Configure your username, password & hostname so that you do not need to enter the Ubuntu installation wizard after the device finishes booting. ```sh From e6f7ea6449a73f2cc349ce8ee955fc8fcd12ad08 Mon Sep 17 00:00:00 2001 From: ZhuYaoHui1998 <510677932@qq.com> Date: Wed, 7 Aug 2024 13:58:57 +0800 Subject: [PATCH 18/23] fixed download link of reComputer and reServer BSP packages --- .../NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md index fd62c7f359ae..70602a1d7801 100644 --- a/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md +++ b/docs/Edge/NVIDIA_Jetson/Carrier_Boards/A603/A603_Flash_JetPack.md @@ -343,10 +343,6 @@ sudo apt install unzip sudo unzip A603-JP6.0.zip ``` -:::caution -Here it will ask whether to replace the files. Type **A** and press **ENTER** to replace the necessary files. -::: - **Step 5:** Configure your username, password & hostname so that you do not need to enter the Ubuntu installation wizard after the device finishes booting. ```sh From 5538c49e53b0179e0f9fbd5ee1d3e6ae0b160a40 Mon Sep 17 00:00:00 2001 From: jiahao Date: Wed, 7 Aug 2024 16:46:30 +0800 Subject: [PATCH 19/23] add: docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md --- ...and_cm4_running_yolov8s_with_rpi_ai_kit.md | 2 - ...berrypi5_about_yolov8n_object_detection.md | 320 ++++++++++++++++++ sidebars.js | 3 +- 3 files changed, 322 insertions(+), 3 deletions(-) create mode 100644 docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md diff --git a/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/benchmark_on_rpi5_and_cm4_running_yolov8s_with_rpi_ai_kit.md b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/benchmark_on_rpi5_and_cm4_running_yolov8s_with_rpi_ai_kit.md index 1c79ca2b9fa1..85169cc2dc5d 100644 --- a/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/benchmark_on_rpi5_and_cm4_running_yolov8s_with_rpi_ai_kit.md +++ b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/benchmark_on_rpi5_and_cm4_running_yolov8s_with_rpi_ai_kit.md @@ -155,8 +155,6 @@ lspci | grep Hailo The right result show as bellow:

pir

-Open terminal on the reCompuer R1000, and input command as follows to run YOLOv8. - ### Run Project diff --git a/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md new file mode 100644 index 000000000000..f10ccbe0268b --- /dev/null +++ b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md @@ -0,0 +1,320 @@ +--- +description: This wiki demonstrates how to use yolov8n to do object detection with ai kit on raspberry pi5 from traing to deploying +title: Tutorial of AI Kit with Raspberry Pi 5 about YOLOv8n object detection +keywords: + - Edge + - rpi5 + - Ai kit + - YOLO +image: https://files.seeedstudio.com/wiki/wiki-platform/S-tempor.png +slug: /tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection +last_update: + date: 08/6/2024 + author: Jiahao + +no_comments: false # for Disqus +--- + +# Tutorial of AI Kit with Raspberry Pi 5 about YOLOv8n object detection +## Introduction + +[YOLOv8](https://github.com/ultralytics/ultralytics) (You Only Look Once version 8) is the popular most YOLO series of real-time pose estimation and object de tection models. It builds upon the strengths of its predecessors by introducing several advancements in speed, accuracy, and flexibility. The [Raspberry-pi-AI-kit](https://www.seeedstudio.com/Raspberry-Pi-AI-Kit-p-5900.html) is used to accelerate inference speed, featuring a 13 tera-operations per second (TOPS) neural network inference accelerator built around the Hailo-8L chip. + +This wiki we will show you how to use yolov8n to do object detection with ai kit on raspberry pi5 from traing to deploying. + +## Prepare Hardware + +
+ + + + + + + + + + + + + +
reComputer r1000Raspberry Pi AI Kit
+
+ + +## Install Hardware + +

pir

+ +## Host computer + +:::note +We will install hailo software, make sure you have a hailo account. +::: + +### Install Ultralytics and train model: + +Install python3.11 +``` +sudo apt install python3.11 +``` + +Creat yolo_env as your virtual environment + +``` +python3.11 -m venv yolo_env +``` + +Activate the environment + +``` +source yolo_env/bin/activate +``` + +Install ultralytics + +``` +pip install ultralytics +``` + +Train yolov8n, here we use coco as dateset, if you want train your own dataset, you can use [this](https://docs.ultralytics.com) to train your own dataset. + +``` +mkdir yolomodel && cd yolomodel +yolo detect train data=coco128.yaml model=yolov8n.pt name=retrain_yolov8n epochs=100 batch=16 +``` + +

pir

+ +You will get best.pt model after your training like below: + +``` +cd ./runs/detect/retrain_yolov8n/weights/ +ls +``` +

pir

+ +Convert pt model to onnx + +``` +yolo export model=./best.pt imgsz=640 format=onnx opset=11 +``` +Result like below: +

pir

+ +### Install hailo software: + +Install python 3.8 + +``` +cd ~ +sudo apt install python3.8 +``` + +Creat hailo_env as your virtual environment + +``` +python3.8 -m venv hailo_env +``` + +Activate the environment + +``` +source hailo_env/bin/activate +``` + +Install [Hailo Dataflow Compiler 3.27](https://hailo.ai/developer-zone/software-downloads/), here you need to register Hailo and login, and download the software. + +

pir

+ +``` +pip install hailo_dataflow_compiler-3.27.0-py3-none-linux_x86_64.whl + +``` +Install [Model zoo](https://hailo.ai/developer-zone/software-downloads/), here you need to register Hailo and login, and download the software. + +

pir

+ +``` +pip install hailo_model_zoo-2.11.0-py3-none-any.whl +``` + +Test hailo_model_zoo weather it can work + +``` +hailomz -h +``` +

pir

+ + +Install hailo_model_zoo github file + +``` +cd yolomodel/runs/detect/retrain_yolov8n/weights + +git clone https://github.com/hailo-ai/hailo_model_zoo.git +``` + +Install coco dataset for evaluate/optimize/compile the yolov8n model + +``` +python hailo_model_zoo/datasets/create_coco_tfrecord.py val2017 +python hailo_model_zoo/datasets/create_coco_tfrecord.py calib2017 +``` +### Use hailomz to parse the model: + +Use hailomz to parse the model + +``` +hailomz parse --hw-arch hailo8l --ckpt ./best.onnx yolov8n +``` + +

pir

+ +### Use hailomz to optimize the model: + +:::note +If you excute the following command, you may get some errors, but you can copy ```./hailo_model_zoo/hailo_model_zoo``` to your local library. And if the error is about not find dateset, you can enter ```~/.hailomz``` and find the dataset, and copy it to your local dataset. +::: + +``` +hailomz optimize --hw-arch hailo8l --har ./yolov8n.har yolov8n +``` + +

pir

+ +### Use hailomz to compile the model: + +``` +hailomz compile yolov8n --hw-arch hailo8l --har ./yolov8n.har +``` + +

pir

+ +After all you will get a hef format model, you can use it to deploy on reComputer r1000. + +``` +ls +``` +

pir

+ +## raspberry pi5 + +### update the system: + +``` +sudo apt update +sudo apt full-upgrade +``` + +### Set pcie to gen2/gen3(gen3 is faster than gen2): + +Add following text to ```/boot/firmware/config.txt``` + +``` +#Enable the PCIe external connector + +dtparam=pciex1 + +#Force Gen 3.0 speeds + +dtparam=pciex1_gen=3 + +``` +:::note +If you want to use gen2,please comment dtparam=pciex1_gen=3 +::: + +### Install hailo-all and reboot: + +Open terminal on the Raspberry Pi5, and input command as follows to install Hailo software. + +``` +sudo apt install hailo-all +sudo reboot +``` +### Check Software and Hardware: + +Open terminal on the Raspberry Pi5, and input command as follows to check if hailo-all have been installed. + +``` +hailortcli fw-control identify +``` + +The right result show as bellow: +

pir

+ +Open terminal on the Raspberry Pi5, and input command as follows to check if hailo-8L have been connected. + +``` +lspci | grep Hailo +``` + +The right result show as bellow: +

pir

+ + +### Clone the project: + +``` +git clone https://github.com/Seeed-Projects/Benchmarking-YOLOv8-on-Raspberry-PI-reComputer-r1000-and-AIkit-Hailo-8L.git +cd Benchmarking-YOLOv8-on-Raspberry-PI-reComputer-r1000-and-AIkit-Hailo-8L +``` + +### Copy your model to the raspberry pi5: + +make a directory named ```hailomodel``` +``` +mkdir hailomodel +``` + +:::note +The command below you should run on your host computer, not your raspberry pi5, and make sure your host computer and raspberry pi5 at the same net. +::: + +``` +scp -r ./yolomodel/runs/detect/retrain_yolov8n/weights/yolov8n.hef name@:ip /home/pi/Benchmarking-YOLOv8-on-Raspberry-PI-reComputer-r1000-and-AIkit-Hailo-8L/hailomodel/ +``` + +### Change code + +Find line 105 and 106 in ```object-detection-hailo.py```, and change the code like below: +``` + elif args.network == "yolov8n": + self.hef_path = os.path.join(self.current_path, './hailomodel/yolov8n.hef') +``` + +Find line 172 in ```object-detection-hailo.py```, and change the code like below: +``` + parser.add_argument("--network", default="yolov8n", choices=['yolov6n', 'yolov8s', 'yolox_s_leaky'], help="Which Network to use, defult is yolov6n") +``` + +### Run the code: + +``` +bash run.sh object-detection-hailo +``` + + + +## Tech Support & Product Discussion + +Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs. + +
+ + +
+ +
+ + +
\ No newline at end of file diff --git a/sidebars.js b/sidebars.js index 12aa590ab605..e9de6843a44f 100644 --- a/sidebars.js +++ b/sidebars.js @@ -3049,7 +3049,8 @@ const sidebars = { 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/benchmark_on_rpi5_and_cm4_running_yolov8s_with_rpi_ai_kit', 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/install_m.2_coral_to_rpi5', 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/convert_model_to_edge_tpu_tflite_format_for_google_coral', - 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/pose_based_light_control_with_nodered_and_rpi_with_aikit' + 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/pose_based_light_control_with_nodered_and_rpi_with_aikit', + 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection' ], }, From 3a4801ff6bb7dd3840887556a160c727436864e9 Mon Sep 17 00:00:00 2001 From: jiahao Date: Thu, 8 Aug 2024 09:22:36 +0800 Subject: [PATCH 20/23] update:/home/jiahao/wiki-documents/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md --- ...ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md index f10ccbe0268b..c36c0d880ba2 100644 --- a/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md +++ b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md @@ -7,7 +7,7 @@ keywords: - Ai kit - YOLO image: https://files.seeedstudio.com/wiki/wiki-platform/S-tempor.png -slug: /tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection +slug: /tutorial_of_ai_kit_with_raspberrypi5_about_yolov8n_object_detection last_update: date: 08/6/2024 author: Jiahao @@ -304,7 +304,6 @@ bash run.sh object-detection-hailo ``` - ## Tech Support & Product Discussion Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs. From 2f524d7002eb1a7e43e7ea1dd6dbf6b729d71c2e Mon Sep 17 00:00:00 2001 From: jiahao Date: Thu, 8 Aug 2024 09:24:23 +0800 Subject: [PATCH 21/23] update:/home/jiahao/wiki-documents/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md --- ...of_ai_kit_with_raspberrypi5_about_yolov8n_object_detection.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/{tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md => tutorial_of_ai_kit_with_raspberrypi5_about_yolov8n_object_detection.md} (100%) diff --git a/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md b/docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit_with_raspberrypi5_about_yolov8n_object_detection.md similarity index 100% rename from docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection.md rename to docs/Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit_with_raspberrypi5_about_yolov8n_object_detection.md From 1dbcc7790192395fbd20091746967a02756518b0 Mon Sep 17 00:00:00 2001 From: jiahao Date: Thu, 8 Aug 2024 09:32:29 +0800 Subject: [PATCH 22/23] update: sidebars --- sidebars.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sidebars.js b/sidebars.js index 91a292642dd1..4be4f1d53315 100644 --- a/sidebars.js +++ b/sidebars.js @@ -3050,7 +3050,7 @@ const sidebars = { 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/install_m.2_coral_to_rpi5', 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/convert_model_to_edge_tpu_tflite_format_for_google_coral', 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/pose_based_light_control_with_nodered_and_rpi_with_aikit', - 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit _with_raspberrypi5_about_yolov8n_object_detection' + 'Edge/Raspberry_Pi_Devices/reComputer_R1000/Applications/Computer-Vision/tutorial_of_ai_kit_with_raspberrypi5_about_yolov8n_object_detection' ], }, From fc0f0a242994a06f62905c769b7969e9ce9679c0 Mon Sep 17 00:00:00 2001 From: cure123123 <72863081+cure123123@users.noreply.github.com> Date: Thu, 8 Aug 2024 09:34:18 +0800 Subject: [PATCH 23/23] update --- .../SeeedStudio_XIAO_ESP32C3/XIAO_ESP32C3_Getting_Started.md | 2 +- .../SeeedStudio_XIAO_nRF52840-Sense/XIAO_BLE.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C3/XIAO_ESP32C3_Getting_Started.md b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C3/XIAO_ESP32C3_Getting_Started.md index 2c46673f76a1..491757f61f00 100644 --- a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C3/XIAO_ESP32C3_Getting_Started.md +++ b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_ESP32C3/XIAO_ESP32C3_Getting_Started.md @@ -39,7 +39,7 @@ This wiki will show you how you can quickly get started with XIAO ESP32C3! ## Specifications comparison -| Item | Seeed Studio XIAO ESP32C3 | Seeeduino XIAO | Seeed XIAO RP2040 | Seeed XIAO BLE | Seeed XIAO BLE Sense | +| Item | Seeed Studio XIAO ESP32C3 | Seeeduino XIAO | Seeed XIAO RP2040 | Seeed XIAO nRF52840 | Seeed XIAO nRF52840 Sense | |-----------------------|--------------------------------|------------------------|-------------------------------------|----------------------------------------|-----------------------------------------| | Processor | ESP32-C3 32-bit RISC-V @160MHz | SAMD21 M0+@48MHz | RP2040 Dual-core M0+@133Mhz | nRF52840 M4F@64MHz | nRF52840 M4F@64MHz | | Wireless Connectivity | WiFi and Bluetooth 5 (LE) | N/A | N/A | Bluetooth 5.0/BLE/NFC | Bluetooth 5.0/BLE/NFC | diff --git a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_nRF52840-Sense/XIAO_BLE.md b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_nRF52840-Sense/XIAO_BLE.md index e7b437bf4ccb..c4b8867176ae 100644 --- a/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_nRF52840-Sense/XIAO_BLE.md +++ b/docs/Sensor/SeeedStudio_XIAO/SeeedStudio_XIAO_nRF52840-Sense/XIAO_BLE.md @@ -56,7 +56,7 @@ Seeed Studio XIAO nRF52840 Sense is compatible to the Seeed Studio XIAO expansio | Onboard Buttons | N/A | Reset/ Boot Button | Reset Button | Reset Button | | Onboard LEDs | N/A | Full-color RGB/ 3-in-one LED | 3-in-one LED/ Charge LED | 3-in-one LED/ Charge LED | | Battery Charge Chip | N/A | N/A | BQ25101 | BQ25101 | -| Programming Languages | Arduino/ CircuitPython | Arduino/ MicroPython/ CircuitPython | Arduino/ MicroPython/ CircuitPython | Arduino/ MicroPython/ CircuitPython | +| Programming Languages | Arduino/ MicroPython/ CircuitPython | Arduino/ MicroPython/ CircuitPython | Arduino/ MicroPython/ CircuitPython | Arduino/ MicroPython/ CircuitPython | ## Hardware overview