Arduboy-homemade-package/README.md

105 lines
6.0 KiB
Markdown
Raw Normal View History

2018-03-25 13:33:05 +00:00
# Arduboy homemade package
2018-03-25 13:32:23 +00:00
Arduino IDE board package for Arduboy and homemade versions with the following advantages:
2018-02-25 20:01:34 +00:00
* Single install
* Includes all Arduboy libraries with support for alternate displays and wiring
* Includes Arduboy optimized Arduino core with extra features and space savings
* Cathy3K bootloader support
2018-02-13 21:17:45 +00:00
#### To install the package:
* Start Arduino IDE and press **CTRL + comma** to select properties.
2018-02-25 19:52:00 +00:00
* Copy and paste the URL below in **Additional Boards Manager URLs:** text box and click on **OK**
2018-02-13 21:17:45 +00:00
```
2018-03-25 13:32:23 +00:00
https://raw.githubusercontent.com/MrBlinky/Arduboy-homemade-package/master/package_arduboy_homemade_index.json
2018-02-13 21:17:45 +00:00
```
2018-03-25 13:32:23 +00:00
![preferences](https://raw.githubusercontent.com/MrBlinky/Arduboy-homemade-package/master/images/preferences.png)
2018-02-25 20:01:34 +00:00
After this:
2018-02-25 19:52:00 +00:00
* Go to **Tools > Boards > Board manager**
2018-03-25 14:46:09 +00:00
* In the text box type **homemade** or **Arduboy homemade**
* Click on the **Arduboy Homemade package** and click the **Install** button.
2018-02-25 20:01:34 +00:00
2018-03-25 14:46:09 +00:00
You can now select **Arduboy, Arduboy DevKit** and **Homemade Arduboy boards** from the Tools menu.
2018-02-25 20:01:34 +00:00
2018-03-25 13:32:23 +00:00
![menu](https://raw.githubusercontent.com/MrBlinky/Arduboy-homemade-package/master/images/menu.gif)
2018-02-25 19:52:00 +00:00
2018-03-25 15:50:00 +00:00
## Libraries
This package contains all the currently available Arduboy libraries with changes for homemade Arduboys. If Arduboy libraries were installed manually, it is recommended to uninstall them.
## Pin wiring table
| Arduboy function | Arduboy <BR>Leonardo/Micro | DevelopmentKit | ProMicro 5V <br>(standard wiring) | ProMicro 5V <br>(alternate wiring) |
| ---------------- | ---------------------- | ----------- | ---------------------------------- | --------------------------------- |
| OLED CS | 12 PORTD6 | 6 PORTD7 | GND | 1/TXO PORTD3* |
| OLED DC | 4 PORTD4 | 4 PORTD4 | 4 PORTD4 | 4 PORTD4 |
| OLED RST | 6 PORTD7 | 12 PORTD6 | 6 PORTD7 | 2 PORTD1* |
2018-05-25 21:15:57 +00:00
| SPI SCK | 15 PORTB1 | 15 PORTB1 | 15 PORTB 1 | 15 PORTB1 |
| SPI MOSI | 16 PORTB2 | 16 PORTB2 | 16 PORTB2 | 16 PORTB2 |
2018-03-25 15:50:00 +00:00
| RGB LED RED | 10 PORTB6 | _ | 10 PORTB6 | 10 PORTB6 |
| RGB LED GREEN | 11 PORTB7 | _ | - | 3 PORTD0* |
| RGB LED BLUE | 9 PORTB5 | 17 PORTB0 | 9 PORTB5 | 9 PORTB5 |
2018-05-25 21:15:57 +00:00
| RxLED | 17 PORTB0 | _ | 17 PORTB0 | 17 PORTB0 |
| TxLED | 30 PORTD5 | _ | 30 PORTD5 | 30 PORTD5 |
2018-03-25 15:50:00 +00:00
| BUTTON UP | A0 PORTF7 | 8 PORTB4 | A0 PORTF7 | A0 PORTF7 |
| BUTTON RIGHT | A1 PORTF6 | 5 PORTC6 | A1 PORTF6 | A1 PORTF6 |
| BUTTON LEFT | A2 PORTF5 | 9 PORTB5 | A2 PORTF5 | A2 PORTF5 |
| BUTTON DOWN | A3 PORTF4 | 10 PORTB6 | A3 PORTF4 | A3 PORTF4 |
| BUTTON A (left) | 7 PORTE6 | A0 PORTF7 | 7 PORTE6 | 7 PORTE6 |
| BUTTON B (right) | 8 PORTB4 | A1 PORTF6 | 8 PORTB4 | 8 PORTB4 |
| SPEAKER PIN 1 | 5 PORTC6 | A2 PORTF5 | 5 PORTC6 | 5 PORTC6 |
| SPEAKER PIN 2 | 13 PORTC7 | A3 PORTF4** | GND | 6 PORTD7* |
|----------------- | ---------------------- | ----------- | ---------------------------------- | --------------------------------- |
2018-05-25 21:15:57 +00:00
| CART_CS | 0 PORTD2*** | - | - | 0 PORTD2*** |
2018-03-25 15:50:00 +00:00
| SPI MISO | 14 PORTB3*** | - | - | 14 PORTB3*** |
Numbers before the portnames are Arduino assigned pin numbers.
(*)
Pro Micro alternate wiring pins:
* PORTD3 OLED CS
* PORTD1 OLED RST
* PORTD7 SPEAKER 2
* PORTD0 RGB LED GREEN
(**)
speaker pin 2 output is connected to speaker pin 1 on DevKit hardware. To
prevent the IO pins from possible damage, speaker pin 2 should *NOT* be
configured as an output.
(***)
Future Flash cart support:
* 0 PORTD2 Future flash cart chip select
* 14 PORTB3 flash cart data in (MISO)
2018-05-25 21:15:57 +00:00
## (future) expansion connector
2018-06-27 07:35:05 +00:00
An expansion connector can be added to a modified or Homemade Arduboy in the form of a 12 pin male header with 0.1"pitch. which can be used for:
2018-05-25 21:15:57 +00:00
* ICSP header for easy in circuit programming (updating bootloader)
* flash cart slot
* SD card adapter
* infrared communications
* multiplayer link
* sensors
### Expansion connector pinout
( (Homemade) Arduboy facing top - front view female pinheader)
| 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| TX | RX | SCL | SDA | NC | KEY | MISO| MOSI| CLK | RST | GND | Vcc |
```text
TX* - Serial Transmitter output
RX - Serial Receiver input / Flash cart chip select
SCL* - I2C/TWI serial clock I/O
SDA* - I2C/TWI serial data I/O
NC - Not connected (reserved for future use)
KEY - Key pin. should be filled to block pin insertion (reverse insert protection)
MISO - SPI/ICSP Master Input, Slave Output
MOSI - SPI/ICSP Master Output, Slave Input
CLK - SPI/ICSP clock
RST - MCU/ICSP reset
GND - Ground (0V)
Vcc - 5V (~3.0V to ~4.1V on Arduboy)
(*) Not available when using Pro Micro with Alternate Wiring
```