Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
167 commits
Select commit Hold shift + click to select a range
92eed41
initial pass at BLE firmata for Arduino 101
soundanalogous Dec 31, 2015
6ce3fbe
fix previousMillis val. minor BLEStream improvements
soundanalogous Jan 4, 2016
e7a2c30
add support for BLEPeripheral library
soundanalogous Feb 21, 2016
1b61d8f
use pin state and mode getters and setters
soundanalogous Feb 27, 2016
c37292f
temp fix for config query issue
soundanalogous Feb 27, 2016
009eff9
proper check for available packets
soundanalogous Feb 28, 2016
733746f
updated comments in bleConfig
soundanalogous Mar 5, 2016
9788f7f
add ble connection interval and ble TX flush interval
soundanalogous Mar 6, 2016
25e6615
increase i2c RX data buffer to 64 bytes
soundanalogous Mar 14, 2016
ae85c84
skip setConnectionInterval for Arduino 101 by default
soundanalogous Mar 14, 2016
c27ab47
Merge pull request #279 from firmata/ble
soundanalogous Mar 14, 2016
872e3cc
add missing SerialFirmata.h optional include
soundanalogous Mar 14, 2016
a3b3f65
fix issue where BLEPeripheral lib needed to be included even if not n…
soundanalogous Apr 5, 2016
68db055
Merge pull request #283 from firmata/bleperipheral-dep-fix
soundanalogous Apr 5, 2016
9f476ad
do not ignore MKR1000 pins
soundanalogous Apr 10, 2016
e5582d0
default config to MKR1000 / Arduino WiFi Shield 101
soundanalogous Apr 10, 2016
51e3c7d
Adds ESP8266 support c/o jacobrosental and jnsbyr
jacobrosenthal Feb 18, 2016
86a8273
Merge pull request #286 from firmata/esp
soundanalogous Apr 11, 2016
9402128
WiFiClientStream added
jnsbyr Apr 15, 2016
3d2085c
WiFiServer activation moved from constructor to maintain
jnsbyr Apr 16, 2016
b6573c8
WiFiServerStream fix & host connection callback
jnsbyr Apr 17, 2016
57967d3
WiFiServerStream connected state
jnsbyr Apr 17, 2016
21fd184
Merge pull request #289 from jnsbyr/wifi-client
soundanalogous Apr 17, 2016
ccaa903
update some wifi config instructions
soundanalogous Apr 17, 2016
077aa19
refactor setup function
soundanalogous Apr 18, 2016
55ed0f6
connection state management modified
jnsbyr Apr 23, 2016
c553c3b
Merge pull request #291 from jnsbyr/wifi-client
soundanalogous Apr 24, 2016
7573a58
simplify pin ignore configuration
soundanalogous Apr 24, 2016
562e060
Merge pull request #290 from soundanalogous/wifi-client
soundanalogous Apr 24, 2016
fbd7667
Merge pull request #292 from firmata/wifi-client
soundanalogous Apr 26, 2016
8449265
enable CurieBLE.setConnectionInterval
soundanalogous Jun 16, 2016
5d93938
Merge pull request #294 from firmata/curie-update
soundanalogous Jun 16, 2016
08436bd
move EthernetClientStream.cpp to .h file
soundanalogous Jun 19, 2016
bcabc47
consolidate StandardFirmataEthernet variants
soundanalogous Jun 19, 2016
d12da78
Merge pull request #295 from firmata/ethernet-updates
soundanalogous Jun 19, 2016
8cdf1b1
cleanup whitespace
soundanalogous Jun 19, 2016
aac822a
bump version to 2.5.3
soundanalogous Jun 19, 2016
4759f26
Removed some spelling mistakes in the comments
shantanu404 Jul 30, 2016
048bc8f
More spelling corrections
shantanu404 Jul 30, 2016
bc956be
Merge pull request #297 from shantanu69/patch-1
soundanalogous Jul 30, 2016
982056b
Update url of ThomasWeinert/carica-firmata
igrybkov Sep 1, 2016
aac7667
Merge pull request #301 from igrybkov/patch-1
soundanalogous Sep 1, 2016
af6ad68
add links to vvvv and openFrameworks client libraries
soundanalogous Sep 5, 2016
492faae
Add Rust firmata client library
kelcecil Oct 13, 2016
1de9c19
Merge pull request #307 from kelcecil/rust-firmata-lib
soundanalogous Oct 13, 2016
6ac21c6
fix compiler error for Arduino 1.0.6 and older
soundanalogous Oct 16, 2016
b75fff7
Fix compiler issues due to SofwareSerial
soundanalogous Oct 16, 2016
5da81d6
forward declare some functions to avoid complier errors in old IDE ve…
soundanalogous Oct 16, 2016
3d9d50a
explain why some functions are forward declared
soundanalogous Oct 16, 2016
609341b
Merge pull request #310 from firmata/older-ide-fixes
soundanalogous Oct 16, 2016
281b99f
Respect default pin state when setting OUTPUT mode
soundanalogous Oct 16, 2016
f332d77
add Teensy 3.5 and 3.6 to Boards.h
soundanalogous Oct 17, 2016
c744d22
Merge pull request #312 from firmata/new-teensy-boards
PaulStoffregen Oct 21, 2016
5d9b298
Merge pull request #311 from firmata/issue-302
soundanalogous Oct 22, 2016
39c8e70
bump bugfix version
soundanalogous Oct 24, 2016
bdd3916
Split parsing functionality into new lib
zfields Oct 28, 2016
8359209
Update FirmataClass to use FirmataParser
zfields Oct 31, 2016
854b877
Merge pull request #313 from zfields/parser
soundanalogous Oct 31, 2016
b976cf5
ensure release.sh bundles all .cpp and .h files
soundanalogous Oct 31, 2016
b4690be
Update Readme.md
wbadry Nov 3, 2016
4ab1e25
Merge pull request #317 from wbadry/patch-1
soundanalogous Nov 3, 2016
3c7aa05
Update FirmataParser to support older compilers
zfields Nov 7, 2016
d38adba
Split marshalling functionality into new lib
zfields Nov 7, 2016
5668cfc
Update FirmataClass to use FirmataMarshaller
zfields Nov 7, 2016
2c24de7
Merge pull request #319 from zfields/marshal
soundanalogous Nov 7, 2016
c78d0e2
Merge pull request #323 from zfields/parserFix
soundanalogous Nov 7, 2016
94d007a
Compiler optimizations for new classes
zfields Nov 9, 2016
62e39c4
Merge pull request #327 from zfields/opt
soundanalogous Nov 12, 2016
6463281
Abstract FirmataParser memory allocation scheme
zfields Nov 16, 2016
0eb25f2
Merge pull request #332 from zfields/memory
soundanalogous Nov 21, 2016
bebfe5d
Add cast for compatibility with the next version of CurieBLE
sandeepmistry Dec 2, 2016
999f95f
Add support for Arduino MKRZero
sandeepmistry Dec 14, 2016
ae028fb
Merge pull request #337 from sandeepmistry/mkrzero
soundanalogous Dec 14, 2016
74df903
Add FirmataMarshaller::sendCapabilityQuery
zfields Nov 12, 2016
34ecce3
Support Firmata's core functionality
zfields Feb 2, 2017
29b4399
Address code review comments/concerns
zfields Feb 7, 2017
2bd457a
Merge pull request #345 from zfields/core
soundanalogous Feb 22, 2017
1819548
namespace firmata
zfields Feb 24, 2017
6004516
Remove redundant naming
zfields Feb 25, 2017
3cd149c
Unify sysex payload naming to DATA
zfields Feb 26, 2017
bf3f08f
Merge pull request #348 from zfields/namespace
soundanalogous Feb 26, 2017
7165b6a
sendPinStateQuery
zfields Feb 24, 2017
2e09889
setSamplingInterval
zfields Feb 26, 2017
d0bef9e
sendExtendedAnalog
zfields Feb 26, 2017
fa5b3d6
Address bug caught code review
zfields Feb 26, 2017
9433b27
Add system calls to Marshaller
zfields Feb 27, 2017
44e9026
Merge pull request #350 from zfields/mp_complete
soundanalogous Feb 28, 2017
947784f
Merge pull request #335 from sandeepmistry/curie-ble-v2
soundanalogous Mar 2, 2017
168a0c0
prepare release and bump bugfix version
soundanalogous Mar 7, 2017
fd76083
firmware callbacks
zfields Mar 13, 2017
0d9e533
Merge pull request #359 from zfields/firmware
soundanalogous Mar 14, 2017
d96a110
Add support for Arduino Primo board
Mar 16, 2017
260f127
Merge pull request #360 from chiararuggeri/ArduinoPrimo
soundanalogous Mar 16, 2017
eb5e7cd
Improve decoding algorithm
zfields Mar 16, 2017
8f83459
Fix bug #363 - string encoding
zfields Mar 18, 2017
f18eb75
Merge pull request #364 from zfields/bug
soundanalogous Mar 18, 2017
f1bd40f
add tests for sending and receiving strings
soundanalogous Mar 18, 2017
f1b521e
Merge pull request #365 from firmata/string-parser-test
soundanalogous Mar 18, 2017
f13a61b
bugfix release
soundanalogous Mar 18, 2017
182673a
Adapt markdown
frederic34 Apr 9, 2017
4a13241
Adapt markdown Content table
frederic34 Apr 9, 2017
4cfb2bc
Adapt markdown Content table
frederic34 Apr 9, 2017
b112c41
Merge pull request #368 from frederic34/markdown
soundanalogous Apr 10, 2017
c63a34e
Fix broken Markdown headings
bryant1410 Apr 18, 2017
de495a8
Merge pull request #369 from bryant1410/master
soundanalogous Apr 18, 2017
7507bb9
Add support for Arduino MKRFox1200
sandeepmistry Apr 19, 2017
d4a9ba9
MKRZero, MKR1000, MKRFox1200: remove !IS_PIN_SERIAL check in IS_PIN_D…
sandeepmistry Apr 19, 2017
ecfea68
Merge pull request #370 from sandeepmistry/mkrfox1200
soundanalogous Apr 19, 2017
138a39f
Add support for STM32 MCU based boards
fpistm Aug 1, 2017
fd6d2f6
Merge pull request #378 from fpistm/arduino_core_stm32
soundanalogous Aug 6, 2017
d1848c1
added server mode
MJPees Jul 9, 2017
b7af0a4
Merge pull request #375 from MJPees/master
soundanalogous Aug 8, 2017
0651617
Improve StandardFirmataEthernet logging
soundanalogous Aug 14, 2017
972bcce
Merge pull request #380 from firmata/ethernet-logging
soundanalogous Aug 14, 2017
ac32d18
add Adafruit nrf52 boards
hathach Aug 15, 2017
78d340f
Merge pull request #381 from hathach/adafruit-nrf52-boards
soundanalogous Aug 15, 2017
4fce1f3
Fix I2C config parameter interpretation
zfields Aug 18, 2017
e862c12
Merge pull request #383 from firmata/i2c_config
soundanalogous Aug 19, 2017
a939ca1
bugfix release
soundanalogous Aug 19, 2017
defa0ea
Add support for Arduino MKR WAN 1300 and MKR GSM 1400
sandeepmistry Dec 1, 2017
e0594d4
[STM32] Avoid using non standard constant
fpistm Jan 29, 2018
e86d0fb
Merge pull request #390 from fpistm/generic_constant
soundanalogous Jan 29, 2018
73a7363
update link to list of host software packages
soundanalogous Mar 3, 2018
a1a3067
update firmata.js url
soundanalogous Mar 3, 2018
e3a2932
Moved configuration of BLE connection and flush intervals to bleConfig.h
cstawarz Mar 19, 2018
c2e8da3
Added support for the Adafruit Feather M0 Bluefruit LE (and potential…
cstawarz Mar 19, 2018
5b8b9f0
Restored use of setter methods for BLE configuration
cstawarz Apr 4, 2018
00587f8
extend number of supported hardware serial ports to 6
petrosagg Apr 13, 2018
47fa25d
boards: fix pin mapping for Teensy 3.5 and 3.6
petrosagg Apr 13, 2018
240e564
Merge pull request #393 from cstawarz/bluefruit_le_spi
soundanalogous Apr 15, 2018
c669cc3
boards: update IS_PIN_SERIAL for Teensy 3.5 & 3.6
petrosagg Apr 15, 2018
3028ba8
Merge pull request #385 from sandeepmistry/mkrwan1300-mkrgsm1400
soundanalogous Apr 15, 2018
f863f17
Merge pull request #395 from resin-os/teensy-3.6-uart
soundanalogous Apr 15, 2018
d78cd6c
change last updated date
soundanalogous Apr 15, 2018
8cbe99b
bump bugfix version
soundanalogous Apr 15, 2018
f9d9ec4
Add Pharo support
SergeStinckwich May 11, 2018
74980b9
Merge pull request #397 from SergeStinckwich/patch-1
soundanalogous May 12, 2018
b1428e2
Use a single tab field separator in keywords.txt
per1234 Jul 15, 2018
cb78078
Merge pull request #401 from per1234/keywords_txt-multiple-tabs
soundanalogous Jul 15, 2018
3d78638
Remove invalid reference link from keywords.txt
per1234 Sep 9, 2018
ecfcd86
Merge pull request #405 from per1234/invalid-reference_link
soundanalogous Sep 12, 2018
f3fef2b
Support for Sanguino/Melzi, e.g. Creality Ender-3
Oct 30, 2018
521bdc9
Add support for UNO WiFi Rev2 (ATMega4809)
facchinm Oct 30, 2018
aabe980
Merge pull request #408 from facchinm/atmega4809
soundanalogous Nov 1, 2018
533c89c
Merge pull request #409 from brandstaetter/Sanguino_ATmega1284P
soundanalogous Nov 1, 2018
f9c978d
update TOTAL_PINS for nrf52840 (64 pins max)
hathach Nov 8, 2018
2ad7d26
Merge pull request #410 from hathach/master
soundanalogous Nov 9, 2018
b28dd5d
Add support for Arduino MKR WiFi 1010
gdsports Apr 4, 2019
90bc51a
Merge pull request #418 from gdsports/mkr1010
soundanalogous Apr 5, 2019
f22fe54
Adjusted Bluefruit LE connection intervals for better compatibility w…
cstawarz Apr 24, 2019
f30c3d1
Merge pull request #419 from cstawarz/bluefruit_le_update
soundanalogous Apr 25, 2019
ad2fd4f
Added a condition that adds the SoftwareSerial library for the ESP8266.
daftfox Apr 27, 2019
95782e0
Merge pull request #420 from daftfox/feature/add-support-for-esp8266
soundanalogous Apr 27, 2019
5f21157
Set Bluefruit LE advertising interval
cstawarz May 3, 2019
9868fbf
Merge pull request #422 from cstawarz/ble_advertising_interval
soundanalogous May 18, 2019
3f417c1
Set up API docs using Doxygen
mexchip Oct 10, 2019
ce166eb
Merge pull request #428 from mexchip/doxygen-docs
soundanalogous Oct 12, 2019
bdc2892
Update readme.md
soundanalogous Oct 12, 2019
663454a
Add support for SPRESENSE board
baggio63446333 Oct 20, 2019
1ccb2c0
Merge pull request #431 from baggio63446333/master
soundanalogous Oct 20, 2019
a142327
Fix build issue with arm none eabi gcc v9.2.1
fpistm Dec 9, 2019
4650504
Merge pull request #438 from fpistm/friend_declaration
soundanalogous Dec 15, 2019
4d0742f
[STM32] Define VERSION_BLINK_PIN only if LED_BUILTIN is defined
fpistm Dec 3, 2019
5d37416
[STM32] Update analog macro
fpistm Dec 3, 2019
0b52369
Merge pull request #440 from fpistm/STM32_Update
soundanalogous Dec 20, 2019
b102e74
[STM32] Fix version checking
fpistm Jan 20, 2020
9caa095
Merge pull request #443 from fpistm/stm32fix
soundanalogous Jan 20, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Split marshalling functionality into new lib
  • Loading branch information
zfields committed Nov 7, 2016
commit d38adba3c8ed41864077297bff2f487fb91bd482
281 changes: 281 additions & 0 deletions FirmataConstants.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,281 @@
/*
Firmata.h - Firmata library v2.5.4 - 2016-10-23
Copyright (c) 2006-2008 Hans-Christoph Steiner. All rights reserved.
Copyright (C) 2009-2016 Jeff Hoefs. All rights reserved.

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

See file LICENSE.txt for further informations on licensing terms.
*/

#ifndef FirmataConstants_h
#define FirmataConstants_h

/* Version numbers for the Firmata library.
* The firmware version will not always equal the protocol version going forward.
* Query using the REPORT_FIRMWARE message.
*/
#define FIRMATA_FIRMWARE_MAJOR_VERSION 2
#define FIRMATA_FIRMWARE_MINOR_VERSION 5
#define FIRMATA_FIRMWARE_BUGFIX_VERSION 4

/* Version numbers for the protocol. The protocol is still changing, so these
* version numbers are important.
* Query using the REPORT_VERSION message.
*/
#define FIRMATA_PROTOCOL_MAJOR_VERSION 2 // for non-compatible changes
#define FIRMATA_PROTOCOL_MINOR_VERSION 5 // for backwards compatible changes
#define FIRMATA_PROTOCOL_BUGFIX_VERSION 1 // for bugfix releases

#ifdef MAX_DATA_BYTES
#undef MAX_DATA_BYTES
#endif
#define MAX_DATA_BYTES 64 // max number of data bytes in incoming messages

// message command bytes (128-255/0x80-0xFF)

#ifdef DIGITAL_MESSAGE
#undef DIGITAL_MESSAGE
#endif
#define DIGITAL_MESSAGE 0x90 // send data for a digital port (collection of 8 pins)

#ifdef ANALOG_MESSAGE
#undef ANALOG_MESSAGE
#endif
#define ANALOG_MESSAGE 0xE0 // send data for an analog pin (or PWM)

#ifdef REPORT_ANALOG
#undef REPORT_ANALOG
#endif
#define REPORT_ANALOG 0xC0 // enable analog input by pin #

#ifdef REPORT_DIGITAL
#undef REPORT_DIGITAL
#endif
#define REPORT_DIGITAL 0xD0 // enable digital input by port pair

//

#ifdef SET_PIN_MODE
#undef SET_PIN_MODE
#endif
#define SET_PIN_MODE 0xF4 // set a pin to INPUT/OUTPUT/PWM/etc

#ifdef SET_DIGITAL_PIN_VALUE
#undef SET_DIGITAL_PIN_VALUE
#endif
#define SET_DIGITAL_PIN_VALUE 0xF5 // set value of an individual digital pin

//

#ifdef REPORT_VERSION
#undef REPORT_VERSION
#endif
#define REPORT_VERSION 0xF9 // report protocol version

#ifdef SYSTEM_RESET
#undef SYSTEM_RESET
#endif
#define SYSTEM_RESET 0xFF // reset from MIDI

//

#ifdef START_SYSEX
#undef START_SYSEX
#endif
#define START_SYSEX 0xF0 // start a MIDI Sysex message

#ifdef END_SYSEX
#undef END_SYSEX
#endif
#define END_SYSEX 0xF7 // end a MIDI Sysex message

// extended command set using sysex (0-127/0x00-0x7F)
/* 0x00-0x0F reserved for user-defined commands */

#ifdef SERIAL_MESSAGE
#undef SERIAL_MESSAGE
#endif
#define SERIAL_MESSAGE 0x60 // communicate with serial devices, including other boards

#ifdef ENCODER_DATA
#undef ENCODER_DATA
#endif
#define ENCODER_DATA 0x61 // reply with encoders current positions

#ifdef SERVO_CONFIG
#undef SERVO_CONFIG
#endif
#define SERVO_CONFIG 0x70 // set max angle, minPulse, maxPulse, freq

#ifdef STRING_DATA
#undef STRING_DATA
#endif
#define STRING_DATA 0x71 // a string message with 14-bits per char

#ifdef STEPPER_DATA
#undef STEPPER_DATA
#endif
#define STEPPER_DATA 0x72 // control a stepper motor

#ifdef ONEWIRE_DATA
#undef ONEWIRE_DATA
#endif
#define ONEWIRE_DATA 0x73 // send an OneWire read/write/reset/select/skip/search request

#ifdef SHIFT_DATA
#undef SHIFT_DATA
#endif
#define SHIFT_DATA 0x75 // a bitstream to/from a shift register

#ifdef I2C_REQUEST
#undef I2C_REQUEST
#endif
#define I2C_REQUEST 0x76 // send an I2C read/write request

#ifdef I2C_REPLY
#undef I2C_REPLY
#endif
#define I2C_REPLY 0x77 // a reply to an I2C read request

#ifdef I2C_CONFIG
#undef I2C_CONFIG
#endif
#define I2C_CONFIG 0x78 // config I2C settings such as delay times and power pins

#ifdef REPORT_FIRMWARE
#undef REPORT_FIRMWARE
#endif
#define REPORT_FIRMWARE 0x79 // report name and version of the firmware

#ifdef EXTENDED_ANALOG
#undef EXTENDED_ANALOG
#endif
#define EXTENDED_ANALOG 0x6F // analog write (PWM, Servo, etc) to any pin

#ifdef PIN_STATE_QUERY
#undef PIN_STATE_QUERY
#endif
#define PIN_STATE_QUERY 0x6D // ask for a pin's current mode and value

#ifdef PIN_STATE_RESPONSE
#undef PIN_STATE_RESPONSE
#endif
#define PIN_STATE_RESPONSE 0x6E // reply with pin's current mode and value

#ifdef CAPABILITY_QUERY
#undef CAPABILITY_QUERY
#endif
#define CAPABILITY_QUERY 0x6B // ask for supported modes and resolution of all pins

#ifdef CAPABILITY_RESPONSE
#undef CAPABILITY_RESPONSE
#endif
#define CAPABILITY_RESPONSE 0x6C // reply with supported modes and resolution

#ifdef ANALOG_MAPPING_QUERY
#undef ANALOG_MAPPING_QUERY
#endif
#define ANALOG_MAPPING_QUERY 0x69 // ask for mapping of analog to pin numbers

#ifdef ANALOG_MAPPING_RESPONSE
#undef ANALOG_MAPPING_RESPONSE
#endif
#define ANALOG_MAPPING_RESPONSE 0x6A // reply with mapping info

#ifdef SAMPLING_INTERVAL
#undef SAMPLING_INTERVAL
#endif
#define SAMPLING_INTERVAL 0x7A // set the poll rate of the main loop

#ifdef SCHEDULER_DATA
#undef SCHEDULER_DATA
#endif
#define SCHEDULER_DATA 0x7B // send a createtask/deletetask/addtotask/schedule/querytasks/querytask request to the scheduler

#ifdef SYSEX_NON_REALTIME
#undef SYSEX_NON_REALTIME
#endif
#define SYSEX_NON_REALTIME 0x7E // MIDI Reserved for non-realtime messages

#ifdef SYSEX_REALTIME
#undef SYSEX_REALTIME
#endif
#define SYSEX_REALTIME 0x7F // MIDI Reserved for realtime messages

// pin modes

#ifdef PIN_MODE_INPUT
#undef PIN_MODE_INPUT
#endif
#define PIN_MODE_INPUT 0x00 // same as INPUT defined in Arduino.h

#ifdef PIN_MODE_OUTPUT
#undef PIN_MODE_OUTPUT
#endif
#define PIN_MODE_OUTPUT 0x01 // same as OUTPUT defined in Arduino.h

#ifdef PIN_MODE_ANALOG
#undef PIN_MODE_ANALOG
#endif
#define PIN_MODE_ANALOG 0x02 // analog pin in analogInput mode

#ifdef PIN_MODE_PWM
#undef PIN_MODE_PWM
#endif
#define PIN_MODE_PWM 0x03 // digital pin in PWM output mode

#ifdef PIN_MODE_SERVO
#undef PIN_MODE_SERVO
#endif
#define PIN_MODE_SERVO 0x04 // digital pin in Servo output mode

#ifdef PIN_MODE_SHIFT
#undef PIN_MODE_SHIFT
#endif
#define PIN_MODE_SHIFT 0x05 // shiftIn/shiftOut mode

#ifdef PIN_MODE_I2C
#undef PIN_MODE_I2C
#endif
#define PIN_MODE_I2C 0x06 // pin included in I2C setup

#ifdef PIN_MODE_ONEWIRE
#undef PIN_MODE_ONEWIRE
#endif
#define PIN_MODE_ONEWIRE 0x07 // pin configured for 1-wire

#ifdef PIN_MODE_STEPPER
#undef PIN_MODE_STEPPER
#endif
#define PIN_MODE_STEPPER 0x08 // pin configured for stepper motor

#ifdef PIN_MODE_ENCODER
#undef PIN_MODE_ENCODER
#endif
#define PIN_MODE_ENCODER 0x09 // pin configured for rotary encoders

#ifdef PIN_MODE_SERIAL
#undef PIN_MODE_SERIAL
#endif
#define PIN_MODE_SERIAL 0x0A // pin configured for serial communication

#ifdef PIN_MODE_PULLUP
#undef PIN_MODE_PULLUP
#endif
#define PIN_MODE_PULLUP 0x0B // enable internal pull-up resistor for pin

#ifdef PIN_MODE_IGNORE
#undef PIN_MODE_IGNORE
#endif
#define PIN_MODE_IGNORE 0x7F // pin configured to be ignored by digitalWrite and capabilityResponse

#ifdef TOTAL_PIN_MODES
#undef TOTAL_PIN_MODES
#endif
#define TOTAL_PIN_MODES 13

#endif // FirmataConstants_h
Loading