Giter Site home page Giter Site logo

firmata-builder's People

Contributors

ethanjli avatar gitter-badger avatar soundanalogous avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

firmata-builder's Issues

Update to use new ConfigurableFirmata library

The configurable branch was copied out of firmata/arduino to it's own repo. firmata-builder and associated instructions needs to be updated to reference the new ConfigurableFirmata repo. It also needs to be updated to not include 'utility' in the path.

EncoderFirmata was changed to 'FirmataEncoder' and now must be downloaded separately along with the Encoder library. These should be listed as dependencies in firmata-builder.

Update to configurable firmata 3.2

Hello can you please update the builder to version 3.2? I cant compile this for a mega2560 with ethernet shield and one wire sensors.
and I'm too stupid to write myself

Figure out scalable way to handle feature data

feature.js is collection of data for all of the current Firmata features for the configurable firmata architecture. Example of "features" are DigitalInput, DigitalOutput, AnalogInput, I2C, OneWire, etc. This collection will grow and needs to be easy for Firmata feature developers to add data for their new features to. What is the best way to accomplish this? A flat file as it currently is? A separate module for each feature (or a file for core features and separate file for each contributed feature (likely device-specific features), a database or something else?

The collection of features will also be used to populate the firmata builder UI (a selection of features and options that the users chooses to generate the Arduino .ino file).

Unable to install ConfigurableFirmata for esp8266 board

I bought this ESP8266 board from Amazon: https://www.amazon.com/HiLetgo-Internet-Development-Wireless-Micropython/dp/B010O1G1ES/ref=sr_1_1?ie=UTF8&qid=1517445512&sr=8-1&keywords=esp8266+wifi

I haven't been able to install Configurable Firmata which I built on http://firmatabuilder.com/. It fails with a compilation error:
Arduino: 1.8.5 (Mac OS X), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, 4M (3M SPIFFS), v2 Prebuilt (MSS=536), Disabled, None, 921600"

In file included from /Users/verrol/Downloads/esp8266-firmata/esp8266-firmata.ino:20:0:
/Users/auser/Documents/Arduino/libraries/ConfigurableFirmata/src/ConfigurableFirmata.h:229:21: error: conflicting declaration 'FirmataClass Firmata'
extern FirmataClass Firmata;
^
In file included from /Users/auer/Downloads/esp8266-firmata/esp8266-firmata.ino:4:0:
/Users/auer/Documents/Arduino/libraries/Firmata/Firmata.h:168:30: error: 'Firmata' has a previous declaration as 'firmata::FirmataClass Firmata'
extern firmata::FirmataClass Firmata;
^
Multiple libraries were found for "FirmataDefines.h"
Used: /Users/auser/Documents/Arduino/libraries/Firmata
Not used: /private/var/folders/2t/sn0z41mx4p3fhpmh3rxf1s940000gn/T/AppTranslocation/3BA83EA0-0939-441D-B829-DF94CBBD3B88/d/Arduino.app/Contents/Java/libraries/Firmata
Not used: /private/var/folders/2t/sn0z41mx4p3fhpmh3rxf1s940000gn/T/AppTranslocation/3BA83EA0-0939-441D-B829-DF94CBBD3B88/d/Arduino.app/Contents/Java/libraries/Firmata
Not used: /private/var/folders/2t/sn0z41mx4p3fhpmh3rxf1s940000gn/T/AppTranslocation/3BA83EA0-0939-441D-B829-DF94CBBD3B88/d/Arduino.app/Contents/Java/libraries/Firmata
Not used: /private/var/folders/2t/sn0z41mx4p3fhpmh3rxf1s940000gn/T/AppTranslocation/3BA83EA0-0939-441D-B829-DF94CBBD3B88/d/Arduino.app/Contents/Java/libraries/Firmata
Multiple libraries were found for "Servo.h"
Used: /Users/auser/Library/Arduino15/packages/esp8266/hardware/esp8266/2.4.0/libraries/Servo
Not used: /private/var/folders/2t/sn0z41mx4p3fhpmh3rxf1s940000gn/T/AppTranslocation/3BA83EA0-0939-441D-B829-DF94CBBD3B88/d/Arduino.app/Contents/Java/libraries/Servo
exit status 1
Error compiling for board NodeMCU 1.0 (ESP-12E Module).

Any help will be greatly appreciated.

Add ethernet connection type

Currently ConfigurableFirmata supports serial or ethernet connection types. There are also two different ethernet implementation depending on the driver so both should be supported as options.

Compilation error: AnalogWrite.h: No such file or directory

Not sure this project is still supported. I discovered ConfigurableFirmata from Gobots.io.

I attempted to use the Firmata Builder today with the following configuration:

  • ESP8266 device
  • WIFI with WPA
  • TCP Client
  • DigitalInputFirmata
  • DigitalOutputFirmata
  • AnalogInputFirmata
  • AnalogOutputFirmata

I have installed version 3.2.0 of the ConfigurableFirmata library.

Here is the generated Sketch:

/*
 * firmata_simple.ino generated by FirmataBuilder
 * Wed Dec 13 2023 19:59:07 GMT-0500 (EST)
 */

#include <ConfigurableFirmata.h>

// uncomment to enable debugging over Serial (9600 baud)
//#define SERIAL_DEBUG
#include "utility/firmataDebug.h"

#include <ESP8266WiFi.h>
#include "utility/WiFiClientStream.h"
#include "utility/WiFiServerStream.h"
#include "secrets.h"

#define WIFI_MAX_CONN_ATTEMPTS 20

#if defined(ESP8266) && defined(SERIAL_DEBUG)
#define IS_IGNORE_PIN(p)  ((p) == 1)
#endif

// IP address of remote server
#define REMOTE_SERVER_IP 10, 0, 0, 53

#define NETWORK_PORT 3030

char ssid[] = SECRET_SSID;
char wpa_passphrase[] = SECRET_PASS;

WiFiClientStream stream(IPAddress(REMOTE_SERVER_IP), NETWORK_PORT);

int connectionAttempts = 0;
bool streamConnected = false;

#include <DigitalInputFirmata.h>
DigitalInputFirmata digitalInput;

#include <DigitalOutputFirmata.h>
DigitalOutputFirmata digitalOutput;

#include <AnalogInputFirmata.h>
AnalogInputFirmata analogInput;

#include <AnalogOutputFirmata.h>
AnalogOutputFirmata analogOutput;

#include <Wire.h>
#include <I2CFirmata.h>
I2CFirmata i2c;

#include <FirmataExt.h>
FirmataExt firmataExt;

#include <AnalogWrite.h>

#include <FirmataReporting.h>
FirmataReporting reporting;

void systemResetCallback()
{
  for (byte i = 0; i < TOTAL_PINS; i++) {
    if (IS_PIN_ANALOG(i)) {
      Firmata.setPinMode(i, ANALOG);
    } else if (IS_PIN_DIGITAL(i)) {
      Firmata.setPinMode(i, OUTPUT);
    }
  }
  firmataExt.reset();
}

void hostConnectionCallback(byte state)
{
  switch (state) {
    case HOST_CONNECTION_CONNECTED:
      DEBUG_PRINTLN("TCP connection established");
      break;
    case HOST_CONNECTION_DISCONNECTED:
      DEBUG_PRINTLN("TCP connection disconnected");
      break;
  }
}

void printWiFiStatus()
{
  if (WiFi.status() != WL_CONNECTED) {
    DEBUG_PRINT("WiFi connection failed. Status value: ");
    DEBUG_PRINTLN(WiFi.status());
  } else {
    DEBUG_PRINTLN("Board configured as a TCP client");
    DEBUG_PRINT("Remote TCP server address: ");
    DEBUG_PRINTLN("10, 0, 0, 53");

    DEBUG_PRINT("SSID: ");
    DEBUG_PRINTLN(WiFi.SSID());

    DEBUG_PRINT("Local IP Address: ");
    IPAddress ip = WiFi.localIP();
    DEBUG_PRINTLN(ip);

    DEBUG_PRINT("Signal strength (RSSI): ");
    long rssi = WiFi.RSSI();
    DEBUG_PRINT(rssi);
    DEBUG_PRINTLN(" dBm");
  }
}

void ignorePins()
{
#ifdef IS_IGNORE_PIN
  // ignore pins used for WiFi controller or Firmata will overwrite their modes
  for (byte i = 0; i < TOTAL_PINS; i++) {
    if (IS_IGNORE_PIN(i)) {
      Firmata.setPinMode(i, PIN_MODE_IGNORE);
    }
  }
#endif
}

void initTransport()
{
  // IMPORTANT: if SERIAL_DEBUG is enabled, program execution will stop
  // at DEBUG_BEGIN until a Serial conneciton is established
  DEBUG_BEGIN(9600);
  DEBUG_PRINTLN("Attempting a WiFi connection using the ESP8266 WiFi library.");

  DEBUG_PRINTLN("IP will be requested from DHCP ...");

  stream.attach(hostConnectionCallback);

  DEBUG_PRINT("Attempting to connect to WPA SSID: ");
  DEBUG_PRINTLN(ssid);
  stream.begin(ssid, wpa_passphrase);

  DEBUG_PRINTLN("WiFi setup done.");

  while(WiFi.status() != WL_CONNECTED && ++connectionAttempts <= WIFI_MAX_CONN_ATTEMPTS) {
    delay(500);
    DEBUG_PRINT(".");
  }

  printWiFiStatus();

  ignorePins();

  Firmata.begin(stream);
}

void initFirmata()
{
  Firmata.setFirmwareVersion(FIRMATA_FIRMWARE_MAJOR_VERSION, FIRMATA_FIRMWARE_MINOR_VERSION);

  firmataExt.addFeature(digitalInput);
  firmataExt.addFeature(digitalOutput);
  firmataExt.addFeature(analogInput);
  firmataExt.addFeature(analogOutput);
  firmataExt.addFeature(i2c);
  firmataExt.addFeature(reporting);

  Firmata.attach(SYSTEM_RESET, systemResetCallback);
}

void setup()
{
  initFirmata();

  initTransport();

  Firmata.parse(SYSTEM_RESET);
}

void loop()
{
  digitalInput.report();

  while(Firmata.available()) {
    Firmata.processInput();
  }

  if (reporting.elapsed()) {
    analogInput.report();
    i2c.report();
  }

  stream.maintain();
}
FQBN: esp8266:esp8266:generic
Using board 'generic' from platform in folder: /Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2
Using core 'esp8266' from platform in folder: /Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2

/Users/user/Library/Arduino15/packages/esp8266/tools/python3/3.7.2-post1/python3 -I /Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/mkbuildoptglobals.py "/Applications/Arduino IDE.app/Contents/Resources/app/lib/backend/resources" 10607 /private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846 /private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/core/build.opt /Users/user/src/personal/OmnicronHomelinkHub/firmata/firmata_simple/firmata_simple.ino.globals.h /Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266/CommonHFile.h
default_encoding:       UTF-8
Assume aggressive 'core.a' caching enabled.
Note: optional global include file '/Users/user/src/personal/OmnicronHomelinkHub/firmata/firmata_simple/firmata_simple.ino.globals.h' does not exist.
  Read more at https://arduino-esp8266.readthedocs.io/en/latest/faq/a06-global-build-options.html
Detecting libraries used...
/Users/user/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/core/build.opt -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/core -c @/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10607 -DARDUINO_ESP8266_GENERIC -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_GENERIC" -DARDUINO_BOARD_ID="generic" -DLED_BUILTIN=2 -DFLASHMODE_DOUT -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/generic /private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/sketch/firmata_simple.ino.cpp -o /dev/null
Alternatives for ConfigurableFirmata.h: [[email protected]]
ResolveLibrary(ConfigurableFirmata.h)
  -> candidates: [[email protected]]
/Users/user/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/core/build.opt -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/core -c @/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10607 -DARDUINO_ESP8266_GENERIC -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_GENERIC" -DARDUINO_BOARD_ID="generic" -DLED_BUILTIN=2 -DFLASHMODE_DOUT -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/generic -I/Users/user/Documents/Arduino/libraries/ConfigurableFirmata/src /private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/sketch/firmata_simple.ino.cpp -o /dev/null
Alternatives for ESP8266WiFi.h: [[email protected]]
ResolveLibrary(ESP8266WiFi.h)
  -> candidates: [[email protected]]
/Users/user/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/core/build.opt -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/core -c @/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10607 -DARDUINO_ESP8266_GENERIC -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_GENERIC" -DARDUINO_BOARD_ID="generic" -DLED_BUILTIN=2 -DFLASHMODE_DOUT -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/generic -I/Users/user/Documents/Arduino/libraries/ConfigurableFirmata/src -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src /private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/sketch/firmata_simple.ino.cpp -o /dev/null
Alternatives for Wire.h: [[email protected]]
ResolveLibrary(Wire.h)
  -> candidates: [[email protected]]
/Users/user/Library/Arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/core/build.opt -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/core -c @/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10607 -DARDUINO_ESP8266_GENERIC -DARDUINO_ARCH_ESP8266 -DARDUINO_BOARD="ESP8266_GENERIC" -DARDUINO_BOARD_ID="generic" -DLED_BUILTIN=2 -DFLASHMODE_DOUT -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/generic -I/Users/user/Documents/Arduino/libraries/ConfigurableFirmata/src -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Wire /private/var/folders/ft/c5x1nn7j5qb5g8w17nd779r80000gn/T/arduino/sketches/A6D9F836FCC3B2090B3261FE9B6B2846/sketch/firmata_simple.ino.cpp -o /dev/null
/Users/user/src/personal/OmnicronHomelinkHub/firmata/firmata_simple/firmata_simple.ino:54:10: fatal error: AnalogWrite.h: No such file or directory
   54 | #include <AnalogWrite.h>
      |          ^~~~~~~~~~~~~~~
compilation terminated.

Alternatives for AnalogWrite.h: []
ResolveLibrary(AnalogWrite.h)
  -> candidates: []
Using library ConfigurableFirmata at version 3.2.0 in folder: /Users/user/Documents/Arduino/libraries/ConfigurableFirmata 
Using library ESP8266WiFi at version 1.0 in folder: /Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi 
Using library Wire at version 1.0 in folder: /Users/user/Library/Arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Wire 
exit status 1

Compilation error: AnalogWrite.h: No such file or directory

Let me know if you need any additional information. Excited to write some Go code for an ESP8266 device!

Add board or architecture selection

User should be able to select either board or architecture. This will generate a Firmata sketch that properly supports the selected board. For many boards this would not make any specific changes, however for ATmega32u4 boards the serial port would be handled properly. It would be helpful in knowing if the selected board has enough memory to support all of the selected features and if not, warn the user. Also if conflicting features are selected (use the same HW timer for example) then the user could be warned of this as well.

An example of a board would be Leonardo, Uno, etc. This will be a long list.

An example of architecture would be ATmega32u4, ATmega328p, etc. This would be a shorter list, but fewer users may be aware of what microcontroller their board actually uses.

Perhaps the user facing list is a list of all supported boards, but internally compare architectures.

ENC28J60 boards are not guaranteed to work

I have an ethernet shield that uses an ENC28J60 controller. However I am not able to get it to work. I'm not sure if it's an issue in the particular shield (suspect) or in the UIPEthernet library.

If anyone has any luck with an ENC28J60-based shield or board, please report. If it turns out there are no solutions I will remove ENC28J60 from the controller selections.

Determine how to best structure this project

This repo is for the firmata-builder core functionality. Any UI (web or cli) will likely be a separate repo. How to structure this project as a standalone module but still provide an example or two?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.