.. _changelog_arduino_rpc_v1_0_0: v1.0.0 ====== v1.0.0 is the **initial release of the OpenMV Arduino RPC library** — an Arduino library for controlling an OpenMV Cam (or another Arduino, or a computer) and streaming data from it over CAN, I²C, SPI, UART (async serial), and USB. As the first release there is nothing to migrate from; this entry summarizes what it shipped with. .. contents:: On this page :backlinks: none :local: :depth: 1 Highlights ---------- - **Remote procedure calls over any bus** — call functions on an OpenMV Cam from an Arduino over CAN, I²C, SPI, UART, or USB, and stream the results back. - **Controller and peripheral roles** — an Arduino can drive a camera as the controller device, or act as a peripheral that a camera or host calls into. - **Fault tolerant** — recovers automatically from loose wires, packet corruption, and timeouts. - **Data streaming** — a streaming mode for moving large payloads such as JPEG frames. New features ------------ - The RPC interface implemented across CAN, I²C, SPI, UART (async serial), and USB transports, with a common controller / peripheral API under the ``openmv`` namespace. - A streaming mode for high-throughput transfers such as image transfer. - Example sketches — popular features as the controller device, JPEG image transfer, and moving an image. - Linux / Raspberry Pi support. Breaking API changes -------------------- None. v1.0.0 is the initial release — there is no prior version to break compatibility with.