==需求== *OS: Android (latest version) *Processor: 4 cores (minimum) *Coprocessor: STM32F405RGT6 (or equivalent) *RAM: 2GB *Storage: 32GB (fast as possible) *Display: Stretch bar, wide angle, high visibility (480 x 1280px) *Touchscreen: Capacitive, vandal resistant *Ports: 1x Power, 1x Ethernet, 1x Audio, 2x USB, 4x RS232 *Dimensions: 70mm x 180mm (estimated) *Software: RS232 communication buffer (Android app < coprocessor > slot machine / card reader), graceful shutdown, auto-update coprocessor *Features: 1mm steel case (powder coated), mounting brackets, external battery module ===GPIO Description=== {| class="wikitable" style="text-align:center" |+USB HOST PWR EN !Function !GPIO !Direction !Description |- |USB OTG PWR EN |GPIO0_A5 |Output |Active:H |- |USB_HOST_EN_H |GPIO0_A6 |Output |Active:H |- |5V_Boost_EN_H |GPIO0_D6 |Output |Active:H |- |} {| class="wikitable" style="text-align:center" |+RGMII !Function !GPIO !Direction !Description |- |RGMII_MDC |GPIO4_B6 |Output |Active:Edge |- |RGMII_MDIO |GPIO4_B7 |Input/Output |Active:L |- |RGMII_INT |GPIO3_A7 |Input |Active:H |- |RGMII_RST |GPIO3_B0 |Output |Active:L |- |RGMII_MCLK |GPIO4_C1 |Output |Active:Edge |- |RGMII_TXEN |GPIO4_A6 |Output |Active:H |- |RGMII_TXCLK |GPIO4_A0 |Output |Active:Edge |- |RGMII_TXD0 |GPIO4_A4 |Output |Active:H |- |RGMII_TXD1 |GPIO4_A5 |Output |Active:H |- |RGMII_TXD2 |GPIO3_D6 |Output |Active:H |- |RGMII_TXD3 |GPIO3_D7 |Output |Active:H |- |RGMII_RXDV |GPIO4_B1 |Input |Active:H |- |RGMII_RXCLK |GPIO4_A3 |Input |Active:Edge |- |RGMII_RXD0 |GPIO4_A7 |Input |Active:H |- |RGMII_RXD1 |GPIO4_B0 |Input |Active:H |- |RGMII_RXD2 |GPIO4_A1 |Input |Active:H |- |RGMII_RXD3 |GPIO4_A2 |Input |Active:H |- |} {| class="wikitable" style="text-align:center" |+RK809-5 Audio Codec !Function !GPIO !Direction !Description |- |I2S1_MCLK_M0_PMIC |GPIO1_A2 |Output |Active:EDGE |- |I2S1_SCLK_TX_M0_PMIC |GPIO1_A3 |Output |Active:EDGE |- |I2S1_LRCK_TX_M0_PMIC |GPIO1_A5 |Output |Active:EDGE |- |I2S1_SDO0_M0_PMIC |GPIO1_A7 |Output |Active:H |- |I2S1_SDI0_M0_PMIC |GPIO1_B3 |Input |Active:H |- |} {| class="wikitable" style="text-align:center" |+PMIC RK809-5 !Function !GPIO !Direction !Description |- |PMIC_INT_L |GPIO0_A3 |Input |Active:L |- |PMIC_SLEEP_H |GPIO0_A2 |Output |Active:H |- |} {| class="wikitable" style="text-align:center" |+eMMC 64GB !Function !GPIO !Direction !Description |- |eMMC_D0 |GPIO1_B4 |I/0 |Active:EDGE |- |eMMC_D1 |GPIO1_B5 |I/0 |Active:EDGE |- |eMMC_D2 |GPIO1_B6 |I/0 |Active:EDGE |- |eMMC_D3 |GPIO1_B7 |I/0 |Active:EDGE |- |eMMC_D4 |GPIO1_C0 |I/0 |Active:EDGE |- |eMMC_D5 |GPIO1_C1 |I/0 |Active:EDGE |- |eMMC_D6 |GPIO1_C2 |I/0 |Active:EDGE |- |eMMC_D7 |GPIO1_C3 |I/0 |Active:EDGE |- |eMMC_CMD |GPIO1_C4 |0utput |Active:EDGE |- |eMMC_CLK |GPIO1_C5 |0utput |Active:EDGE |- |eMMC_DATA_STROBE |GPIO1_C6 |0utput |Active:H |- |eMMC_nRST |GPIO1_C7 |0utput |Active:L |- |} {| class="wikitable" style="text-align:center" |+TF Card !Function !GPIO !Direction !Description |- |SD0_D0 |GPIO1_D5 |I/0 |Active:EDGE |- |SD0_D1 |GPIO1_D6 |I/0 |Active:EDGE |- |SD0_D2 |GPIO1_D7 |I/0 |Active:EDGE |- |SD0_D3 |GPIO2_A0 |I/0 |Active:EDGE |- |SD0_CMD |GPIO2_A1 |0utput |Active:EDGE |- |SD0_CLK |GPIO2_A2 |0utput |Active:EDGE |- |SD0_DET |GPIO0_A4 |Input |Active:L |- |} {| class="wikitable" style="text-align:center" |+SDIO WIFI/BT 8223A-SR !Function !GPIO !Direction !Description |- |SD1_D0 |GPIO2_A3 |I/0 |Active:EDGE |- |SD1_D1 |GPIO2_A4 |I/0 |Active:EDGE |- |SD1_D2 |GPIO2_A5 |I/0 |Active:EDGE |- |SD1_D3 |GPIO2_A6 |I/0 |Active:EDGE |- |SD1_CMD |GPIO2_A7 |0utput |Active:EDGE |- |SD1_CLK |GPIO2_B0 |0utput |Active:EDGE |- |BT_UART1_RX_M0 |GPIO2_B3 |Input |Active:L |- |BT_UART1_TX_M0 |GPIO2_B4 |Output |Active:L |- |BT_UART1_RTS_M0 |GPIO2_B5 |Input |Active:L |- |BT_UART1_CTS_M0 |GPIO2_B6 |Output |Active:L |- |BT_PCM_CLK |GPIO2_C2 |Output |Active:EDGE |- |BT_PCM_SYNC |GPIO2_C3 |Output |Active:EDGE |- |BT_PCM_DO |GPIO2_C4 |Output |Active:EDGE |- |BT_PCM_DI |GPIO2_C5 |Input |Active:EDGE |- |WL_REG_ON |GPIO2_B1 |Output |Active:H |- |WL_HOST_WAKE |GPIO2_B2 |Input |Active:H |- |BT_WAKE |GPIO2_C0 |Output |Active:H |- |BT_HOST_WAKE |GPIO2_C1 |Input |Active:H |- |BT_nRST |GPIO2_B7 |Output |Active:L |- |} {| class="wikitable" style="text-align:center" |+Headphone Hook !Function !GPIO !Direction !Description |- |HP HOOK |SARADC_VIN1 |Input |Active:ADC |- |HP DET |GPIO4_B2 |Input |Active:L |- |} {| class="wikitable" style="text-align:center" |+TFT LCD MIPI DSI TX1 !Function !GPIO !Direction !Description |- |LCD_PWR_EN |GPIO0_C5 |Output |Active:H |- |LCD_BACKLIGHT_PWM |GPIO0_C4 |Output |Active:H |- |LCD_RST |GPIO0_D4 |Output |Active:L |- |} {| class="wikitable" style="text-align:center" |+UART !Function !GPIO !Direction !Description |- |UART3_TX_M1 |GPIO3_B7 |Output |Active:L |- |UART3_RX_M1 |GPIO3_C0 |Input |Active:L |- |UART4_TX_M1 |GPIO3_B2 |Output |Active:L |- |UART4_RX_M1 |GPIO3_B1 |Input |Active:L |- |UART9_TX_M1 |GPIO4_C5 |Output |Active:L |- |UART9_RX_M1 |GPIO4_C6 |Input |Active:L |- |} {| class="wikitable" style="text-align:center" |+PWR STAT TO MCU !Function !GPIO !Direction !Description |- |PWR STAT |GPIO3_D5 |Output |Active:H |- |} {| class="wikitable" style="text-align:center" |+TP Panel !Function !GPIO !Direction !Description |- |TP_RST |GPIO0_B6 |Output |Active:H |- |TP_INT |GPIO0_B5 |Input |Active:L |- |} {| class="wikitable" style="text-align:center" |+I2C TP GT911 I2C1 !Function !GPIO !Direction !Description |- |I2C2_SCL_M1 |GPIO4_B5 |Output |Active:EDGE |- |I2C2_SDA_M1 |GPIO4_B4 |I/O |Active:EDGE |- |I2C0_SCL |GPIO0_B1 |Output |Active:EDGE |- |I2C0_SDA |GPIO0_B2 |I/O |Active:EDGE |- |I2C1_SCL |GPIO0_B3 |Output |Active:EDGE |- |I2C1_SDA |GPIO0_B4 |I/O |Active:EDGE |- |} {| class="wikitable" style="text-align:center" |+RTC !Function !GPIO !Direction !Description |- |RTC_I2C5_SCL |GPIO3_B3 |Output |Active:EDGE |- |RTC_I2C5_SDA |GPIO3_B4 |I/O |Active:EDGE |- |} {| class="wikitable" style="text-align:center" |+GPIO INPUT !Function !GPIO !Direction !Description |- |GPIO IN1 |GPIO3_D4 |Input |Active:L |- |GPIO IN2 |GPIO2_D0 |Input |Active:L |- |GPIO IN3 |GPIO2_D1 |Input |Active:L |- |GPIO IN4 |GPIO2_D2 |Input |Active:L |- |GPIO IN5 |GPIO2_D3 |Input |Active:L |- |} ==Building Android== ===Requirements=== * Host OS: Debian 11 (bullseye) or above, Ubuntu 20.04 or above * RAM: 32GB or above * Free space on storage: 200GiB or above Install packages needed for compiling:
sudo apt-get install build-essential flex bison genext2fs
===How to build===
tar -xf rk3568-android12-slotmachine.tar.gz

cd rk3568-android12-slotmachine
. setenv-slotmachine.sh
./build-slotmachine.sh -FMu
The image output path is rockdev/Image-aosp_novotech_slotmachine/ ===How to upgrade image to eMMC=== Set device to recovery mode, connect device to PC, then use commands below:
chmod +x RKTools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool_v2.4/upgrade_tool
RKTools/linux/Linux_Upgrade_Tool/Linux_Upgrade_Tool_v2.4/upgrade_tool uf rockdev/Image-aosp_novotech_slotmachine/update.img