基於PixArt PAR2802QN的BLE 5.1 HID裝置之滑鼠應用方案

低功率藍芽技術已是現今廣泛應用的無線通訊標準之一,不論各式筆電,手機,電腦周邊產品, 穿戴式裝置….等等,都可以看到它的存在;近年來物聯網、車聯網的興起,它更是低功耗,長時間運作的通訊主流。

詮鼎集團代理PixArt產線最新推出 PAR2802QN,基於Arm® Cortex® M0 核、512KB Flash、176KB SRAM以及10bits ADC、IR transceiver、Voice/Audio、7816 Interface、Cap Detector…等等,適合各種低功率的藍芽產品,例如心律手環、鍵盤、滑鼠、具語音輸入的消費性產品、遙控器、遊戲手柄、等等應用;PAR2802本身不但已通過BQB測試,同時PixArt也提供参考源代碼,可結合HCI command與產測程式,生產平台從固件燒錄到MTK治具記錄所有生產數據,讓研發人員能以最快的速度開發產品,並導入量產。

 

提供不同應用代碼

本方案,從根本的產品設計上也為客戶進行諸多考量,除供不同功能的源代碼,同時也支持OTA 更新韌體。方案可以選擇任一PixArt 的Optical Navigation sensor,如:PAW3805EK-CJV1 TOG sensor,雷射光PMW3610DM-SUDU senor,PAW3222LU-TJDU 超小型SMD sensor等,當然也做其他應用,諸如手環、手表等,其他更多方案與應用,陸續增加中。而採用Cortex-M0省電核心,整機耗電也相當省電,以滑鼠為例: 搭配PAW3220DB-TJDS,供電2.7v的條件下,操作電流為1.8毫安,第一段Sleep耗電為0.0048毫安,第二段Sleep耗電為0.0-35毫安,當進入Deep sleep更只有0.014毫安,

Keil 完整代碼示意:



設計簡單化

簡化韌體設計, 許多原本需要韌體做的, 都變成硬體處理,以滑鼠來說, 按鍵的彈跳、滾輪的解碼、LED閃爍的方式與次數…等等, 都部分由硬挺完成,由Pixart提供参考源代碼及選用的sensor後,依序如下韌體內容,即可有基本滑鼠功能;

        1. 首先先確認專案的GATT是否需要修改, 若有需要可透過以下AP進行修改,如:電量顯示:


        點開 profile 左邊的箭頭,並找到 HID Service,展開 HID Service後修改或增加 characteristic、report descriptor 、Report Value等等,完成後,直接產生對應的head file.。



        2. 修改廣播的內容&裝置名稱,可参考博文
 同場加映  "從藍芽BLE 廣播封包看微軟的快速配對"博文



        3. Sensor的初始設定&代碼:


        4. 按鍵及滾輪的IO設定, 因為原相已經把彈跳&解碼用硬體方式處理, 只要依IO Map table選擇所需的特性:


對應的C code設定如下:

static void MICE_gpio_init()
{
       pad_mux_write(6, 0);      //motion wake up 
       pad_mux_write(7, 2);      //key L
       pad_mux_write(8, 2);      //key R
       pad_mux_write(9, 2);      //key M
       pad_mux_write(15, 2);    //Z1
       pad_mux_write(16, 2);    //Z2
}

        5. LED閃爍的功能,也極為簡單,從HW Spec中(如下圖),必須分別寫入:




對應於程式,設定配對時LED閃爍::

void set_pairing_flag(uint8_t pairing)
{
       is_paring = pairing;
       if (pairing == 1)
      {
           pwm_led_set_polarity(1,0);
           pwm_led_set_flash(Pair_LED_ID,3,5,5,0,0xFF);      // set LED flash
           pwm_led_start(Pair_LED_ID);
       }else
      {
           pwm_led_set_polarity(1,1);
           pwm_led_stop(Pair_LED_ID);                                // reset LED flash
      }
}

        6. 電量偵測&指示: 
           讀取ADC的值後,轉換為百分比,並傳送給Host,不過windows 10 電量指示必須更新到1809以後的版本才能再裝置看到。


        7. 當程式修改後,除了透過Keil 或Pixart EVBUtility.exe更新FW外,亦可透過OTA更新,不過此必須裝置名稱一致且windows 10才能操作:



完善產測工具:

除了設計端外,生產端也是提供一系列的產測軟體及相關硬體:

  1. 固件燒錄平台(FWDLB);可支持一對一離線燒錄(可不需要連接電腦),單鍵執行,操作簡單,可同時多個裝置燒錄,亦可改裝至自動落料機進行自動燒錄。

 
    2. 生產測試平台(Manufacture Test Platform) ;應用於半成品(或模組) 測試

  • 特色
  • 支持離線與在線測試
  • 離線: 用燈號判斷測試成功與失敗
  • 在線: 用AP工具看詳細測試數據以及記錄測試樣品數據
  • 支持測試多樣電氣特性
  • GPIO 開閉路測試
  • GPADC
  • RF (射頻發射功率/射頻封包接收率/射頻頻率偏差值)
  • 系統電壓電流: 接收/發射/待機/睡眠狀態下
  • 支持固件燒錄
  • 無需額外的量測儀器設備





►場景應用圖

►展示板照片

►方案方塊圖

►核心技術優勢

1. 核心規格: ARM Cortex-M0 core 96MHz clock rate with 512KB Flash & 128KB ROM & 176KB SRAM, 2. 通信功能: (1) 兩組I2C Master及1組 I2C Slave。 (2) 兩組SPI Master及1組 SPI Slave。 (3) 支持Smart Card ISO 7816-3 介面。 (4) 3組UART,同時也支持 SWI 偵錯介面。 3. 數位周邊功能: (1) Quadrature Decoder。 (2) 6組PWM/LED輸出與 1組快速PWM。 (3) 支持硬件掃鍵Key scan 8x18。 (4) 16組電容觸控按鍵。 (5) 一組PDM module & 一組IR Transmitter。 4. 類比周邊功能: (1) 10-bit SAR ADC。 (2) 8組比較器。 (3) PDM/Codec for 音源輸入。 (4) IR Trancmitter

►方案規格

1. 符合Bluetooth 5.1 & BQB認證, DID number: D043404 2. 支持Keil 開發環境與ULINK2 及 J-LINK偵錯工具, 並提供韌體原代碼 3. 支持OTA更新韌體 4. 超低功耗,Max. Rx/Tx 電流5.2mA,SLEEP 1.9uA,適合各是可攜式產品. 5. 支持MT8852B HCI command 6. 完整的生產工具及產測MTP KIT, 進行燒錄、IO open/short、電流震測、頻率九宮格量測、LED、電量偵測…等, 並紀錄生產log. 7. 單體燒錄版, 可離線操作或導入自動燒錄機台

技術文檔

類型標題檔案
硬件Schematics
硬件Specification