Presentation is loading. Please wait.

Presentation is loading. Please wait.

James Michener K9JM This presentation will be available at

Similar presentations

Presentation on theme: "James Michener K9JM This presentation will be available at"— Presentation transcript:

1 James Michener K9JM

2 This presentation will be available at

3 Landscape – (30,000 foot view) What is an Ardunio? Why Arduino? How do you program them? What have other hams done with Ardunios? What has the author done with Ardunios? What advice to newbies? What could I do with an Arduino?

4 BIG COMPUTERS: Super computers – eg IBM Watson Cluster computers – eg Server Farms Server computers Desktop computers – eg Win 7 / Mac Tablets / Smart phones NOT THE TOPIC OF THIS PAPER

5 We will frame the Arduino in the landscape of small computers Embedded Linux Micro controllers Arduino Nano controller Attributes: Dedicated function Limited extensive graphical user interface Often communications oriented

6 OPEN SOURCE HARDWARE Building block of fully disclosed hardware and enabling software that permits anyone from putting the blocks together in new forms and advanced functionality.

7 Small console based Linux devices Commercial Examples: Set-top boxes Cable/DSL Routers WiFi access units Technology: ARM Processor – 32 bit 500MHz – 1.5GHz Large Flash based storage DDR memory >64megs

8 Open Source Hardware Examples: Beagle Bone -- Beagle Board -- Raspberry Pi -- These are the Arduino big brother

9 750MHz ARM Micro SD Flash up to 16GB 256 Megs of memory 4 Serial Ports 100 base-T Ethernet 12bit A/D converter USB – host / client Runs most Linux distros Draws less than a watt at 5 volts Many GPIO lines $79 dollars on amazon

10 Ham shack applications: Complex web services Apache, NTP, sendmail … Expandable with capes Serial, VGA, Prototype, camera, weather, audio, wi-fi, radar, touch screen LCD, GPS Programmable in any language supported by Linux… which is any language on this planet. Fortran, C, C++, python, lisp, Java.....

11 Weak in: Slow in bit manipulation Requires proficiency in Linux to get to to get started Poor low level library support: eg GPIO I2C / SPI Interrupts Timers

12 Arduino smaller brother Small limited I/O Single special interface 1K or less program, 256 or less RAM Typical applications Remote keyless entry Smart keys / RF ID tags Timers Remote Control Small appliances Keyers -- K1EL

13 Technology 8 or 16 bit technology 8K to 256K flash 1K to 64K RAM Multiple interfaces 10 to 100 Million instructions per second Commercial examples Thermostats Major appliances – Microwave, washing machine, dish washer Intelligent remote controls

14 Sierra Radio - HamStack PIC processor based. 64MHz 64K Flash 3K RAM $60 Parallax / Basic Stamp

15 ARM base processors 32 bit processor / ~100MHz More RAM / More flash / more money Built in Ethernet MAC Examples Netduino - Arduino Due ( real soon now)

16 Designed as a teaching tool Masters thesis project (2005) Names after Massimo Banzi favorite college bar.. Bar di Re Arduino. Names after King Arduin, 1002 Goals: Get going FAST Students up and running after one class Low cost modern processor - $25 Open source hardware Standard expansion interface..shield

17 General purpose micro controller Large library to interface most anything Hundreds of open source shields Low cost of entry Free development tools on any platform Many development environments

18 Today: Dozens of Companies Making Arduino Products and compatible shields More than 200,000 boards per month More than 100,000 developers Available World Wide Used by thousands of colleges / universities Rapid growth Large library of routines Available everywhere… even Radio Shack


20 The ORIGINAL: I like to support the Ardunio guys, so they will continue to innovate.

21 There are two processors: Small = Arduino Uno = ATmega328 Large = Arduino Mega = ATmega2560 Common properties: 16MHz Clock – Single clock per instruction, no FPU 8 bit data / 16 bit ( 2 byte) instruction On chip Flash with protected boot sector 10 bit A/D – 15 KHz sampling rate 40ma I/O pins - 1.8v to 5.5v operation I2C and SPI interface Multiple Analog out using 8 bit PWM Watchdog Timer Low Power Modes Internal / External oscillator

22 32K of Program / Data Flash 2K of SRAM 1K of EEPROM 1 Hardware Serial Port 2 External Interrupts 14 GPIO Digital Lines 6 channel analog multiplexer 3 Timers 1 Analog comparator 14 Digital I/O Pins

23 256K of Program / Data Flash 8K of SRAM 4K of EEPROM 4 Hardware Serial Ports 5 SPI & 1 I2C 5 external interrupts 16 channel analog multiplexer 6 Timers 4 Analog compare 54 Digital I/O pins

24 USB to serial interface Automatic switching power supply switching between USB and external Regulator for external power Expansion connectors for a shield Power LED Program controlled LED

25 2.7 x 2.2 inches

26 4.0 x 2.2 inches

27 There are hundreds of variants of each Different power supplies Different serial interfaces (RS-232 etc) Adding other features to the CPU board Ethernet Ethernet + POE Motor controllers

28 The real power of Ardunio: 1. Libraries – all the common stuff is done 2. Shields – Add anything else – comes with libraries 3. Simplified Development System

