From 10bd41f5aca94146f6aa5268341a34d6aa9a0df3 Mon Sep 17 00:00:00 2001 From: Martino Facchin Date: Mon, 19 Dec 2016 17:54:23 +0100 Subject: [PATCH] Add Arduino UNO Wifi board Both serial and OTA upload methods OTA upload uses the ESP8266 method with a custom upload tool (https://github.com/arduino/arduinoOTA) --- hardware/arduino/avr/boards.txt | 28 ++++++++++++++++++++++++++++ hardware/arduino/avr/platform.txt | 6 +++++- hardware/package_index_bundled.json | 1 + 3 files changed, 34 insertions(+), 1 deletion(-) diff --git a/hardware/arduino/avr/boards.txt b/hardware/arduino/avr/boards.txt index a7fc6a205..cf435c8a5 100644 --- a/hardware/arduino/avr/boards.txt +++ b/hardware/arduino/avr/boards.txt @@ -1021,3 +1021,31 @@ one.build.extra_flags={build.usb_flags} ############################################################## +unowifi.name=Arduino Uno WiFi +unowifi.vid.0=0x2A03 +unowifi.pid.0=0x0057 + +unowifi.upload.tool=avrdude +unowifi.upload.protocol=arduino +unowifi.upload.maximum_size=32256 +unowifi.upload.maximum_data_size=2048 +unowifi.upload.speed=115200 +unowifi.upload.network.endpoint_upload=/pgm/upload +unowifi.upload.network.endpoint_sync=/pgm/sync +unowifi.upload.network.sync_return=204:SYNC +unowifi.upload.network.endpoint_reset=/log/reset +unowifi.upload.network.port=80 + +unowifi.bootloader.tool=avrdude +unowifi.bootloader.low_fuses=0xFF +unowifi.bootloader.high_fuses=0xDE +unowifi.bootloader.extended_fuses=0x05 +unowifi.bootloader.unlock_bits=0x3F +unowifi.bootloader.lock_bits=0x0F +unowifi.bootloader.file=optiboot/optiboot_atmega328.hex + +unowifi.build.mcu=atmega328p +unowifi.build.f_cpu=16000000L +unowifi.build.board=AVR_UNO_WIFI +unowifi.build.core=arduino +unowifi.build.variant=standard diff --git a/hardware/arduino/avr/platform.txt b/hardware/arduino/avr/platform.txt index c26053998..a8ab16967 100644 --- a/hardware/arduino/avr/platform.txt +++ b/hardware/arduino/avr/platform.txt @@ -95,6 +95,8 @@ tools.avrdude.path={runtime.tools.avrdude.path} tools.avrdude.cmd.path={path}/bin/avrdude tools.avrdude.config.path={path}/etc/avrdude.conf +tools.avrdude.network_cmd={runtime.tools.arduinoota.path}/bin/arduinoota + tools.avrdude.upload.params.verbose=-v tools.avrdude.upload.params.quiet=-q -q # tools.avrdude.upload.verify is needed for backwards compatibility with IDE 1.6.8 or older, IDE 1.6.9 or newer overrides this value @@ -119,8 +121,10 @@ tools.avrdude.bootloader.pattern="{cmd.path}" "-C{config.path}" {bootloader.verb tools.avrdude_remote.upload.pattern=/usr/bin/run-avrdude /tmp/sketch.hex {upload.verbose} -p{build.mcu} +tools.avrdude.upload.network_pattern={network_cmd} -address {serial.port} -port {upload.network.port} -sketch "{build.path}/{build.project_name}.hex" -upload {upload.network.endpoint_upload} -sync {upload.network.endpoint_sync} -reset {upload.network.endpoint_reset} -sync_exp {upload.network.sync_return} + # USB Default Flags # Default blank usb manufacturer will be filled in at compile time # - from numeric vendor ID, set to Unknown otherwise build.usb_manufacturer="Unknown" -build.usb_flags=-DUSB_VID={build.vid} -DUSB_PID={build.pid} '-DUSB_MANUFACTURER={build.usb_manufacturer}' '-DUSB_PRODUCT={build.usb_product}' +build.usb_flags=-DUSB_VID={build.vid} -DUSB_PID={build.pid} '-DUSB_MANUFACTURER={build.usb_manufacturer}' '-DUSB_PRODUCT={build.usb_product}' \ No newline at end of file diff --git a/hardware/package_index_bundled.json b/hardware/package_index_bundled.json index ed9913446..2896b7775 100644 --- a/hardware/package_index_bundled.json +++ b/hardware/package_index_bundled.json @@ -24,6 +24,7 @@ "boards": [ {"name": "Arduino Yún"}, {"name": "Arduino/Genuino Uno"}, + {"name": "Arduino Uno WiFi"}, {"name": "Arduino Diecimila"}, {"name": "Arduino Nano"}, {"name": "Arduino/Genuino Mega"},