This document provides an overview and agenda for pcDuino, an open source hardware and software platform. It describes how pcDuino combines the processing power of a mini PC with Arduino compatibility. Users can program pcDuino using Arduino IDE, Python, Java, Go and other languages. It also supports IDEs like Cloud 9 and programming via Ubuntu, Android, and command line. Example projects are showcased using sensors, shields and programming interfaces.
The document describes pcDuino, a $39 single board computer compatible with the Arduino ecosystem. It has 1GB RAM, 4GB flash storage, Gigabit Ethernet, and runs Linux and Android. The document outlines different pcDuino models and their specifications. It provides examples of programming pcDuino using languages like Scratch, C, Python, Go, and through IDEs like Arduino and Cloud 9. Accessories like shields can expand its functionality for hardware experiments.
pcDuino tech talk at Carnegie Mellon University 10/14/2014Jingfeng Liu
The document discusses pcDuino, an open-source single board computer that costs $39 and can be used for hardware experiments, programming, and connecting physical computing projects to the internet. It provides an overview of the different models of pcDuino, describes how to program it using languages like Arduino, Python, Go, and OpenCV, and showcases various projects that have been built with pcDuino like home automation, 3D printing, and robotics.
The document discusses pcDuino, an open source hardware and software platform. It can be programmed under Ubuntu Linux using C, Python, Java, and other languages. It also runs Android and supports Arduino-style programming under Android. The pcDuino combines the processing power of a mini PC with Arduino compatibility. It has multiple models that support functions like WiFi, Ethernet, HDMI output, and working with shields. Programming examples and guides are provided for C, Python, OpenCV, Cloud 9 IDE, QT, Scratch, Go and home automation using TCP/IP.
Port Scratch to pcDuino with hardware support. Scratch is a visual programming environment that allows kids to make games and share online. This document explains how to provide Scratch running on pcDuino access to Arduino compatible hardware interfaces. It involves packaging pcDuino's Arduino-style API into a Scratch plugin. This adds a new "Hardware" block to Scratch and implements functions for GPIO, PWM, and ADC using the pcDuino hardware API. It also shows implementing the HardwarePlugin in C/C++ to call the low-level hardware functions from Scratch blocks.
In this presentation, we highlight the details on doing IoT home automation with openHAB on pcDuino3B, and use Bluetooth BLE 4.0 technology to talk to sensors
This document discusses the maker movement and various tools and platforms that enable making. It introduces platforms like Arduino, Raspberry Pi, and pcDuino which allow users to create interactive electronic projects more easily. It describes how these platforms can be used for physical computing projects, education, and bringing manufacturing jobs back locally. Various shields and extensions are shown that add functionality to the boards. The document also discusses hackerspaces, crowd funding platforms like Kickstarter, and how open source projects like RepRap 3D printers are part of this movement.
Open Source Home Automation with LinkSprite.IOJingfeng Liu
This document discusses open source home automation using LinkSprite.IO. It describes using a LinkNode D1 WiFi Arduino board along with various Linker sensor and actuator modules. It provides the hardware and software requirements, including using the Arduino IDE, Android SDK, and Java. It explains how to set up WiFi on the LinkNode and send sensor data to LinkSprite.IO via HTTP POST requests. Finally, it briefly mentions the possibility of Zigbee-based home automation using pcDuino.
The document describes pcDuino, a $39 single board computer compatible with the Arduino ecosystem. It has 1GB RAM, 4GB flash storage, Gigabit Ethernet, and runs Linux and Android. The document outlines different pcDuino models and their specifications. It provides examples of programming pcDuino using languages like Scratch, C, Python, Go, and through IDEs like Arduino and Cloud 9. Accessories like shields can expand its functionality for hardware experiments.
pcDuino tech talk at Carnegie Mellon University 10/14/2014Jingfeng Liu
The document discusses pcDuino, an open-source single board computer that costs $39 and can be used for hardware experiments, programming, and connecting physical computing projects to the internet. It provides an overview of the different models of pcDuino, describes how to program it using languages like Arduino, Python, Go, and OpenCV, and showcases various projects that have been built with pcDuino like home automation, 3D printing, and robotics.
The document discusses pcDuino, an open source hardware and software platform. It can be programmed under Ubuntu Linux using C, Python, Java, and other languages. It also runs Android and supports Arduino-style programming under Android. The pcDuino combines the processing power of a mini PC with Arduino compatibility. It has multiple models that support functions like WiFi, Ethernet, HDMI output, and working with shields. Programming examples and guides are provided for C, Python, OpenCV, Cloud 9 IDE, QT, Scratch, Go and home automation using TCP/IP.
Port Scratch to pcDuino with hardware support. Scratch is a visual programming environment that allows kids to make games and share online. This document explains how to provide Scratch running on pcDuino access to Arduino compatible hardware interfaces. It involves packaging pcDuino's Arduino-style API into a Scratch plugin. This adds a new "Hardware" block to Scratch and implements functions for GPIO, PWM, and ADC using the pcDuino hardware API. It also shows implementing the HardwarePlugin in C/C++ to call the low-level hardware functions from Scratch blocks.
In this presentation, we highlight the details on doing IoT home automation with openHAB on pcDuino3B, and use Bluetooth BLE 4.0 technology to talk to sensors
This document discusses the maker movement and various tools and platforms that enable making. It introduces platforms like Arduino, Raspberry Pi, and pcDuino which allow users to create interactive electronic projects more easily. It describes how these platforms can be used for physical computing projects, education, and bringing manufacturing jobs back locally. Various shields and extensions are shown that add functionality to the boards. The document also discusses hackerspaces, crowd funding platforms like Kickstarter, and how open source projects like RepRap 3D printers are part of this movement.
Open Source Home Automation with LinkSprite.IOJingfeng Liu
This document discusses open source home automation using LinkSprite.IO. It describes using a LinkNode D1 WiFi Arduino board along with various Linker sensor and actuator modules. It provides the hardware and software requirements, including using the Arduino IDE, Android SDK, and Java. It explains how to set up WiFi on the LinkNode and send sensor data to LinkSprite.IO via HTTP POST requests. Finally, it briefly mentions the possibility of Zigbee-based home automation using pcDuino.
This document summarizes an ESP8266+Arduino workshop that demonstrates connecting an ESP8266 WiFi module to Arduino and programming it to create WiFi networks and access the internet. The workshop shows how to communicate with the ESP8266 using AT commands over serial, program it using the Arduino IDE, and use it as a web server and client. Code examples are provided to retrieve sensor data using a DHT11 and send it to a cloud database using the ESP8266's WiFi connection.
Designed keeping in mind the latest technology on a single board. It is really easy to design, experiment with, and test circuitry without soldering. Students can explore a wide variety of electronic concepts simply by placing components on to the breadboard. It is very useful in electronics laboratories for performing IoT experiments. It is also useful to build and test circuits as well as making projects related to IoT integrating with the cloud platform. visit https://researchdesignlab.com/esp32-development-board-trainer-kit.html for more details
This document provides information about controlling GPIO pins on the Raspberry Pi. It discusses using GPIO pins to blink an LED, read a button input, and control a DC motor with an L293D motor driver chip. It also covers configuring the serial port and using the RPIO library to add PWM and interrupt functions to GPIO control. Advanced topics include creating an internet-controlled robot with Livebots and examples on the RPIO documentation website.
You have one of those fruity *Pi arm boards and cheep sensor from China? Some buttons and LEDs? Do I really need to learn whole new scripting language and few web technologies to read my temperature, blink a led or toggle a relay? No, because your Linux kernel already has drivers for them and all you need is device tree and cat.
Interacting with Intel Edison
with Esther Jun Kim
Presented at FITC Toronto 2015
More info at www.fitc.ca
OVERVIEW
This talk will introduce the audience to Intel Edison, Intel’s newest maker platform. It will show how Edison can be transformed into a smart, natural device by teaching it to see and hear while retaining its small form factor.
The talk will also briefly describe how to interface Edison with simple supplementary hardware to create a programmable, voice-controlled system.
OBJECTIVE
Highlight the possibilities of Speech Interaction with Maker Devices.
TARGET AUDIENCE
Developers, designers, programmers.
FIVE THINGS AUDIENCE MEMBERS WILL LEARN
What’s Intel Edison.
How Language Models Work.
Simple Circuits.
About LEDs.
Voice Interaction.
This presentation describes my experience with nRF24L01, Arduino, Bus Pirate and various other hardware toys when somebody who does software gets into contact with "real stuff".
The project uses ultrasonic sensor and ESP8266 to monitor tank water level at any point of time.
The monitoring aspect has 2 objectives:
To check water level at any given point (achieved with the help of cloud connectivity through Thingspeak)
To send an alert message when tank is filled or empty (achieved with the help of Notify My Android app)
This document provides a summary of an ESP8266 workshop covering:
- Introduction to the ESP8266 hardware and software
- Setting up ESP-01 and ESP-12 modules for development
- Flashing firmware using esptool
- Introduction to NodeMCU and Lua
- Using the ESPlorer IDE
- Examples of using buttons, LEDs, WiFi, UDP, and MQTT with the ESP8266
This document discusses an Arduino introductory project about lighting. It provides instructions on installing the Arduino driver, uploading a basic blinking LED program, and exploring analog input and output by reading the value of a potentiometer and fading an LED. It also introduces Fritzing and 123D Circuits as tools for circuit schematic design.
This document provides an introduction to programming the ESP8266 WiFi chip. It outlines ESP8266 basics, including an overview of the ESP-01 and ESP-12 models. It then demonstrates how to connect an ESP8266 to an Arduino and use the Blynk app and library to control an LED over WiFi. Wiring diagrams and code examples are provided to showcase setting up and programming the ESP8266 for basic WiFi functionality and Blynk integration.
Lightning talk from the 24 March 2016 FW Dev meetup.
http://www.meetup.com/FW-Dev/
This talk will give a brief overview of the ESP8266, show how easy they are to get started with and discuss interest in holding a Saturday workshop
This document provides instructions for setting up a basic Internet of Things (IoT) project using an Arduino clone that costs less than $10. It discusses selecting an inexpensive Arduino clone, installing the necessary software development environment and libraries, and testing serial communication and ping response between the Arduino and a Linux computer. The document outlines getting started with IoT concepts at low cost using easier microcontroller technology like Arduino. It provides step-by-step guidance for configuring the hardware, software, and network settings to enable pinging an Arduino clone connected via serial communication to a Linux virtual machine on a Mac.
Introduction to ESP32 Programming [Road to RIoT 2017]Alwin Arrasyid
Introduction to ESP32 programming using official development framework, ESP-IDF and Arduino for ESP32.
Every demo code is published in this github repository:
https://github.com/alwint3r/RTR_Surabaya2017
This document provides an introduction to developing Internet of Things (IoT) applications using the NodeMCU development board and IoT cloud platforms. It covers basic Arduino programming on NodeMCU, reading sensor values from devices like DHT11, and sending sensor data to the IoT platform Ubidots. Hands-on labs demonstrate building a real-time humidity and temperature monitor and a smart switch controller that retrieve and send data to control an LED. Future topics discussed include IoT communication protocols, machine learning, and applying IoT in various fields.
Presentation of the ESP8266 WiFi module created for the course Pervasive Systems 2016 of the Master Degree in Engineering in Computer Science (DIAG, University of Rome "La Sapienza")
Pervasive Systems 2016 Web Site: http://ichatz.me/index.php/Site/PervasiveSystems2016
LinkedIn Profile: https://www.linkedin.com/in/biagio-botticelli-444b87105?trk=hp-identity-name
GitHub Repository: https://github.com/biagiobotticelli/ESP8266
This document introduces JavaScript robotics and discusses how Node.js can be used both on and off microcontroller boards to build robots. It describes common microcontroller boards like Arduino, Tessel 2, and ESP8266 that robots are often built on. These boards have inputs and outputs that can be used to build sensors and actuators. The document then outlines three techniques for using Node.js in robotics: running Node.js directly on a board like Tessel 2, interfacing with a board like Arduino from a separate Node.js program, and using Node.js as an Internet of Things service to control a device like an ESP8266-powered tiara over MQTT. Resources for further learning are also provided
Lab Handson: Power your Creations with Intel Edison!Codemotion
by Francesco Baldassarri - Come along and play with Intel Edison, for the Internet of Things? Learn about the Developer Kit for IoT, chose your preferred environment and test it – or test all the possibilities? We will be providing information and hands on training for developers interested in testing our solutions in C/C++, Javascript, Arduino, Wyliodrin and Python. Just bring you laptop and we will help you to get started. We will also provide information about our Cloud Analytics platform, and test hardware samples with the Grove Starter Kit – Intel IoT Edition. Visit us anytime and start making! What will you make?
The document discusses open source hardware and the open source nature of projects from SparkFun and .:oomlout:. Open source means designs, guides, code, and 3D models are freely available to download, reproduce, modify, and distribute under a Creative Commons license as long as credit is given and developments are shared in a similar open manner. The goal is to make physical things as accessible and fun to learn with as open source software has been.
This document summarizes an ESP8266+Arduino workshop that demonstrates connecting an ESP8266 WiFi module to Arduino and programming it to create WiFi networks and access the internet. The workshop shows how to communicate with the ESP8266 using AT commands over serial, program it using the Arduino IDE, and use it as a web server and client. Code examples are provided to retrieve sensor data using a DHT11 and send it to a cloud database using the ESP8266's WiFi connection.
Designed keeping in mind the latest technology on a single board. It is really easy to design, experiment with, and test circuitry without soldering. Students can explore a wide variety of electronic concepts simply by placing components on to the breadboard. It is very useful in electronics laboratories for performing IoT experiments. It is also useful to build and test circuits as well as making projects related to IoT integrating with the cloud platform. visit https://researchdesignlab.com/esp32-development-board-trainer-kit.html for more details
This document provides information about controlling GPIO pins on the Raspberry Pi. It discusses using GPIO pins to blink an LED, read a button input, and control a DC motor with an L293D motor driver chip. It also covers configuring the serial port and using the RPIO library to add PWM and interrupt functions to GPIO control. Advanced topics include creating an internet-controlled robot with Livebots and examples on the RPIO documentation website.
You have one of those fruity *Pi arm boards and cheep sensor from China? Some buttons and LEDs? Do I really need to learn whole new scripting language and few web technologies to read my temperature, blink a led or toggle a relay? No, because your Linux kernel already has drivers for them and all you need is device tree and cat.
Interacting with Intel Edison
with Esther Jun Kim
Presented at FITC Toronto 2015
More info at www.fitc.ca
OVERVIEW
This talk will introduce the audience to Intel Edison, Intel’s newest maker platform. It will show how Edison can be transformed into a smart, natural device by teaching it to see and hear while retaining its small form factor.
The talk will also briefly describe how to interface Edison with simple supplementary hardware to create a programmable, voice-controlled system.
OBJECTIVE
Highlight the possibilities of Speech Interaction with Maker Devices.
TARGET AUDIENCE
Developers, designers, programmers.
FIVE THINGS AUDIENCE MEMBERS WILL LEARN
What’s Intel Edison.
How Language Models Work.
Simple Circuits.
About LEDs.
Voice Interaction.
This presentation describes my experience with nRF24L01, Arduino, Bus Pirate and various other hardware toys when somebody who does software gets into contact with "real stuff".
The project uses ultrasonic sensor and ESP8266 to monitor tank water level at any point of time.
The monitoring aspect has 2 objectives:
To check water level at any given point (achieved with the help of cloud connectivity through Thingspeak)
To send an alert message when tank is filled or empty (achieved with the help of Notify My Android app)
This document provides a summary of an ESP8266 workshop covering:
- Introduction to the ESP8266 hardware and software
- Setting up ESP-01 and ESP-12 modules for development
- Flashing firmware using esptool
- Introduction to NodeMCU and Lua
- Using the ESPlorer IDE
- Examples of using buttons, LEDs, WiFi, UDP, and MQTT with the ESP8266
This document discusses an Arduino introductory project about lighting. It provides instructions on installing the Arduino driver, uploading a basic blinking LED program, and exploring analog input and output by reading the value of a potentiometer and fading an LED. It also introduces Fritzing and 123D Circuits as tools for circuit schematic design.
This document provides an introduction to programming the ESP8266 WiFi chip. It outlines ESP8266 basics, including an overview of the ESP-01 and ESP-12 models. It then demonstrates how to connect an ESP8266 to an Arduino and use the Blynk app and library to control an LED over WiFi. Wiring diagrams and code examples are provided to showcase setting up and programming the ESP8266 for basic WiFi functionality and Blynk integration.
Lightning talk from the 24 March 2016 FW Dev meetup.
http://www.meetup.com/FW-Dev/
This talk will give a brief overview of the ESP8266, show how easy they are to get started with and discuss interest in holding a Saturday workshop
This document provides instructions for setting up a basic Internet of Things (IoT) project using an Arduino clone that costs less than $10. It discusses selecting an inexpensive Arduino clone, installing the necessary software development environment and libraries, and testing serial communication and ping response between the Arduino and a Linux computer. The document outlines getting started with IoT concepts at low cost using easier microcontroller technology like Arduino. It provides step-by-step guidance for configuring the hardware, software, and network settings to enable pinging an Arduino clone connected via serial communication to a Linux virtual machine on a Mac.
Introduction to ESP32 Programming [Road to RIoT 2017]Alwin Arrasyid
Introduction to ESP32 programming using official development framework, ESP-IDF and Arduino for ESP32.
Every demo code is published in this github repository:
https://github.com/alwint3r/RTR_Surabaya2017
This document provides an introduction to developing Internet of Things (IoT) applications using the NodeMCU development board and IoT cloud platforms. It covers basic Arduino programming on NodeMCU, reading sensor values from devices like DHT11, and sending sensor data to the IoT platform Ubidots. Hands-on labs demonstrate building a real-time humidity and temperature monitor and a smart switch controller that retrieve and send data to control an LED. Future topics discussed include IoT communication protocols, machine learning, and applying IoT in various fields.
Presentation of the ESP8266 WiFi module created for the course Pervasive Systems 2016 of the Master Degree in Engineering in Computer Science (DIAG, University of Rome "La Sapienza")
Pervasive Systems 2016 Web Site: http://ichatz.me/index.php/Site/PervasiveSystems2016
LinkedIn Profile: https://www.linkedin.com/in/biagio-botticelli-444b87105?trk=hp-identity-name
GitHub Repository: https://github.com/biagiobotticelli/ESP8266
This document introduces JavaScript robotics and discusses how Node.js can be used both on and off microcontroller boards to build robots. It describes common microcontroller boards like Arduino, Tessel 2, and ESP8266 that robots are often built on. These boards have inputs and outputs that can be used to build sensors and actuators. The document then outlines three techniques for using Node.js in robotics: running Node.js directly on a board like Tessel 2, interfacing with a board like Arduino from a separate Node.js program, and using Node.js as an Internet of Things service to control a device like an ESP8266-powered tiara over MQTT. Resources for further learning are also provided
Lab Handson: Power your Creations with Intel Edison!Codemotion
by Francesco Baldassarri - Come along and play with Intel Edison, for the Internet of Things? Learn about the Developer Kit for IoT, chose your preferred environment and test it – or test all the possibilities? We will be providing information and hands on training for developers interested in testing our solutions in C/C++, Javascript, Arduino, Wyliodrin and Python. Just bring you laptop and we will help you to get started. We will also provide information about our Cloud Analytics platform, and test hardware samples with the Grove Starter Kit – Intel IoT Edition. Visit us anytime and start making! What will you make?
The document discusses open source hardware and the open source nature of projects from SparkFun and .:oomlout:. Open source means designs, guides, code, and 3D models are freely available to download, reproduce, modify, and distribute under a Creative Commons license as long as credit is given and developments are shared in a similar open manner. The goal is to make physical things as accessible and fun to learn with as open source software has been.
Here are the key things to know about some common electronic components:
DC Motor:
- What it Does: Spins when a current is passed through its leads. It converts electrical energy to mechanical motion/rotation.
- No. of Leads: Typically has 2 leads - one positive and one negative. Current must flow through the motor in one direction for it to spin.
LED (Light Emitting Diode):
- What it Does: Emits light when current passes through it in the correct direction. Common colors are red, green, blue, yellow, white.
- No. of Leads: Has 2 leads, one longer than the other. The longer lead is positive and must be connected to
Using arduino and raspberry pi for internet of thingsSudar Muthu
The document introduces Arduino and Raspberry Pi for internet of things applications. It discusses the basics of both platforms, including components, programming, and interfacing with sensors and actuators. It provides examples of blinking LEDs, reading button input, and controlling an LED based on light level. Finally, it compares Arduino and Raspberry Pi, concluding they are best used together to take advantage of their complementary capabilities.
This document provides an overview of Arduino, an open-source electronics platform. It discusses that Arduino boards can read inputs like light or buttons and turn them into outputs like activating motors or LEDs. The Arduino programming language and IDE make it easy to write code and upload it to the board. A basic blink program is presented as an example. Key features of the Arduino UNO board are listed, including the microcontroller, memory, and input/output pins. Common applications of Arduino in robotics and IoT are mentioned, such as motion detectors and home automation.
The document provides an overview and introduction to using the Intel Edison board, including what Edison is, how to power it up and boot it, connecting to WiFi using ConnMan, getting started with Yocto to build a custom Linux image, and connecting hardware like GPIO. Key topics covered include using MRAA to control GPIO pins from code, booting processes involving the boot ROM and U-Boot, and recommendations to use the mini breakout board or buy from Fry's for beginners.
The Raspberry Pi is an inexpensive ($35), credit card sized computer that is able to run the Linux operating system. The card also contains USB ports, an Ethernet port, camera port, GPIO lines, serial ports, SPI port, HDMI port, and I2C port – just about anything you would want for an inexpensive and very powerful robot controller! Lloyd Moore will show us how to get started with this device. Specifically we'll talk about loading and configuring the operating system, installing the Qt (C++) development system, and controlling some of the ports.
1. The document provides step-by-step instructions for setting up the Arduino IDE software and connecting an Arduino board to a computer. It explains how to select the board type and serial port, and upload a program to make an LED blink.
2. Key steps include downloading the Arduino IDE, selecting the board type in Tools, choosing the serial port, and uploading a basic blink program to test that the board is connected properly.
3. The document also provides an overview of programming concepts for Arduino like using variables, constants, and the setup and loop functions.
This document provides an overview of setting up an Intel IoT Developer Kit including the hardware components, installing software, and running sample codes. It discusses the Galileo and Edison boards, microSD cards, IDEs, MRAA and UPM libraries, and connecting devices. It also demonstrates how to set up environments for C/C++ with Eclipse, JavaScript with XDK, and Arduino, and describes where to find documentation and sample codes for getting started with the kits and sensors.
This document provides an overview of using Python for embedded systems development on the Raspberry Pi and ESP32 microcontrollers. It discusses why Python is suitable, how to set up the Raspberry Pi and install an operating system. It also covers GPIO pin layout and functions, pulse width modulation (PWM), and installing MicroPython on the ESP32. The document recommends books and online courses for further learning about Python for embedded systems and microcontrollers.
Topic: Low cost computing using the Raspberry PI and other single board computing platforms. Overview of the growing low cost computing environment and demo of basic configuration of the Raspberry PI and Arduino for home and business projects.
ESP32 WiFi & Bluetooth Module - Getting Started Guidehandson28
The document provides information about the ESP32 WiFi and Bluetooth SoC module. It discusses the ESP32's dual-core processor, integrated antennas and radios, power efficiency features, and applications in mobile devices and IoT. It also provides specifications, pinout diagrams, and instructions for integrating the ESP32 with the Arduino IDE. Examples are given for running code on the ESP32 to scan for WiFi networks and toggle an LED with a button press.
The document provides an introduction and overview of connecting Intel Edison devices to the DeviceHub IoT platform. It discusses:
1) Setting up a DeviceHub account and adding a project and device.
2) Installing necessary libraries on the Intel Edison like libmraa to control GPIO pins and connect to WiFi/MQTT.
3) Examples of sending sensor data from the Edison to DeviceHub including string, analog, and digital values and viewing the data in real-time graphs on the DeviceHub dashboard.
This document provides an overview of the Android embedded operating system, including its hardware, software ecosystem, and key characteristics and components. It discusses the Android Open Source Project, the layered architecture including the kernel, HAL, system services, and apps. It also covers the build system, filesystem structure, debugging and development tools like ADB and logcat.
This document provides an overview of Arduino, an open-source hardware platform used for building interactive objects and prototypes. It describes Arduino as a single-board microcontroller intended to make electronics projects more accessible. Key topics covered include the Arduino programming environment, common Arduino boards and their features, examples of simple Arduino projects like blinking an LED and building a line-following robot, and comparisons to other prototyping platforms. The document encourages readers to get started with Arduino for its low cost, easy programming environment, and large community support.
The document describes an Arduino-based home automation system that can sense various parameters like temperature, distance, light, and detect burglars. It transmits the sensor data to an Arduino board which processes the data and checks it against the program code to control devices like fans accordingly. The system also allows users to set alerts. It then provides details about Arduino programming, including the languages, code structure, and functions used. It gives an example of a circuit and code to light LEDs and explains various Arduino functions like pinMode(), digitalWrite(), analogRead() etc.
This presentations introduces some common protocols used in electronics, and how to sniff/speak them. Then a bit about USB, and some interesting hacks with these things.
Then a bit about openwrt and router hacking.
This document provides instructions for setting up a CentOS 7 VM using VirtualBox for DPDK training. It describes installing CentOS 7 Minimal, configuring the VM with 4 network interfaces, installing DPDK and related tools, compiling sample applications like l3fwd and pktgen, and manually starting the applications on the VM to test basic packet forwarding functionality.
The Arduino is an open-source electronics prototyping platform intended to make interactive objects and environments more accessible. It was first developed in 2005 in Italy as an inexpensive yet powerful platform for sensing and controlling objects. The Arduino hardware specifications include a microcontroller, digital and analog input/output pins, and interfaces for programming and connecting circuits. It can be programmed through an open-source IDE to sense environmental inputs and control outputs like motors and lights. An example application is a blinking LED controlled by a button press. The Arduino is widely used for prototyping in fields like robotics, home automation, and education.
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
Maruthi Prithivirajan, Head of ASEAN & IN Solution Architecture, Neo4j
Get an inside look at the latest Neo4j innovations that enable relationship-driven intelligence at scale. Learn more about the newest cloud integrations and product enhancements that make Neo4j an essential choice for developers building apps with interconnected data and generative AI.
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
For the full video of this presentation, please visit: https://www.edge-ai-vision.com/2024/06/building-and-scaling-ai-applications-with-the-nx-ai-manager-a-presentation-from-network-optix/
Robin van Emden, Senior Director of Data Science at Network Optix, presents the “Building and Scaling AI Applications with the Nx AI Manager,” tutorial at the May 2024 Embedded Vision Summit.
In this presentation, van Emden covers the basics of scaling edge AI solutions using the Nx tool kit. He emphasizes the process of developing AI models and deploying them globally. He also showcases the conversion of AI models and the creation of effective edge AI pipelines, with a focus on pre-processing, model conversion, selecting the appropriate inference engine for the target hardware and post-processing.
van Emden shows how Nx can simplify the developer’s life and facilitate a rapid transition from concept to production-ready applications.He provides valuable insights into developing scalable and efficient edge AI solutions, with a strong focus on practical implementation.
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!SOFTTECHHUB
As the digital landscape continually evolves, operating systems play a critical role in shaping user experiences and productivity. The launch of Nitrux Linux 3.5.0 marks a significant milestone, offering a robust alternative to traditional systems such as Windows 11. This article delves into the essence of Nitrux Linux 3.5.0, exploring its unique features, advantages, and how it stands as a compelling choice for both casual users and tech enthusiasts.
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
2. Agenda
pcDuino: a platform open source software meets open
source hardware
Programming under Ubuntu (linux)
Arduino style programming ( C ) for pcDuino
Python programming for pcDuino
Java programming for pcDuino
Go
Cloud 9 IDE
Scratch for pcDuino
Project Showcase
Programming under Android ICS
Command line programming
QT GUI
3. pcDuino: where open software meets open hardware
pcDuino = mini PC + Arduino
pcDuino is a kind of super Arduino with the brain
power of a mini PC.
Existing Arduino shield can work on pcDuino.
pcDuino can run Ubuntu. The desktop outputs from
HDMI. User can remotely access its desktop via VNC
(Network or OTG-USB).
pcDuino has built-in Arduino style IDE environment.
It also supports programming in Python, Cloud 9
IDE, Java, Go-lang, Scratch, etc.
pcDuino can run full Android ICS, and support
Arduino style hardware programming under Android.
pcDuino is a server, a WiFi router, a printer
server, a IP-PBX, and more.
pcDuino is a platform where open software meets open
hardware.
4. pcDuino FamilypcDuino Lite pcDuino Lite WiFi pcDuino v1 pcDuino v2 pcDuino v3
CPU
Allwinner A101GHz
ARM Cortex A8
Allwinner A101GHz
ARM Cortex A8
Allwinner A101GHz
ARM Cortex A8
Allwinner A101GHz
ARM Cortex A8
GPU
OpenGL
ES2.0OpenVG 1.1
Mali 400 core
OpenGL
ES2.0OpenVG 1.1
Mali 400 core
OpenGL
ES2.0OpenVG 1.1
Mali 400 core
OpenGL
ES2.0OpenVG 1.1
Mali 400 core
DRAM 512MB 256MB 1GB 1GB
Storage
NO FlashmicroSD
card (TF) slot for up to
32GB
2GB FlashmicroSD
card (TF) slot for up to
32GB
2GB Flash (4GB after
2/1/2014)microSD
card (TF) slot for up to
32GB
2GB Flash (4GB after
2/1/2014)
microSD card (TF) slot
for up to 32GB
Video HDMI HDMI HDMI HDMI
OS Support
• Lbuntu 12.04
•Android
•Lbuntu 12.04
•Doesn’t support
Android
•Lbuntu 12.04
•Android
•Lbuntu 12.04
•Android
ExtensionInterface 2.54mm headers Arduino (TM) Headers 2.54mm headers Arduino (TM) Headers
NetworkInterface
•10/100Mbps RJ45
•USB WiFi extension
(not included)
WiFi, No Ethernet
•10/100Mbps RJ45
•USB WiFi extension
(not included)
•10/100Mbps RJ45
•WiFi
Power 5V, 2000mA 5V, 2000mA 5V, 2000mA 5V, 2000mA
8. pcDuino boot modes
Default to boot from SD
If there is no bootable image in SD, it will try to boot
from NAND.
For Ubuntu OS, the system and data in NAND can be copied
to SD seamlessly.
18. C Command line
Setup (one time)
If not already done, set up git. Do this using the command:
ubuntu@ubuntu:~$ sudo apt-get install git
Make sure you’re in your home folder by typing
ubuntu@ubuntu:~$ cd
ubuntu@ubuntu:~$ pwd
/home/Ubuntu
Now download the distribution from github by typing
ubuntu@ubuntu:~$ git clone https://github.com/pcduino/c_enviroment
20. C Command lineChange into the c_enviroment folder:
ubuntu@ubuntu:~$ cd c_enviroment
ubuntu@ubuntu:~/c_enviroment$ ls
Makefile hardware libraries output sample
Now run make to make the libraries and the examples with the following command:
ubuntu@ubuntu:~/c_enviroment$ make
Make[1]: Leaving directory `/home/ubuntu/c_enviroment/sample'
The resulting binary files are found in the output/test folder
ubuntu@ubuntu:~/c_enviroment$ cd output/test
ubuntu@ubuntu:~/c_enviroment/output/test$ ll
total 660
drwxrwxr-x 2 ubuntu ubuntu 4096 Apr 27 06:59 ./
drwxrwxr-x 3 ubuntu ubuntu 4096 Apr 27 06:49 ../
-rwxrwxr-x 1 ubuntu ubuntu 13868 Apr 27 06:58 adc_test*
-rwxrwxr-x 1 ubuntu ubuntu 28284 Apr 27 06:58 adxl345_test*
-rwxrwxr-x 1 ubuntu ubuntu 14209 Apr 27 06:58 interrupt_test*
-rwxrwxr-x 1 ubuntu ubuntu 13726 Apr 27 06:58 io_test*
-rwxrwxr-x 1 ubuntu ubuntu 13712 Apr 27 06:59 linker_button_test*
-rwxrwxr-x 1 ubuntu ubuntu 13907 Apr 27 06:59 linker_buzzer_test*
-rwxrwxr-x 1 ubuntu ubuntu 13689 Apr 27 06:59 linker_hall_sensor_test*
-rwxrwxr-x 1 ubuntu ubuntu 13760 Apr 27 06:59 linker_joystick_test*
-rwxrwxr-x 1 ubuntu ubuntu 13769 Apr 27 06:59 linker_led_bar_test*
-rwxrwxr-x 1 ubuntu ubuntu 13690 Apr 27 06:59 linker_led_test*
-rwxrwxr-x 1 ubuntu ubuntu 14290 Apr 27 06:59 linker_light_sensor_test*
““
21. C Command lineTo view the contents of a sample sketch, (this
example we’ll look at the contents of
linker_led_test.c) type:
ubuntu@ubuntu:~/c_enviroment/sample$ cat
linker_led_test.c
/*
* LED test program
*/
#include <core.h>
int led_pin = 1;
void setup()
{
if(argc != 2){
goto _help;
}
led_pin = atoi(argv[1]);
if((led_pin < 0) || (led_pin > 13)){
goto _help;
}
pinMode(led_pin, OUTPUT);
return;
_help:
printf("Usage %s LED_PIN_NUM(0-13)n", argv[0]);
exit(-1);
}
void loop()
{
digitalWrite(led_pin, HIGH); // set the LED
on
delay(1000); // wait for a second
digitalWrite(led_pin, LOW); // set the LED
off
delay(1000); // wait for a second
}
22. Creating Your Own Sketch
ubuntu@ubuntu:~/c_enviroment/sample$ nano button_led.c
An empty nano screen should appear.
Copy and paste the following code into it. (Remember to paste in nano at the cursor,
just right click the mouse button).
#include <core.h> // Required first line to run on pcDuino
int ledPin = 8;
int buttonPin = 7;
// variables will change:
int buttonState = 0; // variable for reading the pushbutton status
void setup() {
// initialize the LED pin as an output:
pinMode(ledPin, OUTPUT);
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT);
}
23. Creating Your Own Sketch
void loop(){
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);
// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
// turn LED on:
digitalWrite(ledPin, HIGH);
}
else {
// turn LED off:
digitalWrite(ledPin, LOW);
}
}
24. Creating Your Own Sketch
Modify the Makefile and Compile
ubuntu@ubuntu:~/c_enviroment/sample$ nano Makefile
You will see a section that lists all the OBJS something like:
OBJS = io_test adc_test pwm_test spi_test adxl345_test serial_test liquidcrystal_i2c
liquidcrystal_spi interrupt_test tone_test
OBJS += linker_led_test linker_potentiometer_test linker_tilt_test linker_light_sensor_test
linker_button_test
OBJS += linker_touch_sensor_test linker_magnetic_sensor_test linker_temperature_sensor_test
linker_joystick_test
OBJS += linker_rtc_test linker_sound_sensor_test linker_buzzer_test linker_hall_sensor_test
linker_led_bar_test linker_relay_test
OBJS += pn532_readAllMemoryBlocks pn532readMifareMemory pn532readMifareTargetID
pn532writeMifareMemory
25. Creating Your Own SketchWe’re going to add a line to the end of this with the name of the
scketch we just created:
OBJS += button_led
Save the file and exit nano using <CTRL>X with a y and <enter>.
We now run make by typing:
ubuntu@ubuntu:~/c_enviroment/sample$ make
You should see a whole bunch of text with the end being:
button_led.c -o ../output/test/button_led ../libarduino.a
If all went well, you can go to the output/test folder and find your executable you have created:
ubuntu@ubuntu:~/c_enviroment/sample$ cd ../output/test/
ubuntu@ubuntu:~/c_enviroment/output/test$ ll
total 676
drwxrwxr-x 2 ubuntu ubuntu 4096 Apr 27 07:51 ./
drwxrwxr-x 3 ubuntu ubuntu 4096 Apr 27 06:49 ../
-rwxrwxr-x 1 ubuntu ubuntu 13868 Apr 27 07:51 adc_test*
-rwxrwxr-x 1 ubuntu ubuntu 28284 Apr 27 07:51 adxl345_test*
-rwxrwxr-x 1 ubuntu ubuntu 13668 Apr 27 07:51 button_led*
“..(not showing rest of listing here)
26. Creating Your Own SketchRun Your Sketch
To run it, once you have wired up a switch and led to the right pins, type:
ubuntu@ubuntu:~/c_enviroment/output/test$ ./button_led
To stop the program, <Ctrl>C
A Quick Re-Cap
Add #include <core.h> to the top of your sketch.
Create your sketch in the samples folder (if your familiar with linux,
makefiles, and compiling code, you could set up your own)
Add the filename to the Makefile in the samples folder in the OBJS section
without the .c
Run make
Run the executable from the output/test folder.
You can introduce command line arguments into your sketch to make it more
transportable.
52. OpenCV
def process(infile):
image = cv.LoadImage(infile);
if image:
faces = detect_object(image)
im = Image.open(infile)
path = os.path.abspath(infile)
save_path = os.path.splitext(path)[0]+"_face"
try:
os.mkdir(save_path)
except:
pass
if faces:
draw = ImageDraw.Draw(im)
count = 0
for f in faces:
count += 1
draw.rectangle(f, outline=(255, 0, 0))
a = im.crop(f)
file_name =
os.path.join(save_path,str(count)+".jpg")
# print file_name
a.save(file_name)
drow_save_path =
os.path.join(save_path,"out.jpg")
im.save(drow_save_path, "JPEG", quality=80)
else:
print "Error: cannot detect faces on %s" %
infile
if __name__ == "__main__":
process("./opencv_in.jpg")
53. OpenCV
#!/usr/bin/env python
#coding=utf-8
import os
from PIL import Image, ImageDraw
import cv
def detect_object(image):
grayscale = cv.CreateImage((image.width, image.height), 8, 1)
cv.CvtColor(image, grayscale, cv.CV_BGR2GRAY)
cascade = cv.Load("/usr/share/opencv/haarcascades/haarcascade_frontalface_alt_tree.xml")
rect = cv.HaarDetectObjects(grayscale, cascade, cv.CreateMemStorage(), 1.1, 2,
cv.CV_HAAR_DO_CANNY_PRUNING, (20,20))
result = []
for r in rect:
result.append((r[0][0], r[0][1], r[0][0]+r[0][2], r[0][1]+r[0][3]))
return result
54. Go Langpackage main
import (
"fmt"
"./gpio"
"time"
)
func main() {
g, err := gpio.NewGPIOLine(7,gpio.OUT)
if err != nil {
fmt.Printf("Error setting up GPIO %v: %v", 18, err)
return
}
blink(g, 100)
g.Close()
}
func blink(g *gpio.GPIOLine, n uint) {
fmt.Printf("blinking %v time(s)n", n)
for i := uint(0); i < n; i++ {
g.SetState(true)
time.Sleep(time.Duration(1000) * time.Millisecond)
g.SetState(false)
time.Sleep(time.Duration(1000) * time.Millisecond)
}
}
55. Cloud 9 IDE
Cloud9 IDE is an online development environment
for Javascript and Node.js applications as well
as HTML, CSS, PHP, Java, Ruby and 23 other
languages.
You're programming for the web, on the web.
Teams can collaborate on projects and run them
within the browser. When you're finished,
deploy it—and you're done!
69. Home Automation:IP controllable LED
Many users are asking if the hardware part can be
programmed together with the Ubuntu linux?
Sure. This is the beauty of pcDuino. The Arduino compatible hardware is a native part
of the OS.
pcDuino includes Ethernet port, USB Wifi dongle, so there is no
need for Ethernet shield, Ethernet shield , USB host shield, MP3
shields and so on.
Now, we are going to implement a TCP/IP
socket server on pcDuino to listen to the
data coming from client.
When it receives character ’O', it will
turn on the LED, and when it receives ‘F‛,
it will turn on the LED. No actions if
receive something else.
70. Home Automation:IP controllable LED#include ‚sys/socket.h‛
#include ‚netinet/in.h‛
#include ‚arpa/inet.h‛
#include ‚sys/types.h‛
int led_pin = 2;
int listenfd = 0, connfd = 0;
int n;
struct sockaddr_in serv_addr;
char sendBuff[1025];
time_t ticks;
void loop()
{
n = read(connfd, sendBuff, strlen(sendBuff) );
if(n>0)
{
if(sendBuff[0]=='O') digitalWrite(led_pin,
HIGH); // set the LED on
if(sendBuff[0]=='F') digitalWrite(led_pin,LOW);
// set the LED off
}
}
void setup()
{
led_pin = 2;
pinMode(led_pin, OUTPUT);
listenfd = socket(AF_INET, SOCK_STREAM, 0);
memset(serv_addr, '0', sizeof(serv_addr));
memset(sendBuff, '0', sizeof(sendBuff));
serv_addr.sin_family = AF_INET;
serv_addr.sin_addr.s_addr = htonl(INADDR_ANY);
serv_addr.sin_port = htons(5000);
bind(listenfd, (struct sockaddr*) serv_addr, sizeof(serv_addr));
listen(listenfd, 10);
connfd = accept(listenfd, (struct sockaddr*)NULL, NULL);
}