hands-on Arduino introduction making a sequencer to send 3 channels of pulse signals to a drum chip (Arduino based dsp-D8)
designed for 2 workshops at Sonar Hong Kong, 17 March 2018
Getting started with Arduino Programming can be daunting. These are slides I used in my classes which introduced programming concepts to non-engineers, non-programmers, but totally people who wanted to learn more about electronics.
Intro to Arduino Class taught at CRASHspace by Quin (Qtechknow). Originally taught on August 11, 2012 at Crashspace, in LA. This revision patches the diagrams and fixes the code! Thanks to SparkFun who shared all of their original slides with me!
I have prepared this presentation when I was studying at Western Region Campus. I along with some of my friends conducted training for junior students on Arduino. Its day-1 presentation.
hands-on Arduino introduction making a sequencer to send 3 channels of pulse signals to a drum chip (Arduino based dsp-D8)
designed for 2 workshops at Sonar Hong Kong, 17 March 2018
Getting started with Arduino Programming can be daunting. These are slides I used in my classes which introduced programming concepts to non-engineers, non-programmers, but totally people who wanted to learn more about electronics.
Intro to Arduino Class taught at CRASHspace by Quin (Qtechknow). Originally taught on August 11, 2012 at Crashspace, in LA. This revision patches the diagrams and fixes the code! Thanks to SparkFun who shared all of their original slides with me!
I have prepared this presentation when I was studying at Western Region Campus. I along with some of my friends conducted training for junior students on Arduino. Its day-1 presentation.
Arduino Lecture 4 - Interactive Media CS4062 Semester 2 2009Eoin Brazil
CS4062 Masters in Interactive Media - Fourth Arduino Lecture - March 18th 2009 - University of Limerick. This lecture presents a short review and introduction to programming concepts relevant to Arduino. This was aimed at a digital media / music technology masters student audience.
Class materials for teaching the basic use of Arduino with LED, button, debouncing concept and Serial output. These materials were originally used in Startathon 2016.
The code is available here. https://github.com/SustainableLivingLab/intro-to-arduino
An introduction to the Arduino microcontroller for the Washington, DC Kids & Technology Meetup. Processing software, Arduino hardware were discussed. Several Arduino projects were demonstrated. Resources are posted here:
https://www.evernote.com/shard/s89/sh/6fd6ce79-c0b2-495e-b6f8-a4c4335cd284/9b1d07121e9f4b89106bcfcba6463bdf
Intro to Arduino class taught by Quin from Qtechknow at the Deezmaker Hackerspace July 2014. Revised from previous slides to include helpful tools, more pictures, and many more projects for the students! Curriculum is for both kids and adults. Feel free to use, share, and remix as part of the Creative Commons Attribution-ShareAlike 4.0 International open source license.
Arduino is an open-source project that created microcontroller-based kits for building digital devices and interactive objects that can sense and control physical devices.
Arduino Lecture 4 - Interactive Media CS4062 Semester 2 2009Eoin Brazil
CS4062 Masters in Interactive Media - Fourth Arduino Lecture - March 18th 2009 - University of Limerick. This lecture presents a short review and introduction to programming concepts relevant to Arduino. This was aimed at a digital media / music technology masters student audience.
Class materials for teaching the basic use of Arduino with LED, button, debouncing concept and Serial output. These materials were originally used in Startathon 2016.
The code is available here. https://github.com/SustainableLivingLab/intro-to-arduino
An introduction to the Arduino microcontroller for the Washington, DC Kids & Technology Meetup. Processing software, Arduino hardware were discussed. Several Arduino projects were demonstrated. Resources are posted here:
https://www.evernote.com/shard/s89/sh/6fd6ce79-c0b2-495e-b6f8-a4c4335cd284/9b1d07121e9f4b89106bcfcba6463bdf
Intro to Arduino class taught by Quin from Qtechknow at the Deezmaker Hackerspace July 2014. Revised from previous slides to include helpful tools, more pictures, and many more projects for the students! Curriculum is for both kids and adults. Feel free to use, share, and remix as part of the Creative Commons Attribution-ShareAlike 4.0 International open source license.
Arduino is an open-source project that created microcontroller-based kits for building digital devices and interactive objects that can sense and control physical devices.
A very basic Arduino presentation with quite old projects, a brief Officine Arduino presentation and Fablab Torino.
These imagines and concepts are related and based over the work of Massimo Banzi and the Arduino Team, Alexandra Dechamps-Sonsino, Enrico Bassi.
18/03/2010 - FTS seminar series @ Cardiff Univesity, Computer Science. Pete Woznowski and Rich Coombs one hour presentation on Arduino. Some info on Arduino and the talk: Arduino is a hardware and software platform for developing electronic devices and applications, aimed at being fun and accessible to everyone. Think Lego Mindstorms, but aimed intentionally at adults (rather than aimed at children and incidentally used by adults :)). The scope and potential for Arduino is huge. It has been used to develop simple applications like pedometers and networked environmental sensors, to art exhibits and remote controlled vehicles. The talk aims to give an overview of the Arduino platform and a brief introduction to designing and programming Arduino applications, along with some demonstrations.
This is One of My Favorite Presentation .. Created By me
This Presentations Contents Are Robotics And its Scopes In Furture Like Robotics in Medical Help, Security, Advancement in Daily life and Future Project on Robotics Etc.
In this presentation, Interfacing Bluetooth(HC-05) with Arduino is explained with some AT commands to configure and initialize the Bluetooth module(HC-05).
Code for Arduino:
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10, 11); // RX, TX
void setup()
{
Serial.begin(9600);
pinMode(9,OUTPUT); digitalWrite(9,HIGH);
Serial.println("Enter AT commands:");
mySerial.begin(38400);
}
void loop()
{
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
mySerial.write(Serial.read());
}
TEEM'16 - Track 1 Computational thinking in pre-university education
Authors: Pablo Martin-Ramos; Maria João Lopes; M. Margarida Lima Da Silva; Manuela Ramos Silva
https://youtu.be/mVK10HOMmg4
Arduino is an open- source computer hardware and software company, project and user community that designs and manufactures microcontroller-based kits for building systems consisting of digital devices, interactive objects that can sense and control in the physical world.
It covers several topics: basics, drivers and shields, GPIO, compilers and IDEs, hradware protocols I2C, SPI, UART. The presentation also provides several examples: DC motor control, stepper motor control, reading analog data ADC, what is DMA and a music equalizer (both software and hardware).
take your Arduino skills to the next level by using libraries. this describes a follow-up workshop for people who have already done the Arduino introduction workshop
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
In this insightful webinar, Inflectra explores how artificial intelligence (AI) is transforming software development and testing. Discover how AI-powered tools are revolutionizing every stage of the software development lifecycle (SDLC), from design and prototyping to testing, deployment, and monitoring.
Learn about:
• The Future of Testing: How AI is shifting testing towards verification, analysis, and higher-level skills, while reducing repetitive tasks.
• Test Automation: How AI-powered test case generation, optimization, and self-healing tests are making testing more efficient and effective.
• Visual Testing: Explore the emerging capabilities of AI in visual testing and how it's set to revolutionize UI verification.
• Inflectra's AI Solutions: See demonstrations of Inflectra's cutting-edge AI tools like the ChatGPT plugin and Azure Open AI platform, designed to streamline your testing process.
Whether you're a developer, tester, or QA professional, this webinar will give you valuable insights into how AI is shaping the future of software delivery.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
The field of Information retrieval (IR) is currently undergoing a transformative shift, at least partly due to the emerging applications of generative AI to information access. In this talk, we will deliberate on the sociotechnical implications of generative AI for information access. We will argue that there is both a critical necessity and an exciting opportunity for the IR community to re-center our research agendas on societal needs while dismantling the artificial separation between the work on fairness, accountability, transparency, and ethics in IR and the rest of IR research. Instead of adopting a reactionary strategy of trying to mitigate potential social harms from emerging technologies, the community should aim to proactively set the research agenda for the kinds of systems we should build inspired by diverse explicitly stated sociotechnical imaginaries. The sociotechnical imaginaries that underpin the design and development of information access technologies needs to be explicitly articulated, and we need to develop theories of change in context of these diverse perspectives. Our guiding future imaginaries must be informed by other academic fields, such as democratic theory and critical theory, and should be co-developed with social science scholars, legal scholars, civil rights and social justice activists, and artists, among others.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
I have heard many times that architecture is not important for the front-end. Also, many times I have seen how developers implement features on the front-end just following the standard rules for a framework and think that this is enough to successfully launch the project, and then the project fails. How to prevent this and what approach to choose? I have launched dozens of complex projects and during the talk we will analyze which approaches have worked for me and which have not.
JMeter webinar - integration with InfluxDB and GrafanaRTTS
Watch this recorded webinar about real-time monitoring of application performance. See how to integrate Apache JMeter, the open-source leader in performance testing, with InfluxDB, the open-source time-series database, and Grafana, the open-source analytics and visualization application.
In this webinar, we will review the benefits of leveraging InfluxDB and Grafana when executing load tests and demonstrate how these tools are used to visualize performance metrics.
Length: 30 minutes
Session Overview
-------------------------------------------
During this webinar, we will cover the following topics while demonstrating the integrations of JMeter, InfluxDB and Grafana:
- What out-of-the-box solutions are available for real-time monitoring JMeter tests?
- What are the benefits of integrating InfluxDB and Grafana into the load testing stack?
- Which features are provided by Grafana?
- Demonstration of InfluxDB and Grafana using a practice web application
To view the webinar recording, go to:
https://www.rttsweb.com/jmeter-integration-webinar
3. standard Arduino workshop 2017
Before we start… check the connection between your
Arduino board and your laptop:
● plugin your Arduino board USB cable into your laptop
● open Arduino IDE software (www.arduino.cc)
● open the Blink sketch from File>Examples>Basic
● pick the correct port from Tools>Serial Port
● pick the correct board type from Tools>Board “Uno”
● hit ‘upload’ to test the connection
● look for ‘Done uploading’ and check if the onboard LED
is blinking
4. standard Arduino workshop 2017
Arduino: what is it?
Arduino is an open-source electronics
prototyping platform
based on flexible, easy-to-use hardware
and software
It is intended for artists, designers,
hobbyists and anyone interested in
creating interactive objects or
environments
• sensors
• sound
• light
• wifi
• ...
5. standard Arduino workshop 2017
Our program for today
terminology 4
software 2
basic electronics 4
projects 20+
metronome
theremin
7. standard Arduino workshop 2017
Arduino vs Raspberry Pi
➔ looks similar
➔ similar price
➔ micro-controller vs
mini-computer
➔ Arduino: IO
➔ Pi: OS
Other popular platforms:
ESP8266, Particle Photon, micro:bit
8. standard Arduino workshop 2017
Arduino boards
➔ many official boards
➔ different sizes
➔ different connections
➔ use same code
➔ mostly compatible
➔ extra functions via shields
10. standard Arduino workshop 2017
Arduino-style boards
➔ many copies
➔ many improvements
➔ extra functions included
(Wifi, GPS, motor, Ethernet,...)
➔ use same code
➔ mostly compatible
➔ cheaper!
11. standard Arduino workshop 2017
Arduino software: IDE
➔ Integrated Development Environment
➔ Write sketch -> upload to board
➔ Useful examples
➔ ‘Libraries’ to make our life easier
Always make sure to pick the correct BOARD
➔ Connect using USB cable, pick correct PORT
➔ Upload sketch
➔ Check output of Serial Monitor
➔ Save your sketches..
12. standard Arduino workshop 2017
Arduino software: Web Editor
Same functionality with:
➔ Browser based editor (needs login)
➔ Accessible from any computer
➔ Storage in the cloud
➔ Need to sign up for username
➔ Need to install the Arduino Create plugin for upload
13. standard Arduino workshop 2017
Basic electronics
➔ DC direct current vs alternating current AC
➔ voltage: volts 5V (usb), 3V3, 9V
➔ current: milli ampere 40 mA = 0.04 A
➔ power: watts 1-2 W (USB limit)
➔ resistors: reduce voltage
➔ diodes: one-way + light
➔ capacitors: small battery
➔ schematics
14. standard Arduino workshop 2017
Basic electronics
DIGITAL: on/off
1/0
true/false
high/low
0V/5V
ANALOG: variable 0->5V
Ohm’s law: U = I * R
Kirchoff’s laws:
22. standard Arduino workshop 2017
resistor colour code
220 ohm = 220 Ω
red red black black (brown)
10k ohm = 10,000 Ω
brown black black red
(brown)
23. standard Arduino workshop 2017
Arduino: ‘blink’ sketch
/*
Blink
Turns on an LED on for one second, then off for one second, repeatedly.
Most Arduinos have an on-board LED you can control. On the Uno and
Leonardo, it is attached to digital pin 13. If you're unsure what
pin the on-board LED is connected to on your Arduino model, check
the documentation at http://www.arduino.cc
This example code is in the public domain.
modified 8 May 2014
by Scott Fitzgerald
*/
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin 13 as an output.
pinMode(13, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(13, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(13, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
initialisation
setup { }
loop { }
bonus:
attach a second LED to
pin12 doing exactly
opposite of LED on pin13
24. standard Arduino workshop 2017
Arduino: RGB LED blink
Red Green Blue = primary colours (additive)
V = common negative
R = red positive
B = blue positive
G = green positive
(including resistors)
use digitalWrite to mix colours
e.g. on pin 10, 11, 12
28. standard Arduino workshop 2017
Arduino: potentiometer
int pot_value; [VARIABLE]
[SETUP]
[LOOP]
pot_value = analogRead(A0);
[change your delay to:]
delay(pot_value);
[analogRead returns 0->1023]
5k ohm
29. standard Arduino workshop 2017
Arduino: Serial Monitor
[SETUP]
Serial.begin(9600);
[LOOP]
[try one by one:]
Serial.print(“hello”);
[or]
Serial.println(“hello”);
[or]
Serial.print(“pot value: “);
Serial.println(pot_value); bonus:
print description of your
program on startup and
format output with t
31. standard Arduino workshop 2017
Arduino: metronome
Blink with variable speed, and bpm in serial monitor
How?
read pot_value (analogRead)
print pot_value (Serial.print)
calculate beats per minute (=)
print BPM (Serial.print)
LED ON for 100ms (digitalWrite)
LED OFF for variable time: pot_value
100ms variable pot_value
ON OFF
32. standard Arduino workshop 2017
Arduino: metronome
total ‘beat’ length = 100ms ON + variable OFF
beat_length = 100 + pot_value
beats per minute = (60 * 1000) / beat_length
BPM will vary from 53 to 600
100ms variable pot_value
bonus:
attach a second LED to
pin12 doing exactly
opposite of LED on pin13
ON OFF
total beat length
33. standard Arduino workshop 2017
Arduino: metronome
‘int’ type does not work with large numbers
(larger than around 32000, 16 bits)
type to use = ‘long’
long bpm;
[SETUP]
[LOOP]
bpm = (60 * 1000L) / (100 + pot_value);
bonus:
format your output with t
35. standard Arduino workshop 2017
Arduino: metronome + sound
● LED on and beep (100ms) + LED off and no beep
● variable speed with potentiometer
● serial monitor BPM
frequency examples (Hz):
C 261
D 293
E 329
G 392
bonus:
try different frequencies
36. standard Arduino workshop 2017
Arduino: light dependent resistor
LDR or photoresistor =
variable resistor, similar to potentiometer -> analogRead
voltage divider: sum=5V and analog input sees 0->5V
1K ohm
37. standard Arduino workshop 2017
Arduino: light dependent resistor
int ldr_value;
[SETUP]
[LOOP]
ldr_value = analogRead(A1);
Serial.println(ldr_value);
check on the Serial Monitor for min, max values of the LDR
how to go from e.g. 50-500 values to 200-5000Hz frequencies?
use ‘map’ function
41. standard Arduino workshop 2017
Advanced theremin
1. Use a pentatonic scale with a lookup table
= table of frequencies on a pentatonic scale, accessible by index
2. Add a 2 step ‘sequencer’
1 loop = constant base note + variable note on second beat
100ms variable pot_value 100ms variable pot_value
base note silence variable pentatonic note silence
43. standard Arduino workshop 2017
2 step sequencer theremin
1 loop = constant base note + variable note on second beat
tone(3, 206); noTone(3); tone(3, freq); noTone(3);
delay(100); delay(pot_value); delay(100); delay(pot_value);
Now you can add steps, change length of steps etc...
100ms variable pot_value 100ms variable pot_value
base note silence variable pentatonic note silence
44. standard Arduino workshop 2017
Arduino: AnalogWrite (PWM)
Analog input = 0 to 5 V
Arduino does not output
a real analog signal (0-5V)
analogWrite(pin, value);
PWM = Pulse Width Modulation
only available on pins 3,5,6,9,10,11
can use this to fade LED
values from 0 to 255 (8 bits)
45. standard Arduino workshop 2017
Arduino: AnalogWrite (PWM)
‘for’ structure = loop for X times
Open sketch: Examples > 03.Analog > Fading
[change your breadboard LED to pin 9]
// fade in from min to max in increments of 5 points:
for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
// sets the value (range from 0 to 255):
analogWrite(ledPin, fadeValue);
// wait for 30 milliseconds to see the dimming effect
delay(30);
}
46. standard Arduino workshop 2017
Arduino: input via Serial Monitor
top box of Serial Monitor = input
send data from computer to Arduino - ASCII format (bytes)
47. standard Arduino workshop 2017
Arduino: input via Serial Monitor
Let’s read a number 0-9 for intensity of LED
[remove all commands from loop]
int brightness;
[SETUP]
Serial.begin(9600);
[LOOP]
if (Serial.available()) {
brightness = Serial.read();
Serial.print("Arduino received: ");
Serial.println(brightness);
}
[switch to ‘No line ending’ at bottom of Serial Monitor?]
48. standard Arduino workshop 2017
Arduino: input via Serial Monitor
for analogWrite we need to map the brightness
from 48-57 (ASCII for 0 to 9)
to
0-255 for analogWrite (0% to 100%)
[add this line in the loop]
analogWrite(ledPin, map(brightness, 48, 57, 0, 255));
49. standard Arduino workshop 2017
Arduino: suppliers
ONLINE
➔ Official Arduino shop: http://arduino.cc/
great documentation, projects, forum
➔ Seeedstudio: http://www.seeedstudio.com/depot/
➔ Telesky: https://telesky.world.tmall.com/
➔ Adafruit: http://www.adafruit.com/ great documentation
IN HONG KONG - Apliu St
➔ WECL http://www.weclonline.com/wecl_eng/index.html
➔ Tell How http://tellhow-tech.com/
51. standard Arduino workshop 2017
Dimsum Labs
the hackerspace of HK www.dimsumlabs.com/
community of technology enthusiasts
space for creativity in Sheung Wan
Tuesday evening HackJam
www.facebook.com/groups/hackjamhk/