การเรียนรู้ Arduino ESP32 เป็นกระบวนการที่สนุกและท้าทาย เนื่องจาก ESP32 เป็นไมโครคอนโทรลเลอร์ที่มีความสามารถมากมายและใช้งานได้กับหลายแพลตฟอร์มต่าง ๆ ไม่ว่าจะเป็นการพัฒนาโปรแกรมเพื่อ IoT (Internet of Things) หรือโปรเจกต์อิเล็กทรอนิกส์ทั่วไป

ขั้นตอนพื้นฐานสำหรับการเรียนรู้ Arduino ESP32:

  1. เตรียมฮาร์ดแวร์:

    • มีบอร์ด Arduino ESP32 เช่น NodeMCU-32S, ESP32 Dev Kit, หรือบอร์ด ESP32 อื่น ๆ ตามที่คุณมีอยู่
    • สาย USB เพื่อเชื่อมต่อ ESP32 กับคอมพิวเตอร์
  2. ติดตั้ง Arduino IDE:

    • ดาวน์โหลดและติดตั้ง Arduino IDE จากเว็บไซต์ของ Arduino (https://www.arduino.cc/en/software)
    • เปิด Arduino IDE และติดตั้งเครื่องมือสำหรับ ESP32 โดยไปที่ เมนู File > Preferences และใส่ URL นี้ในช่อง Additional Board Manager URLs:
      https://dl.espressif.com/dl/package_esp32_index.json
      
    • ไปที่ เมนู Tools > Board > Boards Manager, ค้นหา "esp32" และติดตั้ง ESP32 by Espressif Systems
  3. เลือกบอร์ด ESP32:

    • เมื่อติดตั้งเครื่องมือสำหรับ ESP32 เสร็จสิ้น ไปที่ เมนู Tools > Board และเลือกบอร์ด ESP32 ที่คุณมี (เช่น NodeMCU-32S)
  4. เรียนรู้การเขียนโค้ด:

    • เรียนรู้เกี่ยวกับภาษาโปรแกรม Arduino (C/C++) และการใช้งานไลบรารีของ ESP32
    • เริ่มต้นจากโค้ดที่ง่ายๆ เช่นการส่งข้อความไปยัง Serial Monitor หรือการเปิด-ปิด LED
  5. ทดลองโปรเจกต์ต่างๆ:

    • ทดลองโปรเจกต์ง่ายๆ เพื่อเรียนรู้การใช้งาน ESP32 ได้แก่:
      • การควบคุม LED ด้วยสวิตช์หรือแสดงผลตามเซ็นเซอร์
      • การส่งข้อมูลไปยังเว็บเซิร์ฟเวอร์ผ่าน Wi-Fi
      • การใช้งาน Bluetooth หรือการสื่อสารแบบไร้สาย
  6. การเรียนรู้เพิ่มเติม:

    • อ่านเอกสารและคู่มือการใช้งาน ESP32 จากเว็บไซต์ของ Espressif Systems
    • เรียนรู้จากชุมชน Arduino ESP32 บนเว็บไซต์ต่าง ๆ เช่น GitHub, Arduino Forum, และช่อง YouTube
  7. ทดลองโปรเจกต์ IoT:

    • ลองสร้างโปรเจกต์ IoT ง่ายๆ เช่นระบบส่งข้อมูลเซ็นเซอร์ไปยังแพลตฟอร์ม IoT (เช่น ThingSpeak, Blynk)
  8. การปรับแต่งและพัฒนา:

    • ศึกษาเพิ่มเติมเกี่ยวกับการใช้งานหลายๆ ฟีเจอร์ของ ESP32 เช่นการใช้งาน GPIO, การเชื่อมต่อกับอุปกรณ์อื่น ๆ ผ่าน SPI, I2C, UART และอื่น ๆ
    • พัฒนาโปรเจกต์ที่น่าสนใจเพื่อศึกษาและปรับปรุงทักษะการเขียนโปรแกรม

การเรียนรู้ Arduino ESP32 เป็นการเรียนรู้ที่มีประสิทธิภาพมากในการศึกษาการเขียนโปรแกรมในรูปแบบของ IoT และอิเล็กทรอนิกส์ และยังเป็นพื้นฐานที่ดีสำหรับการศึกษาเกี่ยวกับการทำงานของไมโครคอนโทรลเลอร์ในรูปแบบพื้นฐานและขั้นสูง

เตรียมเครื่องสำหรับพัฒนา IoT

ก่อนการพัฒนา IoT จะต้องทำการติดตั้ง โปรแกรม สำหรับสร้าง Environment สำหรับการพัฒนาโปรแกรมด้าน IoT

1. Chocolatey

Chocolatey เป็นเครื่องมือการจัดการซอฟต์แวร์ package management แบบฟรีสำหรับ Windows เราสร้างติดตั้งโปรแกรมต่างผ่านทาง Repository ของ Chocolatey https://chocolatey.org/install

chocolate

เปิด Powershell ด้วยสิทธิ Administrator

> Set-ExecutionPolicy AllSigned

> Set-ExecutionPolicy Bypass -Scope Process

> Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

ตัวอย่างหน้าจอ ps_chocolatey

Reboot เครื่อง หลังจากนั้น ให้ทำการติดตั้ง package จาก Powershell ดังนี้

  • rsync
  • wget
  • python
  • nodejs
  • make
> choco install rsync wget python nodejs
> choco install make

ตัวอย่างหน้าจอ choco_install

2. Arduino IDE 2

Arduino IDE เป็น Editor สำหรับการพัฒนาโปรแกรม ด้วย Arduino Framework https://www.arduino.cc/en/software และ Download MSI installer

arduino_download

กด Just Download

just_download

ดำเนินการติดตั้ง โปรแกรมแบบ ปรกติ arduino_install_1

เปิดโปรแกรม Arduino IDE และ ไปยัง เมนู File > Preferences เพื่อทำการตั้งค่า arduino_install_2

เพิ่มเติม บอร์ด ESP32 ให้แก่ Arduino IDE เพื่อให้สามารถใช้ สามารถพัฒนา iot ร่วมกับ ESP32 บอร์ดได้ arduino_install_3

เพิ่ม link Additional Boards Managers

https://espressif.github.io/arduino-esp32/package_esp32_index.json

Note

Ref อ้างอิง Code สำหรับ ESP32 Core Arduino https://github.com/espressif/arduino-esp32

ข้อมูลสำหรับ บอร์ด ตระกูล ESP32

SoCStableDevelopmentDatasheet
ESP32YesYesESP32
ESP32-S2YesYesESP32-S2
ESP32-C3YesYesESP32-C3
ESP32-S3YesYesESP32-S3
ESP32-C6NoYesESP32-C6
ESP32-H2NoYesESP32-H2

https://products.espressif.com/#/product-comparison

อ้างอิง

ดูข้อมูลเปรียบเทียบ

Esp32-DevKit-V1-Pinout(PNG)

ESP8266ESP32ESP32-S2ESP32-S3ESP32-C3ESP32-C6
Announcement Date2014, สิงหาคม2016, กันยายน2019, กันยายน2020, ธันวาคม2020, พฤศจิกายน2021, เมษายน
Main processorTensilica L106 32 บิต (สูงสุด 160MHz)Tensilica Xtensa 32 บิต LX6 (สูงสุด 240MHz) (ตัวเลือกคู่)Tensilica Xtensa 32 บิต LX7 (สูงสุด 240MHz)Tensilica Xtensa 32 บิต LX7 คู่ (สูงสุด 240MHz)RISC-V 32 บิต (สูงสุด 160MHz)RISC-V 32 บิต (สูงสุด 160MHz)
SRAM160KB520KB320KB512KB400KB400KB
ROM0448KB128KB384KB384KB384KB
JTAGX?
Cacheคำสั่ง 32 KB64KB8/16KB (configurable)?16KB?
WiFiWi-Fi 4 (เฉพาะสูงสุด 72.2Mbps)Wi-Fi 4Wi-Fi 4Wi-Fi 4Wi-Fi 4Wi-Fi 6
BluetoothXBLE 4.2 (อัปเกรดเป็น 5.0, มีข้อจำกัด)XBLE 5.0BLE 5.0BLE 5.0
EthernetXX?X?
RTC memory768B16KB16KB16KB8KB?
PMU??
ULP coprocessorXULP-RISC-V?X?
Cryptographic AcceleratorXSHA, RSA, AES, RNGSHA, RSA, AES, RNG, HMAC, ลายเซ็นดิจิตอลSHA, RSA, AES, RNG, HMAC, ลายเซ็นดิจิตอลSHA, RSA, AES, RNG, HMAC, ลายเซ็นดิจิตอลSHA, RSA, AES, RNG, HMAC, ลายเซ็นดิจิตอล
Secure bootX
Flash encryptionXXTS-AES-128/256XTS-AES-128XTS-AES-128
SPI244?3?
I2C122?1?
I2S121?1?
UART2 (เพียง TX เท่านั้น)32?2?
SDIO Host010200
SDIO Slave010000
GPIO173443442222
LED PWM5168?6?
MCPWM060200
Pulse counter084?0X
GDMA*000?6?
USBXXUSB OTG 1.1?ซีเรียล/JTAG?
TWAI**011?1?
ADC1x 10-bit SAR2x 12-bit SAR, สูงสุด 18 ช่อง2x 13-bit SAR, สูงสุด 20 ช่อง?2x 12-bit SAR, สูงสุด 6 ช่อง?
DACX2x 8-bit2x 8-bit?XX
RMTการส่ง 1x + การรับ 1xการส่ง/การรับ 8xการส่ง/การรับ 4x?การส่ง 2x + การรับ 2x?
Timer2x 23-bit***4x 64-bit4x 64-bit?2x 54-bit + 1x 52-bit?
传感器温度??
Hall SensorXX?X?
Touch Sensor01014?X?

ESP32 Pinout

การพัฒนา โปรแกรมให้สามารถใช้งานบน ESP32 Esp32-DevKit-V1-Pinout(PNG) ESP pinout แบบ pdf

สร้าง IoT Home lab

การสร้าง IoT home lab เพื่อใช้สำหรับการเรียนรู้และการพัฒนา มีวัดถุประสงค์เพื่อให้การเรียนรู้มีประสิทธิภาพ รวดเร็วไม่เสียเวลาสำหรับการสร้าง Environment โดยการสร้าง Home Lab ในบทนี้จะเป็นการสร้างบน Windows 10/11 มีขั้นตอนดังต่อไปนี้

  1. ติดตั้ง Virtaulbox version ล่าสุด
  2. ติดตั้ง Vagrant
  3. ปิด Service HyperV บน Windows
  4. สร้าง Vagrantfile เพื่อสร้าง lab

1. ติดตั้ง Virtualbox

ไปยัง https://www.virtualbox.org/wiki/Downloads เพื่อทำการ Download โปรแกรม virtualbox และ Extension Pack virtualbox_download

2. ติดตั้ง Vagrant

Vagrant คืออะไร

vagrant

ไปยัง https://www.vagrantup.com/ ให้ Download Community Version vagrant_download

ตั้งค่า Path

เมื่อตั้งตั้งโปรแกรมในข้อ 1,2 เรียบร้อยแล้วให้ทำการเพิ่ม path ของ โปรแกรมเพื่อให้สามารถใช้งานผ่านทาง Command Line ได้

  • เพิ่ม Path ของ virtualbox ไปยัง Environment Variable (C:\Program Files\Oracle\VirtualBox)
  • เพิ่ม Path ของ vagrant ไปยัง Environment Variable (C:\Program Files\Vagrant\bin)

set_environment กดเลือกบรรทัด path และกดปุ่ม New เพื่อเพิ่มเติมค่า set_environment2

ปิด hyperv service บน Windows

เปิด Powershell ในโหมด Administrator

> Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All

disble_hyperV และ

> bcdedit /set hypervisorlaunchtype off

disble_hyperV2

ติดตั้ง Home lab

เรียนรู้พื้นฐานการสร้าง Home Lab ด้วยสร้าง Virtual Host บน virtualbox ด้วยการใช้งานคำสั่ง vagrant

  • สร้าง Folder สำหรับติดตั้ง Homelab เช่น thingsboard
  • ภายใน folder thingsboard ประกอบด้วย File 2 File ดังนี้
    • Vagrantfile ระบุคำสั่งสำหรับการสร้าง VM (เรียกว่า Creation)
    • bootstrap.sh ระบุคำสั่งที่ทำงานภายใน VM (เรียกการ Provision)

ตัวอย่าง สร้าง Debian server

สร้าง VM ด้วย Debian 12 และหลังจากสร้าง VM ก็จะทำการติดตั้ง docker engine

  • สร้าง Folder homelab ด้วย คำสั่ง mkdir
>mkdir homelab
  • หลังจากนั้น ให้ Download ไฟล์ homelab1.zip ไปไว้ folder homelab และทำการแตก zip ให้เรียบร้อย
  • และใช้ Terminal เปิดไปยัง folder homelab1 openin_terminal
  • run คำสั่ง vagrant ดังนี้
vagrant up --provision=virtualbox --provision

ตัวอย่างหน้าจอ vagrantup

ขั้นตอนการทำงานเบื้องหลัง

vagrantstep

Example

Code Review

File Vagrantfile เป็นภาษา ruby ทำหน้าที่เป็น Template เพื่อส่งต่อให้แก่ คำสั่ง Vagrant นำไปสร้าง VM บน Virtualbox

Vagrant.configure("2") do |config|
  config.vm.box = "generic/debian12"
  config.vm.network "private_network", ip: "192.168.56.10"
  config.vm.network "forwarded_port", guest:2375 , host: 2375
  config.vm.network "public_network", bridge: "Intel(R) Wireless-AC 9560 160MHz", ip: "192.168.1.10"
  config.vm.synced_folder ".", "/vagrant", type: "rsync"
  config.vm.provider "virtualbox" do |vb|
    vb.customize [
      "modifyvm", :id,
      "--nested-hw-virt", "on",
      "--memory", "2048",
      "--paravirtprovider", "hyperv", 
      "--cpus", "2"
    ]
  end

  #config.vm.provision "shell" , path: "bootstrap.sh"
end

File bootstrap.sh เป็น Bash script ไว้สำหรับ Run ใน Debian สำหรับการติดตั้ง Docker , Docker compose

#!/bin/bash

  echo "[ ] Start vagrant provisioning"

  # Add Docker's official GPG key:
  sudo apt update && sudo apt upgrade -y && sudo apt autoremove –y
  sudo apt --fix-broken install -y
  sudo apt-get install ca-certificates curl -y  
  sudo apt-get install openssh-server -y
  sudo apt-get install wget tree -y
  sudo apt install \
  apparmor \
  cifs-utils \
  curl \
  dbus \
  jq \
  libglib2.0-bin \
  lsb-release \
  network-manager \
  nfs-common \
  udisks2 \
  wget -y
  
  sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
  sudo chmod a+r /etc/apt/keyrings/docker.asc

  # Add the repository to Apt sources:
  echo "[ ] install docker "
  echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 
  sudo apt update -y
  sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y 
  sudo usermod -aG docker vagrant 
  newgrp docker
 

สร้าง Thinsboard Server

ตัวอย่าง สร้าง Thingsboard server

Thingsboard Server คือ

Thingsboard Server เป็นแพลตฟอร์ม IoT (Internet of Things) ที่ใช้สำหรับการจัดการและการควบคุมอุปกรณ์ IoT ต่าง ๆ ได้อย่างมีประสิทธิภาพ ซึ่งออกแบบมาเพื่อให้สามารถจัดการกับอุปกรณ์ IoT จำนวนมากได้โดยมีการรองรับการส่งข้อมูลแบบ real-time อย่างมีประสิทธิภาพด้วยความปลอดภัยสูงสุด

Thingsboard Server มีความสามารถที่สำคัญดังนี้:

  1. การจัดการอุปกรณ์ (Device Management): Thingsboard สามารถรับข้อมูลจากอุปกรณ์ IoT และจัดการกับอุปกรณ์เหล่านั้นได้ รวมถึงการเชื่อมต่อ, การลงทะเบียน, การติดตามสถานะ, และการจัดการอื่น ๆ ของอุปกรณ์ IoT.

  2. การจัดเก็บข้อมูล (Data Persistence): Thingsboard ช่วยในการจัดเก็บข้อมูลที่ได้รับจากอุปกรณ์ IoT อย่างปลอดภัยและเป็นระบบ โดยสามารถบันทึกข้อมูลได้ในรูปแบบที่ยืดหยุ่น และสามารถเข้าถึงข้อมูลได้จากหน้าต่างสำหรับการวิเคราะห์.

  3. การแสดงผลและการจัดเก็บข้อมูล (Visualization and Dashboards): Thingsboard มีความสามารถในการสร้างและแสดงข้อมูลผ่านทางกราฟและตัวชี้วัดต่าง ๆ ที่เกี่ยวข้องกับอุปกรณ์ IoT ซึ่งสามารถเข้าถึงผ่านทางแผงควบคุมหรือ Dashboards ที่กำหนดเอง.

  4. การจัดการกฎและการควบคุม (Rules Engine and Control): Thingsboard มีกลไกในการตั้งกฎและการควบคุมที่ทำให้ผู้ใช้สามารถกำหนดการกระทำต่าง ๆ ภายในระบบ IoT ตามเงื่อนไขที่กำหนดได้.

  5. ความปลอดภัย (Security): Thingsboard มีการป้องกันความปลอดภัยที่มีประสิทธิภาพ เช่น การรับรองตัวตนและการเข้ารหัสข้อมูล เพื่อปกป้องข้อมูลของอุปกรณ์ IoT และข้อมูลการใช้งาน.

Thingsboard Server เป็นโปรเจกต์แบบ (open-source) ซึ่งทำให้มีความยืดหยุ่นในการปรับแต่งตามความต้องการขององค์กร และมีชุมชนที่พร้อมให้การสนับสนุนและพัฒนาเพิ่มเติมอย่างต่อเนื่อง

https://thingsboard.io/ thingsboard_page

สร้าง Thingsboard Server บน Debian 12 และหลังจากสร้าง VM ก็จะทำการติดตั้ง docker engine

  • หลังจากนั้น ให้ Download ไฟล์ Thingsboard.zip ไปไว้ folder homelab และทำการแตก zip ให้เรียบร้อย
  • Run คำสั่ง vagrant
vagrant up --provision=virtualbox --provision

ผลลัพท์

vagrant up

  • Run คำสั่ง vagrant ssh, vagrant up

ผลลัพท์

vagrant status ssh

Example

Code Review

File Vagrantfile สำหรับ lab นี้จะสร้าง VM จาก Debian 12 (Box) และมีการ Run Script เพื่อติดตั้ง Docker Engine โดยใช้รูปแบบการ Run แบบ inline script และ จะใช้ คำสั่ง Docker compose เพื่อสร้าง containers

# -*- mode: ruby -*-
# vi: set ft=ruby :

# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.

$script = <<-SCRIPT
  # genkey
  # Add Docker's official GPG key:
  sudo apt-get install ca-certificates curl -y  
  sudo apt-get install openssh-server -y
  systemctl restart sshd.service
  
  sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc

  sudo chmod a+r /etc/apt/keyrings/docker.asc

  # Add the repository to Apt sources:
  echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 

  sudo apt update -y
  # Install Docker Compose
  sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y 
  usermod -aG docker vagrant 
  
  # create folder for moute data 
  sudo -u vagrant mkdir -p /home/vagrant/.thingsboard-data && sudo chown -R 799:799  /home/vagrant/.thingsboard-data
  sudo -u vagrant mkdir -p /home/vagrant/.thingsboard-db && sudo chown -R 799:799 /home/vagrant/.thingsboard-db
  sudo -u vagrant mkdir -p /home/vagrant/.thingsboard-logs && sudo chown -R 799:799 /home/vagrant/.thingsboard-logs
  
  # Run docker compose
  sudo -u vagrant docker compose  -f /vagrant/docker-compose.yml  up -d

SCRIPT
Vagrant.configure("2") do |config|
  config.vm.box = "generic/debian12"
  config.vm.network "private_network", ip: "192.168.33.10"
  config.vm.network "forwarded_port", guest:8080 , host: 8080
  config.vm.network "forwarded_port", guest:1883 , host: 1883
  config.vm.synced_folder ".", "/vagrant", type: 'rsync'
  
  config.vm.provider "virtualbox" do |vb|
    vb.customize [
      "modifyvm", :id,
      "--nested-hw-virt", "on",
      "--memory", "2048",
      "--paravirtprovider", "hyperv", 
      "--cpus", "2"
    ]
  end
  config.vm.provision "shell" , inline: $script
end

File docker-compose.yml เป็น Bash script ไว้สำหรับ Run ใน Debian สำหรับการติดตั้ง Docker , Docker compose

services:
  thingsboard:
    restart: unless-stopped
    image: "thingsboard/tb-postgres"
    expose:
      - "8080"
    ports:
      - "8080:9090"
      - "1883:1883"
      - "7070:7070"
      - "5683-5688:5683-5688/udp"
    environment:
      TB_QUEUE_TYPE: in-memory
      SPRING_DATASOURCE_URL: jdbc:postgresql://postgres:5432/thingsboard
      SPRING_DATASOURCE_PASSWORD: postgres
      SPRING_DATASOURCE_USERNAME: postgres
    volumes:
      - /home/vagrant/.thingsboard-data:/data
      - /home/vagrant/.thingsboard-logs:/var/log/thingsboard
    links:
      - postgres
    depends_on:
      - postgres

  postgres:
    restart: unless-stopped
    image: "postgres:15"
    ports:
      - "5432"
    environment:
      POSTGRES_DB: thingsboard
      POSTGRES_PASSWORD: postgres
    volumes:
      - /home/vagrant/.thingsboard-data/db
  • เปิด terminal พิมพ์ คำสั่ง ipconfig เพื่อดูค่า ip ที่ได้รับจาก Router

terminal ip

  • เปิด browser http://<ip_address>:8080 thingsboard login

Note

Default system administrator account:

login - sysadmin@thingsboard.org
password - sysadmin

Default demo tenant administrator account:

login - tenant@thingsboard.org.
password - tenant.

Demo tenant customers:

Customer A user: customerA@thingsboard.org.

Customer B user: customerB@thingsboard.org.

Customer C user: customerC@thingsboard.org.

all users have “customer” password.

หลังจาก Login จะได้หน้า Dashboard

thingsboard Dashboard

คำสั่ง Vagrant

Info

  • คำสั่ง พื้นฐาน สำหรับ บริหารจัดการ VB
    • vagrant up --provider=virtualbox --provision
    • vagrant halt
    • vagrant up
    • vagrant destroy
  • คำสั่ง สำหรับการ ssh เข้าไปใน VM
    • ตรวจสอบ ssh config
      • vagrant ssh-config
    • vagrant ssh

ต่อไปจะเรียนรู้การใช้งาน Thingsboard iot gateway

เตรียม Workshop

  • ขั้นตอนการเตรียม workshop หลังจากที่ได้ Download และติดตั้ง Arduino IDE และ Driver เรียบร้อยแล้ว ก็ได้ ทำการ Download file muict_thingsboard_cource.zip ไปไว้ใน Folder C:\Users\<username>\Documents\Arduino และ แตกไฟล์ให้เรียบรอย

extract workshop

หลังจาก นั้นให้เปิด Explorer ไปยัง C:\Users\<username>\Documents\Arduino\muict_thingsboard_course\Code

code workshop list

การตั้งค่า library ของโปรเจค

  • ตั้งค่า library ไปยัง C:\Users\<username>\Documents\Arduino\muict_thingsboard_course\Code เนื่องจาก ภายใน Folder ดังกล่าว ได้มี library เตรียมไว้แล้ว สามารถ compile และ upload code ได้แลยทันที

set library

  • เปิด โปรแกรม Arduino IDE ไปยังเมนู Files > Preferences และเปลี่ยน ตำแหน่งของ Location ดังนี้ set local lib

การเรียนรู้ workshop ก็จะดำเนิน เรียนรู้ไปเป็นลำดับ ดังนี้

  • ทำความเข้าใจ Code
  • Library ที่ใช้ในแต่ละบท
  • Upload Code ไปยัง Board ในที่การเรียบรู้สามารถใช้งาน Board ในตระกูล ESP32 ได้ตามปรกติทั้งไป แต่ในการเรียบรู้ในบทเรียน จะใช้งาน ESP32 Dev kit V1 ร่วมกับ Extension Shild ของ บริษัท komomi

board view

เอกสารประกอบ อุปกรณ์

คู่มือการใช้งาน ของ ฺboard