2021-01-29 06:31:58 -05:00
|
|
|
|
|
|
|
[![Arduino CI](https://github.com/RobTillaart/Optoma/workflows/Arduino%20CI/badge.svg)](https://github.com/marketplace/actions/arduino_ci)
|
2021-12-22 07:38:25 -05:00
|
|
|
[![Arduino-lint](https://github.com/RobTillaart/Optoma/actions/workflows/arduino-lint.yml/badge.svg)](https://github.com/RobTillaart/Optoma/actions/workflows/arduino-lint.yml)
|
|
|
|
[![JSON check](https://github.com/RobTillaart/Optoma/actions/workflows/jsoncheck.yml/badge.svg)](https://github.com/RobTillaart/Optoma/actions/workflows/jsoncheck.yml)
|
2023-11-14 10:59:15 -05:00
|
|
|
[![GitHub issues](https://img.shields.io/github/issues/RobTillaart/Optoma.svg)](https://github.com/RobTillaart/Optoma/issues)
|
|
|
|
|
2021-01-29 06:31:58 -05:00
|
|
|
[![License: MIT](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/RobTillaart/Optoma/blob/master/LICENSE)
|
|
|
|
[![GitHub release](https://img.shields.io/github/release/RobTillaart/Optoma.svg?maxAge=3600)](https://github.com/RobTillaart/Optoma/releases)
|
2023-11-14 10:59:15 -05:00
|
|
|
[![PlatformIO Registry](https://badges.registry.platformio.org/packages/robtillaart/library/Optoma.svg)](https://registry.platformio.org/libraries/robtillaart/Optoma)
|
2021-01-29 06:31:58 -05:00
|
|
|
|
2021-12-22 07:38:25 -05:00
|
|
|
|
2021-01-29 06:31:58 -05:00
|
|
|
# Optoma
|
|
|
|
|
|
|
|
Arduino library to control Optoma W305ST beamer over RS232.
|
|
|
|
|
2021-12-22 07:38:25 -05:00
|
|
|
|
2021-01-29 06:31:58 -05:00
|
|
|
## Description
|
|
|
|
|
|
|
|
The Optoma library contains functions that help to control
|
|
|
|
the beamer from an Arduino.
|
|
|
|
|
|
|
|
The library is tested with an UNO and an Optoma W305ST Beamer.
|
2021-12-22 07:38:25 -05:00
|
|
|
The commands can work on other Optoma Beamers.
|
2021-01-29 06:31:58 -05:00
|
|
|
|
|
|
|
Command structure
|
|
|
|
```
|
|
|
|
~XXnnn parameter
|
|
|
|
|
|
|
|
~ start command
|
|
|
|
XX 2 digit ID
|
|
|
|
nnn command can be up to 3 char/digit
|
|
|
|
space space
|
|
|
|
param parameters, depend on command
|
|
|
|
\r end command
|
|
|
|
```
|
|
|
|
|
2021-12-22 07:38:25 -05:00
|
|
|
|
2021-01-29 06:31:58 -05:00
|
|
|
## Interface
|
|
|
|
|
2023-11-14 10:59:15 -05:00
|
|
|
```cpp
|
|
|
|
#include "optoma.h"
|
|
|
|
```
|
|
|
|
|
2021-01-29 06:31:58 -05:00
|
|
|
The following functions are implemented:
|
|
|
|
|
2021-12-22 07:38:25 -05:00
|
|
|
- **Optoma(HardwareSerial\* stream = &Serial)** constructor, default uses Serial,
|
2021-01-29 06:31:58 -05:00
|
|
|
other HW or SW Serial are possible.
|
2021-12-22 07:38:25 -05:00
|
|
|
- **void init(int ID, uint32_t baudRate = 9600)** default baud rate = 9600.
|
2021-01-29 06:31:58 -05:00
|
|
|
The ID is used to address a specific beamer.
|
2021-12-22 07:38:25 -05:00
|
|
|
In theory one could have multiple beamers on one RS232 port (never seen or tested).
|
|
|
|
- **uint32_t getBaudrate()** return set baud rate.
|
|
|
|
- **void switchOn()** idem.
|
|
|
|
- **void switchOff()** idem.
|
|
|
|
- **bool isOn()** idem.
|
|
|
|
- **void increaseVKS()** VKS - Vertical KeyStone. check datasheet.
|
|
|
|
- **void decreaseVKS()** VKS - Vertical KeyStone. check datasheet.
|
|
|
|
|
2021-01-29 06:31:58 -05:00
|
|
|
|
|
|
|
## Future
|
|
|
|
|
2023-11-14 10:59:15 -05:00
|
|
|
More functionality will be added on a need to basis.
|
|
|
|
|
|
|
|
#### Must
|
|
|
|
|
|
|
|
- documentation
|
|
|
|
|
|
|
|
#### Should
|
|
|
|
|
|
|
|
#### Could
|
|
|
|
|
2021-01-29 06:31:58 -05:00
|
|
|
- Create examples.
|
|
|
|
|
2023-11-14 10:59:15 -05:00
|
|
|
#### Wont
|
|
|
|
|
|
|
|
|
|
|
|
## Support
|
|
|
|
|
|
|
|
If you appreciate my libraries, you can support the development and maintenance.
|
|
|
|
Improve the quality of the libraries by providing issues and Pull Requests, or
|
|
|
|
donate through PayPal or GitHub sponsors.
|
|
|
|
|
|
|
|
Thank you,
|
|
|
|
|