Skip to content

ams-OSRAM/OSP_aotop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OSP

Open System Protocol (OSP) on Arduino

Welcome to the landing page of the aolibs (short for Arduino OSP libraries from ams-OSRAM) to be used with the Arduino OSP evaluation kit.

Introduction

OSP or Open System Protocol was developed by ams OSRAM for dynamic lighting, for example in car interiors. OSP is open for everybody and free of license.

An OSP based system consist of an MCU (the "Root MCU") connected to a series of (up to 1000) daisy chained OSP nodes. OSP nodes contain or drive (RGB) LED modules, or implement gateways to other protocols like I2C. The SAID or Stand Alone Intelligent Driver, officially known as AS1163, is an example of an OSP node with external LEDs and an integrated I2C bridge. The E3731i or Intelligent RGB (RGBI) is an example of an OSP node with an integrated red, green and blue LED.

OSP chain

ams OSRAM supplies an evaluation kit demonstrating OSP. This kit is known as the Arduino OSP evaluation kit. With this evaluation kit comes software, which is partitioned over several libraries, the aolibs. Each library is stored in its own GitHub repository. This document is part of one of those repositories/libraries known as aotop. However, aotop is not really a library (with reusable code), but rather a container for top level demo applications (which use the real libraries), and a container for top-level documentation (like this readme and for example training material). The diagram below shows an overview of all aolibs.

aolibs in context

All aolibs (including aotop) are registered as Arduino libraries. Library aotop is registered as an Arduino library which is dependent on all others. Use the Library Manager of the Arduino IDE to search for aotop ("OSP ToplevelSketches aotop"), install it and all others will also be installed.

There is a dedicated Getting started manual for the evaluation kit. It describes what hard and software components are needed (from the evaluation kit and the libraries), and how to turn on the first RGBs. Those who want to bring up their own hardware, we suggest to have a look at aospi_bringup.

Links

This section links to various resources.

  • Open System Protocol website.

  • Open System Protocol application note OSP specification (previous).

  • Landing page for the aolibs (Arduino OSP libraries from ams-OSRAM) on GitHub (this page).

  • The aolibs (on the ams OSRAM GitHub site):

    • aotop (this repo) with Top level sketches;
    • aoapps library with Reusable apps;
    • aoui32 library with UI drivers for OSP32 board;
    • aomw library with Middleware;
    • aocmd library with a Command interpreter;
    • aoosp library with Telegrams;
    • aospi library with a 2-wire SPI driver;
    • aoresult library with Result codes.
  • Related products

    • OSP
      • RGBi E3731i product page (OSP node with built-in RGB LEDs);
      • SAID AS1163 product page (OSP node with drivers for 9 external LEDs);
      • SAID AS1163B product page (OSP node with drivers for 6 external LEDs).
    • LEDs in the EVK
      • Top looker E3323 product page (automotive ambient RGB);
      • Side looker E5515 product page (automotive interior RGB).
    • Sensors in the EVK
      • Temperature sensor AS6212 product page (high accuracy digital I2C sensor);
      • Light sensor SFH5721 product page (ambient light and infrared I2C sensor);
      • Position sensor AS5600 product page (digital magnetic rotary position sensor).
  • Arduino OSP evaluation kit contains several boards, here are the (latest) schematics:

(end of top-level documentation)



(begin of library specific documentation)

OSP ToplevelSketches aotop

Library "OSP ToplevelSketches aotop", usually abbreviated to "aotop", is one of the aolibs; short for Arduino OSP libraries from ams-OSRAM. This suite implements support for chips that use the Open System Protocol, like the AS1163 ("SAID") or the OSIRE E3731i ("RGBi"). The landing page for the aolibs is on GitHub.

Introduction

Library aotop is at the top of the dependency graph. It contains no (library) code; but it serves several other functions.

  • It contains top-level sketches for advanced demos (using the Arduino IDE examples mechanism). See next section for an overview.
  • It is made dependent on all Open System Protocol libraries (aolibs), so installing aotop via the Arduino IDE will install all other libraries as well.
  • It is the "landing" place for the Open System Protocol software, providing global documentation (Getting Started, Training) with links to all related resources.

aotop in context

Examples

The examples in aotop are not examples in the Arduino IDE sense (explaining a feature), rather they are full-fledged (demo) applications. You can find them in the Arduino IDE via File > Examples > OSP ToplevelSketches aotop > ...

  • saidbasic (source)
    This is an official application (centered around the SAIDbasic board). This demo contains 4 apps: scripted animation (from EEPROM), running LED, (country) flags selected by pressing a button, and a dithering demo. It comes with a user manual.

  • osplink (source)
    This is another official application. It allows the PC (with a terminal like the Arduino Serial Monitor) to send and receive OSP telegrams, using serial-over-USB. There is documentation on using the command interpreter. There is also an experimental Python app for PC aocmd/python, that sends commands to the osplink application.

  • evktester (source)
    This application helps in testing the hardware components in the EVK. It requires (human) operator support (via OLED and buttons). A test report is printed to Serial.

  • eepromflasher (source)
    One of the features of the saidbasic application is to play (LED animation) scripts from an EEPROM. There are EEPROMs on the OSP32 board, the SAIDbasic board, and on stand-alone I2C EEPROM sticks. This eepromflasher application allows writing any script (stock or user developed) to any of these EEPROMs. The stock scripts are rainbow, bouncingblock, colormix, and heartbeat.

  • training (source, source, source)
    These are exercises for the training.

