Fab10: arduino & biicode

  • View
    102

  • Download
    0

Embed Size (px)

DESCRIPTION

biicode technology gives you several advantages for enriching your Arduino experience: -> Save your project in different folders for a better organization. -> Reuse yours and other users´ code. Reusing made easy: just #include the file you need and you get it. No more copy and paste files from project to project or dowloading zip files from tutorials. -> This is a simple and fast way to compile and upload your code in your Arduino. -> You can use the text editors of your choice, also we provide Eclipse integration. -> We are hosting adafruit, sparkfun and many other libraries, you won’t need to download and install libraries in your SDK anymore. https://www.biicode.com/ http://docs.biicode.com/arduino.html

Text of Fab10: arduino & biicode

  • 1. Biicode: 1. Begin with Arduino. 2. Create your workspace. 3. Biicode & Eclipse. 4. How to reuse code. 5. Publish your code. IoT examples: 1. temboo & twitter. a. temboo. b. adafruit cc3000. c. adafruit 10dof. d. LCD. 2. temboo & nexmo. a. temboo. b. adafruit cc3000. c. adafruit 10dof. d. Smartphone. Index

2. How to begin: Arduino 1. Create a web account. 2. Download biicode client. https://www.biicode. com/downloads $ bii init $ bii setup:arduino $ bii new Code as usual $ bii arduino:upload 3. Register 4. https://www.biicode.com/downloads Download biicode 5. $ mkdir biicode_workspace $ cd biicode_workspace ~/biicode_workspace$ bii init Username: your_user_name Password for your_user_name: your_password Initialization correct, now you can create your first hive $ bii setup:arduino Create your Workspace 6. The workspace is folder where all project are placed. In biicode, we call hives to the projects. Workspace 7. All tools with one command $ bii setup:arduino 8. $ bii new fab10 Select language: (java/node/fortran/python/cpp/arduino/None) Introduce lang: arduino How would you like to name your first block? Introduce block name: my_blink INFO: Selected block name: my_blink Generate default firmware? (YES/no): [ENTER] Introduce board: uno Arduino detected on port COM17 Select IDE: (eclipse/none) Introduce ide (default:None) (/o list options): [ENTER] Create your Hive 9. Hive there are the biicode projects. You can have all the hive you like. 10. Blink & biicode #include "Arduino.h" int led = 13; void setup(){ pinMode(led, OUTPUT); } void loop(){ digitalWrite(led, HIGH); delay(1000); digitalWrite(led, LOW); delay(1000); } All you need to change $ cd fab10 ~/fab10$ bii arduino:build ... ~/fab10$ bii arduino:upload 11. your settings $ cd fab10 ~/fab10$ bii arduino:settings Introduce board: uno Arduino detected on port COM17 Select IDE: (eclipse/none) Introduce ide (default:None) (/o list options): eclipse ~/iot_day$ bii arduino:configure 12. https://www.eclipse.org/downloads Eclipse 13. Import your hive into Eclipse 14. Build your hive in Eclipse 15. Lets code #include "Arduino.h" int led = 13; void setup(){ Serial.begin(9600); pinMode(led, OUTPUT); } void loop(){ Serial.println(F("Led ON")); digitalWrite(led, HIGH); delay(1000); Serial.println(F("Led OFF")); digitalWrite(led, LOW); delay(1000); } 16. $ cd fab10 ~/fab10$ bii arduino:monitor ~/fab10$ bii arduino:upload Serial monitor 17. Reuse code hive_name$ bii find hive_name$ bii arduino:update www.biicode.com/fenix main.cpp 18. Reuse code #include "fenix/blink/blink.h" Blink my_blink; void setup(){ my_blink.setup (13, 1000); } void loop(){ my_blink.loop(); } blink.cpp hive_name$ bii find hive_name$ bii arduino:update 19. ~/fab10$ bii publish block: my_blink Introduce tag: STABLE Introduce msg: My first block INFO: Successfully published user_name/hello(user_name/master): 0 Publish your code 20. bii deps --graph 21. IoT Examples 22. IoT: how to use twitter with your Arduino, Temboo and Adafruit HW 23. diego/ardunet adafruit/ada_10dof LiquidCrystal.h Hardware & biicode blocks 24. Create an account in Temboo https://www.temboo.com/ 25. See your Temboo settings. TEMBOO_ACCOUNT TEMBOO_APP_KEY_NAME TEMBOO_APP_KEY 26. Create a new Temboo credential to send an email to a Gmail account. 27. See that all are correctly saved. TEMBOO_MYMAIL_CREDENTIAL 28. Define the necessary variables to WiFi and to Temboo. main.cpp //This file, located in your hive root folder define your wifi settings. Do not publish it! //mywifidetails.h //#define WLAN_SSID "YOUR_SSID" // cannot be longer than 32 characters! //#define WLAN_PASS "your_password" //#define WLAN_SECURITY YOUR_WIFI_SECURITY //WLAN_SEC_UNSEC, WLAN_SEC_WEP, WLAN_SEC_WPA or WLAN_SEC_WPA2 //This file will contain your TEMBOO_MYMAIL_CREDENTIAL, TEMBOO_ACCOUNT, TEMBOO_APP_KEY_NAME, TEMBOO_APP_KEY, do not publish it with your block //tembooaccount.h //#define TEMBOO_ACCOUNT "name_account" //#define TEMBOO_APP_KEY_NAME "application_account_name" //#define TEMBOO_APP_KEY "application_account_name_key" //#define TEMBOO_MYMAIL_CREDENTIAL "credential_name" 29. Use the serial monitor to upload your code. 30. IoT: Control your Arduino by phone with Nexmo and Temboo (and Adafruit HW) 31. Hardware & biicode blocks diego/ardunet adafruit/ada_10dof 32. Create an account in Nexmo: https://www.nexmo.com/ 33. Enter your mobile number to receive a SMS to activate your account 34. See your Nexmo API settings. NEXMO_API_KEY NEXMO_API_SECRET 35. Define the necessary variables to WiFi and to Temboo. main.cpp //This file, located in your hive root folder define your wifi settings. Do not publish it! //mywifidetails.h //#define WLAN_SSID "YOUR_SSID" // cannot be longer than 32 characters! //#define WLAN_PASS "your_password" //#define WLAN_SECURITY YOUR_WIFI_SECURITY //WLAN_SEC_UNSEC, WLAN_SEC_WEP, WLAN_SEC_WPA or WLAN_SEC_WPA2 //This file will contain your TEMBOO_MYMAIL_CREDENTIAL, TEMBOO_ACCOUNT, TEMBOO_APP_KEY_NAME, TEMBOO_APP_KEY, do not publish it with your block //tembooaccount.h //#define TEMBOO_ACCOUNT "name_account" //#define TEMBOO_APP_KEY_NAME "application_account_name" //#define TEMBOO_APP_KEY "application_account_name_key" //#define NEXMO_API_KEY "api_key" //#define NEXMO_API_SECRET api_secret //#define NUMBER_TO number 36. Use the serial monitor to upload your code.