29 Bootloader General Purpose I/O – Wires A/D converter Interrupts Interrupt driven hardware serial PWM – Analog output Time / Delay Timers

30 There are hundreds of different shields They all come with their own example code and library. A great starting point

31 Ethernet – Wired / WiFi Text – LCD displays Graphic LCD display Touch screens Weather shields Motor/ stepper motor driver LED / Light Controllers Relay Interfaces Compass GPS Prototype shields

32 Up and running fast Universal way to show examples

33 GNU GCC – C, C++, assembly Currently avr gcc (2008) Inline assembly Templates GCC full C++ 11 available Price = $0.00

34 Serious IDE Free add on for Visual Studio You can get VS IDE for Free Excellent

35 Free Complex Setup our-first-avr-project-in-eclipse/

36 Free VS IDE and use Visual Micro Not Arduino Free

37 WA5ZNUs Waterfall display Cascata Talks was Saturday at Pacificon

38 K3NG -- Goody Does Morse and Hellscreiber K1EL Emulation Keyboards, LCD … and much more Arduino Uno based

39 Mike Szczys Google arduino ham radio and get a million other examples.

40 CI-V Router – Web based ++++ NTP locked station clock General purpose Control Panel Keyer -- Very special - ARRL CP Runs Auto tune a Johnson KW Matchbox

41 There is a Gremlin in my ham shack! It is the Icom CI-V bus, a one wire serial protocol bus. Contest program ( eg N1MM ) + Icom PW-1 + Icom IC-756Pro2 = COLLISION = HAVOC

42 Do not do it!

43 Found that hundreds of people have the same problem Larry, K8UT had tore into the problem


45 Go to Dayton 2011, someone suggests, what about an Arduino. First time I heard the word. Found that the Arduino Mega256 has 4 serial ports and a library for buffered/interrupt hardware I/O All I have to do is write the message handler. Its just software… Bought the Mega and a proto shield. Programmed a CI-V sniffer in 10 minutes

46 As a first project, this is VERY aggressive. Code in a dozen modules, needed a better IDE. Discovered Visual Micro + Visual Studio. Posted the code and schematics on my web page. Four people build one. Many requests for finished solution.


48 More than 50 units sold world wide Another 50 who have rolled their own Growing list of features Word of mouth marketing Hundreds of pages of documentation

49 I was in love… what other things are out there?

50 Tricked out with added features Band decoding Antenna Selection Ham Shack Power Control Center Ethernet control / Ethernet Reporting Station battery monitoring and charge controller

51 Router knows the frequency. Map Frequency to Antenna Selection. Resolution = 1KHz Decode to drive an Array Solution Six Pak Software module available for the CI-V Router

52 Qty 10 switchable amp output to turn on and off accessories, or AC power relays.

53 Using either simple HTML commands, or by serving simple web pages… do the following: Observe and control of ham shack power Observe and control of radio

54 link available at


56 Simple serial like interface Supports a limited number of connections - four Easy to do simple clients Easy to do simple single connection servers Easy to simple HTML Get/Put exchanges Difficult to do complex things. Not Apache. Not easily multi-tasking Not much RAM available = slow or small

57 Using HTML protocol plus small GET/PUT commands, plus serving small web pages gives powerful simple control over a small device. Small web pages are great for mobile/tablet browsing. Architectural Concept: Use a Beaglebone / Linux host Apache server to route/present the Arduino based devices.

58 Arduino combo boards Wiznet W5100 controller

59 Arduino Ethernet Shield Both have built in Micro SD Flash interfaces for complex web pages

60 Microchip ENC28J60 Very low cost, simple 100 base T Ethernet interface Hint: ( Richmond, CA ) has many low cost modules


62 Ethernet Four serial ports to communicate with other devices… eg antenna rotator, 160m inverted L antenna tuner Keyer Menu driven control, knob/push button interface When inactive it is an NTP synchronized station clock.

63 What should one use to communicate between pieces of equipment in your ham shack? 1.RS RS Ethernet 4.Wire per function Wish there was standard and protocol. In technology; never bet against Ethernet



66 External Arduino controller. Speaks I2C to motor driver / positional feedback.. Mounts on back of tuner 12V NEMA stepper motors. 1.8 degrees/step When power is removed, operator can turn knobs Frequency based tuning table Fine tweak with SWR measurement.

67 Prototype Arduino auto tuning controller Arduino Uno LCD Display with push button controls

68 K6YR / K6KPH / K9JM shares W6OWPs ARRL West Coast Code Proficiency Runs Keyer with crystal controlled speed accuracy Perfect control / synchronization with a computer Seamlessly speed changes – on the fly ARRL Official Farnsworth Spacing Solution – Arduino Uno using the hardware timer interrupt library.

69 Arduino Cookbook Collection of projects and examples, largely from the internet Arduino Internals Experts guide, hints and tricks

70 Head First C C programming 101 K & R THE reference manual for C Not a teaching text "A C program is like a fast dance on a newly waxed dance floor by people carrying razors. - Waldi Ravens.

71 Bjarne Stroustrup Reference manual Not a teaching text Warning C let's you easily shoot in your foot, C++ let's you reuse the bullet.

Download ppt "James Michener K9JM This presentation will be available at"

Similar presentations

Ads by Google