API

This library does not contain (reusable library) code, so there is no API.

The only exception is the macro AOTOP_VERSION (in aotop.h), which identifies the version of this "library".

Version history aotop

  • 2025 May 27, 0.4.0

    • Added ref to merged bins.
    • Added links to products used in EVK.
    • Added links to training videos.
  • 2025 May 21, 0.3.0

    • Added evktester.ino.
    • Have prebuilt binaries for saidbasic and evktester.
    • Renamed training slides.
    • Updated training (mostly appendix 2 uniform colors) to match new module aomw_color.
    • Added webflash to the manuals.
    • Documented SAID versions 1.0 and 1.1 (with photos).
    • Several text updates in gettingstarted.md.
    • Added details to SAIDbasic user manual
    • Added reference to aospi_bringup.
    • Switched to latest latest Arduino IDE (2.3.6) and the latest ESP32 board package (3.2.0) - applied a patch to aospi/src/slave.
    • Corrected pptx links to pdf.
    • Textual updates in training 3 (OTP burn).
    • Fixed link in extras/manuals for saidbasic.ino.
  • 2025 March 3, 0.2.0

    • Added schematics of (new versions of) the various boards in the EVK.
    • Improved description of USB settings in getting Started > Debugging.
    • Added training slides.
    • New picture in Getting Started for USB/CMD.
    • Updated link to latest OSP specification.
    • Switched to ESP32 board (compiler) 3.1.1 in Arduino IDE.
    • Switched to Arduino IDE 2.3.4 (debugging supported).
    • Fixed typos in readme.md.
  • 2024 November 29, 0.1.7

    • Version update: ESP32 from 3.0.5 to 3.0.7.
    • Updated OSP system picture.
    • Text corrections, improved images and extra links in readme.md and gettingstarted.md.
  • 2024 November 8, 0.1.6

    • New image for evaluation kit; link added.
    • Added schematic for RGBI strip OSIRE_E3731i_V2.3.pdf.
    • OSP system picture now has two I2C devices.
    • Replaced OSP32 schematics v9 by v10.
    • Now 4 cables in EVK.
    • Updates to readme.md.
    • osplink 1.8 now prints all library versions.
  • 2024 October 25, 0.1.5

    • Replaced OSP system picture with one having also a SAID with I2C.
    • Improved labels of links.
  • 2024 October 24, 0.1.4

    • Added URLs for SAID, SAIDB and Arduino OSP evaluation kit.
    • Getting Started, section Debugging, explains the USB ports in more detail.
  • 2024 October 23, 0.1.3

    • In saidbasic.ino started app before command interpreter.
    • Added debugging section in Getting Started.
  • 2024 October 11, 0.1.2

    • Made library version accessible in code (AOTOP_VERSION) and added to saidbasic.
    • Improved Installation of Getting Started with new and more screenshots.
    • Better comments in eepromflasher.ino and saidbasic.ino.
    • Fixed links to training and OSP specification.
  • 2024 October 8, 0.1.1

    • Updated intro section of getting started (added pictures).
    • Added examples\training[123].ino.
    • Added extras\manuals\ArduinoOSP-Training.pptx.
  • 2024 October 8, 0.1.0

    • Fixed name to Open System Protocol (OSP) on Arduino and aolibs.
    • Moved domain from github.com/ams-OSRAM-Group to github.com/ams-OSRAM.
    • Added user manual (ppt) to saidbasic.ino.
    • Changed eepromflasher.ino to compare SAIDbasic eeprom to rainbow.
    • Adapted to aoosp_exec_resetinit not needing last and loop.
    • Added links in readme.md for all example sketches.
    • Updated ospchain.jpg.
    • Extended gettingstarted.md.
    • Added minimal documentation to top of saidbasic.ino.
    • Corrected link to all GitHub repos from aoxxx to OSP_aoxxx.
    • Remove "oalib" from sentence= in library.properties.
    • Updated readme.md.
    • Arduino name changed from OSP Top level sketches - aotop to OSP ToplevelSketches aotop.
    • license.txt line endings changed from LF to CR+LF.
    • Reorder libs in aocmd_version_extra() in saidbasic.ino.
    • Added extra\schematics\xxx.pdf of all boards in the evaluation kit.
  • 2024 July 2, 0.0.1

    • Initial release candidate.

(end)

About

The landing page for the Open System Protocol (OSP) on Arduino with top-level sketches and documentation.

Topics

Resources

License

Stars

Watchers

Forks