Skip to content

janelia-arduino/SerialInterface

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SerialInterface

Library Information

Name
SerialInterface
Version
2.0.1
License
BSD
URL
https://github.com/janelia-arduino/SerialInterface
Author
Peter Polidoro
Email
peter@polidoro.io

Description

Modular device serial interface library.

API NAMES

{
  "id": "getAPI",
  "result": {
    "ancestors": [
      "ModularServer",
      "ModularDeviceBase"
    ],
    "firmware": [
      {
        "name": "SerialInterface",
        "version": "2.0.1"
      }
    ],
    "verbosity": "NAMES",
    "functions": [
      "getSerialStreamCount",
      "getSerialStreamIndex",
      "setSerialStreamIndex",
      "write",
      "writeRead"
    ],
    "parameters": [
      "serial_stream_index",
      "data"
    ],
    "properties": [
      "bauds",
      "formats",
      "writeLineEndings",
      "readLineEndings",
      "timeouts"
    ]
  }
}

Ancestors

ModularServer

ModularDeviceBase

Clients

Devices

modular_device_base

rs232_interface

API GENERAL

API GENERAL

More Detailed Modular Device Information

modular-devices

Host Computer Setup

Download this repository

https://github.com/janelia-arduino/SerialInterface.git

git clone https://github.com/janelia-arduino/SerialInterface.git

PlatformIO

Install PlatformIO Core

https://docs.platformio.org/en/latest/core/installation/index.html

python3 -m venv .venv
source .venv/bin/activate
pip install pip --upgrade
pip install platformio
pio --version

99-platformio-udev.rules

Linux users have to install udev rules for PlatformIO supported boards/devices.

Download udev rules file to /etc/udev/rules.d

curl -fsSL https://raw.githubusercontent.com/platformio/platformio-core/develop/platformio/assets/system/99-platformio-udev.rules | sudo tee /etc/udev/rules.d/99-platformio-udev.rules

Restart udev management tool

sudo service udev restart

Add user to groups

sudo usermod -a -G dialout $USER && sudo usermod -a -G plugdev $USER

Remove modemmanager

sudo apt-get purge --auto-remove modemmanager

After setting up rules and groups

You will need to log out and log back in again (or reboot) for the user group changes to take effect.

After this file is installed, physically unplug and reconnect your board.

Compile the firmware

Gnu/Linux

make firmware

Other

pio run -e teensy31

Upload the firmware

Gnu/Linux

make upload

Other

pio run -e teensy31 -t upload

Serial Terminal Monitor

Gnu/Linux

make monitor

Other

pio device monitor --echo --eol=LF

get API in terminal monitor

getAPI NAMES ["SerialInterface"]

Arduino Ide

Download

https://www.arduino.cc/en/software

Additional Boards Manager URLs

File > Preferences

https://www.pjrc.com/teensy/package_teensy_index.json
https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json

Add Board Support Packages

  • Teensy by Paul Stroffregen
  • Raspberry Pi Pico/RP2040 by Earle F Philhower, III

About

Modular device serial interface library.

Resources

License

Stars

Watchers

Forks

Packages

No packages published