CNMAT Flashback

A look back at some items in our archives.

Archive Browser

Browse CNMAT content by type
Book page

OSC Address Schema

The OSC address schema of micro-OSC is broken down into a number of modules. Not all modules may be present depending on the hardware support and compile-configuration. Some addresses may change in the future--this document will be updated to reflect the current state of the OSC message address schema.

Book page

Status LED

Enables control over on-board status lights.

-----

**/status/0** : Get/set status light state

Some boards have more status lights, which are numbered /0 /1, etc.

Understands "on", "off", 0, 1.

TX: [ /status/0 ]
RX: [ /status/0 ,i 0 ]
TX: [ /status/0 ,s "on" ]
RX: [ /status/0 ,i 1 ]

Book page

Profile

The profiling system is enabled by a compile-time switch.

-----

**/profile/** : Reports timer measurements made over various sections of code.

These messages are reported approximately once per second.

Book page

Device

-----

**/device/id** : Get/set device identification string.

The identification string is an ASCII character sequence, limited to 8 characters in length. It is automatically populated with a random-number on first startup. The device ID is also reported as the "serial number string" in the USB descriptor, but you will need to restart the device for this to be updated.

Book page

EEPROM

The EEPROM module is an experimental module, mainly of interest to developers. It interfaces directly to the EEPROM at the byte level. Presently only the first 64 bytes are in use by micro-OSC, and the current platforms have 256, however more space may be required in the future.

Book page

Terms of Use

The following copyright notice and terms of use apply to the micro-OSC firmware, its source code, and other supporting software distributed by CNMAT:

Copyright © 2008 The Regents of the University of California (Regents). All Rights Reserved.

Book page

OSC over the USB-Serial Transport

# Overview

A serial port is a bidirectional point-to-point communications channel. Open Sound Control is a datagram protocol which means that it requires a packetized transport (UDP is a common example of this). Serial isn't a packetized transport (nor is, for example, TCP).

# The SLIP framing protocol

Book page

USB Descriptor and Device Identification

Here is an overview of the micro-OSC device descriptor.

The VendorID/ProductID used is by permission from Microchip Technology Inc. under a sublicense agreement. This VID/PID may only be used with Microchip products.

Book page

Known Bugs and Possible Issues

- Sometimes the device does not seem to receive commands to toggle the status lights. After resetting uOSC, it works again.
- USB Prober only seems to work correctly before the serial port is activated. Suspect the control endpoint isn't getting serviced because it is starved by activity on the CDC data endpoint.

Book page

Setup for Windows XP

micro-OSC is a USB class-compliant serial device -- it is automatically supported by built-in drivers provided by operating system manufacturers. For some reason, on Windows, you still need to load a driver "information" file, otherwise it won't work.

Book page

Meeting agenda 6/26/08

Meeting agenda for Friday 6/20/08:

- Review candidates for Music Applications Programmer position
- Review status of current research projects
- Sponsored research: Starkey
- Affiliates: Meyer, Sennheiser, Waves, Native Instruments, Ableton...
- Clarify profile of Rimas replacement and goals for Meyer collaborations
- Discuss fundraising strategy for next year.

Book page

Overview

# Project objectives

- Low cost microcontroller target
- Maximally complete OSC implementation
- Timestamps and synchronization
- Floating point support
- High performance transport
- Clock synchronization
- Hardware features
- TTL, SPI and I2C digital connectivity
- Ratiometric ADC for 3.3v regulated systems

Book page

OSC

Provides OSC protocol meta-information and clock synchronization services.

-----

**/osc/version** : Report OSC version

TX: [ /osc/version ]
RX: [ /osc/version ,s "1.0" ]

-----

**/osc/type/accepts** : List typetags understood by device

Book page

TTL Serial

Enables digital communication with devices over TTL serial (0-5v signaling). Baud rates of 2400-115200.

Note that the TTL serial mode conflicts with SPI and I2C modules--only one can be used at a given moment.

The transmit pin is C6 and the receive pin is C7 on the PIC18F series.

**NOTE:** Do NOT leave the input pin (C7) floating! If it is not in use, it must be grounded, otherwise the hardware UART module will behave strangely and may lock up the firmware.

-----

**/ttl/baud** : Get/set baud rate, argument is int-32

Pages