- BeagleBoard
- DragonBoard 410c
- Google Coral Dev Board
- Libre Computer Project
- MangoPi-MQ Pro
- NVIDIA Jetson
- PINE64
- Embedded system
- EmbeddedRelated.com
- Microcontroller
- Bare machine
- Bare machine computing
- AVR microcontrollers
- Arduino
- Processing
- Wiring
- C
- Dennis Ritchie 1941—2011
- C++
- Bjarne Stroustrup
- CMake creates output that can be used by buid systems like Make
- Template (C++)
- List of C++ template libraries
- C standard library (libc)
- Object-oriented programming (OOP)
- Class
- Increment and decrement operators
- Clang
- PIC microcontrollers
- TinyCircuits
- Seeed XIAO by Seeed Studio
- XIAO in Lesson 6
- XIAO nRF52840 Sense
- XIAO ESP32S3 Sense
- Renesas Electronics
- 4G
- AT&T IoT Starter Kit
- Avnet
- WNC (Wistron NeWeb Corporation)
- OpenEmbedded
- Yocto Project
- M18Qx IoT Monitor
- Anjay lightweight machine-to-machine (LwM2M) library
- Eclipse Leshan
- Heltec Automation
- STM32
- ESP32
- ESP8266
- ESP-01
- Hayes AT command set or AT command set
- Zerynth
- Particle
- Redbear Duo
- Sony Spresense
- Tessel
- Tomu
- Blues
- Micro Bit
- Mbits
- CoAP (Constrained Application Protocol)
- u-blox EVK-R410M-02B
- Install the SARA-R4 USB Windows Driver from the documentation and resources
- Install the m-center cellular evaluation software for Windows
- Select componets to install: AT script files (u-blox public git repository)
- User Guide
- Always send the +CPWROFF AT command before switching off the EVK-R410M-02B according to the User Guide Section 1.15
- SARA-R4 series AT commands manual
- Interprocessor communication (IPC)
- Mobile equipment control and status
- Call control, network service, security
- Short messages service
- SIM management and toolkit
- Domain Name System (DNS), IP, and SSL/TLS
- GPIO, FTP, HTTP, GNSS, I2C, and MQTT
- Narrowband IoT (NB-IoT)
- LTE-M Machine Type Communication
- Global Positioning System (GPS)
- Hirose U.FL connectors
- Lithium-ion polymer (LiPo) battery
- Advanced Encryption Standard (AES)
- KASUMI block cipher
- Zuc stream cipher
- Comparison of mobile operating systems
- Comparison of operating systems
- Real-time operating system (RTOS)
- Embedded operating system
- Middleware
- Node.js
- Ryan Dahl
- Isaac Z. Schlueter
- Fedor Indutny
- TJ Holowaychuk
- Joyent
- npm (Node Package Manager)
- nvm (Node Version Manager)
- n for Node.js version management on macOS, Linux, and WSL
- Firebase Quickstarts for Node.js
- Build a simple CRUD Node.js app with CockroachDB and the node-postgres driver
- Node-RED flow-based development tool for visual programming
- OpenJS Foundation
- Application binary interface (ABI)
- Dynamic-link library (DLL)
- Deno
- MEAN: MongoDB, Express.js, AngularJS, and Node.js
- Comparison of JavaScript-based web frameworks
- Crow C++ framework for creating HTTP or Websocket web services
- CrowCpp repository
- Mustache web template system
- SquirrellyJS
- Handlebars.js template system
- Pystache Python implementation of Mustache template system
- APL (programming language) by Kenneth E. Iverson 1920—2004
- BASIC
- John G. Kemeny 1926—1992
- Thomas E. Kurtz 1928—2024
- Lua (programming language)
- Ruby (programming language)
- Ruby on Rails
- Rust (programming language)
- Visual Basic for Applications (VBA)
- Comparison of software and protocols for distributed social networking
- AT Protocol
- Bluesky
- Mastodon (social network)
Node.js Downloads include latest Long Term Support (LTS) version and npm
- Pre-built installer and binary for Windows with an option to install (or upgrade) the necessary tools such as Chocalatey, Python, and Visual Studio
- WARNING: Upgrading Python resets pip list with only pip and setuptools, requiring package reinstallation
- Pre-built installer and binary for macOS (/usr/local/bin)
- Linux binaries for x64 and ARM
- Refresh the webpage at http://127.0.0.1:8080/ or http://localhost:8080/ to see server activities
$ node -v
$ npm -v
$ node -h
$ cd ~/iot/lesson6
$ node hello-world.js
$ node hello.js
Server running at http://127.0.0.1:8080/
response end call done
request end event fired
response end call done
request end event fired
^C
$ node http.js
0
1
2
^C
$
On Raspberry Pi via VNC Viewer, click the application menu on the left upper corner, select Programming to check whether Node-RED is installed
- If Node-RED is not installed, select Preferences > Recommended Software to install Node-RED
- Alternative installation as follows
$ bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)
- Run and view Node.js server at http://127.0.0.1:8080 on Raspberry Pi via VNC viewer or directly on a laptop computer at the Raspberry Pi IP address such as http://192.168.1.204:8080
- Reload the web page to see the server responses and press control-c (^C) to quit
$ node -v
$ npm -v
$ node -h
$ cd ~/iot/lesson6
$ node hello.js
Server running at http://127.0.0.1:8080/
response end call done
request end event fired
response end call done
request end event fired
^C
$ node http.js
0
1
2
^C
$
$ sudo pip3 install pystache
$ cd ~/iot/lesson6
$ cat say_hello.mustache
$ cat say_hello.py
$ python3 say_hello.py
Hi Alexa!
Hello, World!
['Hey ', _SectionNode(key='who', index_begin=12, index_end=18, parsed=[_EscapeNode(key='.'), '!'])]
Hey Google!
Hey Siri!
$
- The Particle on Raspberry Pi project has been discontinued
- Particle Agent - Discontinued, January 29, 2020
- Raspberry Pi 4B is not supported
- Error claiming Raspberry Pi 4B to the Particle account
- Raspberry Pi 4B green LED is on constantly
- Uninstall Particle Agent and its dependencies on Raspberry Pi 4B
Sign up and log in Particle at https://www.particle.io
Install the Particle Agent on Raspberry Pi, log in the Particle account, and claim Raspberry Pi to the Particle account
$ bash <( curl -sL https://particle.io/install-pi )
If the Raspberry Pi hostname has changed, unclaim it on Particle Console, and run particle-agent again
$ sudo particle-agent setup
To remove the Particle Agent and its dependencies
$ sudo apt remove particle-agent
$ sudo apt autoremove
$ sudo rm -rf /var/lib/particle
Alternately, install Particle CLI on a laptop (not recommended for Raspberry Pi since it disables the Bash color prompt)
$ bash <( curl -sL https://particle.io/install-cli )
$ particle login
$ particle call <device_name> digitalwrite D7=HIGH
$ particle call <device_name> digitalwrite D7=LOW
$ particle logout