mfihwinfo32
hwinfo32 时间:2021-02-28 阅读:(
)
BMDWARE-DS-V2.
2Page1of39RigadoLLC3950FairviewIndustrialDr.
SESuite100Salem,Oregon97302866-6-RIGADOmodules@rigado.
comwww.
rigado.
com/modulesBMDwareFirmware,Done.
1.
IntroductionTheBMDwarefirmwarepackagepre-programmedtoallRigadoBMD-200andBMD-300Seriesmodulesprovidesbuilt-inconfigurablebeaconingandapass-throughUARTconnection.
BeaconproductsonlyneedsomeconfigurationviatheBluetoothLowEnergyinterface.
Nofirmwaredevelopmentorprogrammingisnecessary.
Wirelessconnectivityiseasilyaddedtoexistingsystemswithexternalconnectorsusingthepass-throughUARTconnection.
Withthebuilt-inATstylecommandinterface,aBMD200or300seriesmoduleiseasilyintegratedintoanexistingdesignallowingforcontrolofBMDwarefeaturesthroughaconnectedUART.
1.
1FeatureListFullyConfigurableBeaconPacketstructureSupportforAppleiBeaconbuilt-in;custombeaconpacketsalsoavailableConfigurableTransmitpowerforconnectableandbeaconadvertisementsPass-throughUARTupto80000baudwithoutflowcontrolConfigurableParityandFlowControlATCommandinterfaceviaconnectedmicrocontrollerPasscodeprotectedinterfaceBeaconbroadcastwhilestillconnectableConfigurableadvertisingnameandintervalConfigurableGPIOConfigurableBLEconnectedstatuspinPasswordprotectedBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page2of39TABLEOFCONTENTS1.
INTRODUCTION11.
1FEATURELIST.
12.
DEFINITIONS.
53.
BMDWAREPINDESCRIPTIONS.
63.
1BMD-20063.
2BMD-30084.
BLUETOOTHLOWENERGYARCHITECTURE104.
1BEACONCONFIGURATIONSERVICE.
104.
2CUSTOMBEACONDATA.
104.
2.
1Service.
104.
2.
2ControlPoint(0to20bytes)104.
2.
3BeaconUUID(128bits)104.
2.
4MajorNumber(16bits)114.
2.
5MinorNumber(16bits)114.
2.
6BeaconAdvertisingInterval(16bits)114.
2.
7BeaconTXPower(8bits)114.
2.
8BeaconEnable(8bits)114.
2.
9ConnectableTXPower(8bits)114.
3UARTOVERBLUETOOTHSMARTSERVICE.
124.
3.
1Service.
124.
3.
2TXCharacteristic(1to20bytes)124.
3.
3RXCharacteristic(1to20bytes)124.
3.
4BAUDRateCharacteristic(32bits)124.
3.
5ParityCharacteristic(8bits)134.
3.
6FlowControlCharacteristic(8bits)134.
3.
7UARTEnableCharacteristic(8bits)134.
4DEVICEINFORMATIONSERVICE(0X180A)145.
CONTROLPOINTCOMMANDS.
155.
1COMMANDARCHITECTURE.
155.
1.
1ControlPointUUID.
155.
2CUSTOMBEACONDATACOMMANDS.
155.
2.
1SetCustomBeaconData1:0x20.
155.
2.
2SetCustomBeaconData2:0x21.
155.
2.
3SaveCustomBeaconData:0x22.
155.
2.
4ClearCustomBeaconData:0x23.
155.
2.
5SetRSSICalibrationData:0x40165.
2.
6GetRSSICalibrationData:0x41.
165.
3GPIOCOMMANDS.
165.
3.
1ConfigureGPIO:0x50165.
3.
2WriteGPIO:0x5116BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page3of395.
3.
3ReadGPIO:0x52175.
3.
4GetGPIOConfiguration:0x53175.
3.
5ConfigureStatusPin:175.
3.
6De-configureStatusPin:185.
3.
7GetStatusPinConfiguration:185.
3.
8ReadStatusPin:185.
4CONNECTABLEADVERTISEMENTCOMMANDS185.
4.
1SetConnectableAdvertisingInterval:0x42185.
4.
2GetConnectableAdvertisingInterval:0x43185.
5SYSTEMANDMISCELLANEOUSCOMMANDS195.
5.
1GetBootloaderInfo:195.
5.
2SetAdvertisedName:195.
5.
3GetAdvertisedName:195.
5.
4GetBMDwareProtocolVersion:195.
5.
5Unlock:0xF8195.
5.
6SetPassword:0x31195.
5.
7StartBootloader:03563057(hexbytes)205.
5.
8RunBootloader:96dff40b(hexbytes)205.
5.
9SystemReset:4b102f37(hexbytes)205.
6COMMANDRESPONSECODES.
216.
ATCOMMANDINTERFACE.
226.
1ENABLINGATMODE226.
1.
1ATModeUARTSettings.
226.
2LOCKEDDEVICES226.
3ATCOMMANDFORMAT226.
4ATCOMMANDSTRUCTURE226.
4.
1WriteCommands226.
4.
2ReadCommands236.
4.
3InterfaceTestCommand:at236.
5BEACONCOMMANDS236.
5.
1BeaconUUID:at$buuid,at$buuid236.
5.
2BeaconMajorNumber:at$bmjid,at$bmjid236.
5.
3BeaconMinorNumber:at$bmnid,at$bmnid236.
5.
4BeaconAdvertisingInterval:at$badint,at$badint236.
5.
5BeaconTXPower:at$btxpwr,at$btxpwr246.
5.
6BeaconEnable:at$ben,at$ben246.
5.
7CustomBeaconDataSet:at$cusbcn,at$cusbcn246.
5.
8CustomBeaconDataClear:at$cbclr.
246.
5.
9SetBeaconRSSICalibration:at$bcal,at$bcal246.
6PASS-THROUGHUARTCOMMANDS.
266.
6.
1BaudRate:at$ubr,at$ubr266.
6.
2FlowControlEnable:at$ufc,at$ufc26BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page4of396.
6.
3ParityEnable:at$upar,at$upar266.
6.
4UARTPass-throughEnable:at$uen,at$uen266.
7GPIOCOMMANDS.
286.
7.
1ConfigureGPIO:at$gcfg.
286.
7.
2WriteGPIO:at$gset286.
7.
3GPIOGetPinState:at$gread.
286.
7.
4GPIOGetPinConfiguration:at$gcget.
296.
7.
5GPIOConfigureStatusPin:at$gstc,at$gstc296.
7.
6GPIOReadStatusPin:at$gstr296.
8ADVERTISEMENTCONTROL306.
8.
1ConnectableAdvertisementEnable:at$conadv,at$conadv306.
8.
2ConnectableAdvertisementInterval:at$cading,at$cadint306.
8.
3ConnectableTXPower:at$ctxpwr,at$ctxpwr306.
9SYSTEMANDMISCELLANEOUSCOMMANDS316.
9.
1Unlock:at$unlock316.
9.
2Reset:at$devrst.
316.
9.
3BMDwareVersion(readonly):at$ver316.
10BOOTLOADERVERSION(READONLY):AT$BLVER316.
11APIPROTOCOLVERSION(READONLY):AT$PVER316.
12STARTBOOTLOADER:AT$STBL.
316.
13RESTARTBMDWARE:AT$RESTART.
316.
14GETHARDWAREINFO(READONLY):AT$HWINFO326.
15DEVICENAME:AT$NAME,AT$NAME326.
15.
1SetPassword:at$password.
327.
APPENDIXA:BOOTLOADERVERSIONINFORMATION338.
APPENDIXB:PROTOCOLVERSIONSUPPORT358.
1BLECOMMANDS.
358.
2ATCOMMANDS.
369.
KNOWNERRATA.
379.
1CONNECTEDSTATUSPIN(BMD-300ONLY,BMDWARE3.
1.
0(50)379.
1.
1Description.
379.
1.
2Details379.
1.
3Exampleoftheerrata379.
1.
4AdditionalNotes379.
1.
5Workaround(Outputpins)379.
1.
6NoWorkaround(Inputpins)3810.
REVISIONHISTORY39BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page5of392.
DefinitionsUUID:UniversallyUniqueIdentifierBeacon:Inthecontextofthisdocument,abeaconreferstoaBluetoothLowEnergybasedadvertisementpacketwhichcontainsdeviceidentifiableinformationusinganon-connectableadvertisement.
iBeacon:AniBeaconisaspecificimplementationofaBeaconusingaspecificationprovidedbyApple,Inc.
ToobtainacopyoftheiBeaconspecificationand/orusetheiBeaconlogoforaproduct,theproductdesignmustjointheAppleMFiprogram.
Seehttps://developer.
apple.
com/programs/mfi/formoredetails.
UriBeacon:URIBeaconisaspecificationprovidedbyGoogle.
Moredetailscanbefoundhere:https://github.
com/google/uribeaconAltBeacon:AltBeaconisanotherbeaconspecification.
Moredetailshere:http://altbeacon.
orgUART:UniversalAsynchronousReceiverTransmitterBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page6of393.
BMDwarePinDescriptions3.
1BMD-200Figure1-BMD-200Pinout(TopView)PinNameDirectionBMD-200BMDwarePinFunctions11P0.
00InIn/OutDTMUARTRXGPIOpinmap03,N/Cifnotused.
OnBMDwareStart-up:High=EnterDTMmode;Low=EnterNormalOperationInternal12kΩpull-downduringBMDwarestart-up,thenHi-Z12P0.
01OutIn/OutDTMUARTTX–ActiveifDTMUARTisenabledbyP0.
00GPIOpinmap0015P0.
04In/OutGPIOpinmap0416P0.
05InBeacon-Onlymodeselection,N/Cifnotused.
OnBMDwareStart-up:High=BridgeUARTenabled;Low=BridgeUARTdisabledInternal12kΩpull-upduringBMDwarestart-up,thenHi-Z17P0.
06InIn/OutUARTATCommandmodeselectionGPIOpinmap05,N/Cifnotused.
OnBMDwareStart-up:High=Fullpass-throughmode;Low=ATcommandmodeInternal12kΩpull-upduringBMDwarestart-up,thenHi-Z20P0.
08InIn/OutBridgeUARTCTSGPIOpinmap06DisabledinBeacon-Only&DTMmodes,N/Cifnotused.
21P0.
09InBridgeUARTRXDisabledinBeacon-Only&DTMmodes,N/Cifnotused.
22P0.
10OutBridgeUARTTXDisabledinBeacon-Only&DTMmodes,N/Cifnotused.
23P0.
11OutBridgeUARTRTSDisabledinBeacon-Only&DTMmodes,N/Cifnotused.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page7of39PinNameDirectionBMD-200BMDwarePinFunctions24SWDIOIn/OutDebugI/O/RESET25SWDCLKInDebugClock5P0.
24In/OutGPIOpinmap01,N/Cifnotused.
6P0.
25In/OutGPIOpinmap02,N/Cifnotused.
8,9,13,14RSVN/AReservedN/C18VCCPower+1.
8Vto+3.
6VDC1μF-4.
7μFceramiccapacitorisrecommendedbetweenVCCandGND1,2,3,4,7,10,19,26,(27,28opt.
)GNDPowerElectricalGroundTable1–BMD-200BMDwarePinFunctionsNordicPinRefBMD-200PinBMD-200BMDwareFunctionBMD-200BMDwareGPIOMapBMD-200EvalKitPinRefBMD-200EvalKitPinNameP0.
0011DTMUARTRX/GPIO03P0.
00SW2P0.
0112DTMUARTTX/GPIO00P0.
01LED_RedP0.
0213--P0.
02BridgeUARTCTSP0.
0314--P0.
03BridgeUARTRTSP0.
0415GPIO04P0.
04I2CINTP0.
0516BeaconOnlyMode-P0.
05I2CSCLP0.
0617ATOnlyMode/GPIO05P0.
06Ambient/AREFP0.
0820BridgeUARTCTS/GPIO06P0.
08I2CSDAP0.
0921BridgeUARTRX-P0.
09BridgeUARTRXP0.
1022BridgeUARTTX-P0.
10BridgeUARTTXP0.
1123BridgeUARTRTS-P0.
11ATOnly/SW1P0.
245GPIO01P0.
24LED_GreenP0.
256GPIO02P0.
25LED_BlueP0.
268--P0.
26AnalogInP0.
279--P0.
27AnalogInTable2-BMDwareassignmentsforBMD-200moduleandBMD-200EvaluationKitBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page8of393.
2BMD-300Figure2–BMD-300Pinout(TopView)PinNameDirectionBMD-300BMDwareFunctions13P0.
00In/OutGPIOpinmap0x00,N/Cifnotused.
14P0.
01In/OutGPIOpinmap0x01,N/Cifnotused.
15P0.
02In/OutGPIOpinmap0x02,N/Cifnotused.
19P0.
03In/OutGPIOpinmap0x03,N/Cifnotused.
20P0.
04In/OutGPIOpinmap0x04,N/Cifnotused.
21P0.
05-Unused,N/C22P0.
06OutBridgeUARTTXDisabledinBeacon-Only&DTMmodes,N/Cifnotused.
23P0.
07InBridgeUARTCTSDisabledinBeacon-Only&DTMmodes,N/Cifnotused.
24P0.
08InBridgeUARTRXDisabledinBeacon-Only&DTMmodes,N/Cifnotused.
25P0.
09In/OutGPIOpinmap0x05,N/Cifnotused.
26P0.
10In/OutGPIOpinmap0x06,N/Cifnotused.
27P0.
11OutDTMUARTTXOnlyenabledinDTMmode;N/Cifnotused.
28P0.
12InDTMUARTRX/DTMModeOnlyenabledinDTMmode;N/Cifnotused.
OnBMDwareStart-up:High=EnterDTMmode;Low=EnterNormalOperationInternal12kΩpull-downduringBMDwarestart-up,thenHi-Z31P0.
13InBeaconOnlyModeOnBMDwareStart-up:High=BridgeUARTenabled;Low=BridgeUARTdisabledInternal12kΩpull-upduringBMDwarestart-up,thenHi-ZBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page9of39PinNameDirectionBMD-300BMDwareFunctions32P0.
14InUARTATCommandModeOnBMDwareStart-up:High=Fullpass-throughmode;Low=ATcommandmodeInternal12kΩpull-upduringBMDwarestart-up,thenHi-Z33P0.
15In/OutGPIOpinmap0x07,N/Cifnotused.
34P0.
16In/OutGPIOpinmap0x08,N/Cifnotused.
35P0.
17In/OutGPIOpinmap0x09,N/Cifnotused.
36P0.
18In/OutGPIOpinmap0x0A,N/Cifnotused.
37P0.
19In/OutGPIOpinmap0x0B,N/Cifnotused.
38P0.
20In/OutGPIOpinmap0x0C,N/Cifnotused.
39P0.
21In/OutBMDwareResetPin40P0.
22In/OutGPIOpinmap0x0D,N/Cifnotused.
41P0.
23In/OutGPIOpinmap0x0E,N/Cifnotused.
42P0.
24In/OutGPIOpinmap0x0F,N/Cifnotused.
6P0.
25In/OutGPIOpinmap0x10,N/Cifnotused.
7P0.
26In/OutGPIOpinmap0x11,N/Cifnotused.
8P0.
27In/OutGPIOpinmap0x12,N/Cifnotused.
9P0.
28In/OutGPIOpinmap0x13,N/Cifnotused.
10P0.
29In/OutGPIOpinmap0x14,N/Cifnotused.
11P0.
30In/OutGPIOpinmap0x15,N/Cifnotused.
12P0.
31In/OutGPIOpinmap0x16,N/Cifnotused.
Table3–BMD-300BMDwarePinFunctionsBMD-300PinNamePinMapIndex13P0.
000x0014P0.
010x0115P0.
020x0219P0.
030x0320P0.
040x0425P0.
090x0526P0.
100x0633P0.
150x0734P0.
160x0835P0.
170x0936P0.
180x0A37P0.
190x0B38P0.
200x0C20P0.
220x0D41P0.
230x0E42P0.
240x0F6P0.
250x107P0.
260x118P0.
270x129P0.
280x1310P0.
290x1411P0.
300x1512P0.
310x16Table4–BMD-300BMDwareGPIOPinMappingsBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page10of394.
BluetoothLowEnergyArchitectureTheBluetoothlowenergyinterfaceofBMDwarehastwomainservices:BeaconConfigurationandUARTConfiguration.
Eachinterfaceisconfiguredindependentlyovertheother.
However,somecontrolcommandsaresentonlythroughtheBeaconConfigurationservice(suchassettingapasswordforthedevice).
Note:AllDataforfixedlengthcharacteristics(e.
g.
notthecontrolpoint)arelittleendianhexadecimal.
Forexample,abaudrateof57600,whichhasahexadecimalvalueof0xE100isrepresentedas0x00E1.
Abaudrateof115200,whichhasahexadecimalvalueof0x1C200isrepresentedas0x00C20100.
4.
1BeaconConfigurationServiceTheBeaconConfigurationServiceprovidesallcharacteristicsnecessaryforconfigurationofabeaconbroadcastfromthedevice.
Theconfigurablecomponentsare:UUID,Major,Minor,AdvertisementInterval,BeaconTXPower,ConnectableTXPower,andEnable.
Inaddition,itispossible,throughtheControlPointofthisservice,todeployafullycustomizedbeaconpacketforbeaconssuchasEddystoneandAltBeacon.
4.
2CustomBeaconDataInBMDware,itispossibletobroadcastaseitheraniBeaconstylebeaconorasaCustomstylebeacon.
Thecustombeaconprovidescompletecontroloverthefulladvertisementpacketmanufacturerspecificdatasection.
Itdoesnotsupporthandlingscanrequests.
Thetwobeaconstylesaremutuallyexclusive.
BMDwaredoesnotsupportbroadcastingbothtypesatthesametime.
4.
2.
1ServiceUUID:2413B33F-707F-90BD-2045-2AB8807571B7TheBeaconconfigurationserviceprovidesnecessarybeaconconfigurationinformationandacontrolpointforperformingadditionalactionssuchaspasswordprotectionandsettingcalibrationdata.
ThissectionliststhevariouscharacteristicsalongwiththeirUUIDsanddatatypes.
4.
2.
2ControlPoint(0to20bytes)UUID:2413B43F-707F-90BD-2045-2AB8807571B7Thecontrolpointprovidesaninterfaceforadditionalcommands.
SeetheControlPointCommandssectionforadetaileddescriptionofallavailablecommands.
4.
2.
3BeaconUUID(128bits)UUID:2413B53F-707F-90BD-2045-2AB8807571B7TheBeaconUUIDcharacteristicsetstheUUIDbroadcastwithinthebeaconadvertisementpacketforaniBeaconstylebeacon.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page11of394.
2.
4MajorNumber(16bits)UUID:2413B63F-707F-90BD-2045-2AB8807571B7ThemajornumbercharacteristicsetsthemajornumberwithinthebeaconadvertisementpacketforaniBeaconstylebeacon.
Thischaracteristicis16bits.
Validvaluesare0to0xFFFF.
4.
2.
5MinorNumber(16bits)UUID:2413B73F-707F-90BD-2045-2AB8807571B7TheminornumbercharacteristicsetstheminornumberwithinthebeaconadvertisementpacketforaniBeaconstylebeacon.
Thischaracteristicis16bits.
Validvaluesare0to0xFFFF.
4.
2.
6BeaconAdvertisingInterval(16bits)UUID:2413B83F-707F-90BD-2045-2AB8807571B7ThischaracteristicsetstheadvertisingintervalfortheBeaconadvertisementpacket.
Thischaracteristicis16bits.
Valuesarerepresentedinmillisecondsandrangefrom50to4000ms.
Higheradvertisingintervalswillreducebatterylife.
4.
2.
7BeaconTXPower(8bits)UUID:2413B93F-707F-90BD-2045-2AB8807571B7TheTXpowercharacteristicprovidesawaytosettheoutputradiopowerforthebeaconadvertisementpacket.
Thedefaultvalueis-4.
Availablevaluesare:-30,-20,-16,-12,-8,-4,0,4indBm4.
2.
8BeaconEnable(8bits)UUID:2413BA3F-707F-90BD-2045-2AB8807571B7Thebeaconenablecharacteristicenablesanddisablesthebeaconadvertisement.
Ifsetto0,nobeaconadvertisementwillbegenerated.
Anyothervaluewillcausethedevicetogeneratebeaconadvertisements.
Thedefaultvalueis0.
4.
2.
9ConnectableTXPower(8bits)UUID:2413BB3F-707F-90BD-2045-2AB8807571B7TheconnectableTXpowersetstheradiooutputpowerforconnectableadvertisementpackets.
Thesepacketsaresentouteverysooftenprovidingawayforconfigurationappstoconnectandupdatesettings.
Thedefaultvalueis-4.
Validvaluesare:-30,-20,-16,-12,-8,-4,0,4indBmBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page12of394.
3UARToverBluetoothSmartServiceTheUARToverBluetoothSmartserviceprovidesallnecessarycharacteristicsforconfigurationoftheBluetoothSmartpass-throughUARTaswellascharacteristicsfortransmissionandreceptionofUARTdata.
TheconfigurablecomponentsareBaudRate,FlowControl,Parity,andEnable.
Note:ThePass-throughUARTsettingsdonotaffectATModesettings.
ATModeUARTsettingsarefixed.
SeetheATModesectionforfurtherdetails.
4.
3.
1ServiceUUID:6E400001-B5A3-F393-E0A9-E50E24DCCA9ETheUARToverBluetoothSmartserviceprovidesaconfigurablepass-throughUART.
DatawrittentotheTXcharacteristicwillbesentfromthehardwareUARTtoaconnecteddevice.
DatareceivedonthehardwareUARTfromawiredconnectionwillbesentbacktothehostconnectionviaacharacteristicnotification.
Thisservicemakesnoattempttoensuredatawasreceivedbyeithersideoftheconnection.
4.
3.
2TXCharacteristic(1to20bytes)UUID:6E400002-B5A3-F393-E0A9-E50E24DCCA9EThischaracteristicisusedtosenddatatothephysicalUART.
4.
3.
3RXCharacteristic(1to20bytes)UUID:6E400003-B5A3-F393-E0A9-E50E24DCCA9EThischaracteristicreceivesdatafromthephysicalUARTvianotifications.
4.
3.
4BAUDRateCharacteristic(32bits)UUID:6E400004-B5A3-F393-E0A9-E50E24DCCA9EThebaudratecharacteristicconfigurestheBAUDrateofthephysicalUARTconnection.
Itdoesnothaveanybearingonovertheairtransferrate.
Defaultvalueis57600.
Thisvalueis32bits.
Availablevaluesare:1200240048009600144001920028800384005760076800115200(flowcontrolrequired)BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page13of39230400(flowcontrolrequired)Note:TheBMDmodulessupporthigherbaudrates,butduetoMTUsizelimitation,theeffectivethroughputisreduced.
Note:TheUARTBaudRatedoesnotdirectlycorrelatetoactualthroughput.
Withanaverage30mSconnectioninterval,theaveragethroughputisexpectedtobeabout4800bps.
So,whilethehardwareUARTcancommunicatemuchfaster,highthroughputisnotdirectlyachievableonthemodule.
4.
3.
5ParityCharacteristic(8bits)UUID:6E400005-B5A3-F393-E0A9-E50E24DCCA9ETheparitycharacteristicenablesanddisablesoddparityforphysicalUARTtransmissions.
Itdoesnothaveanybearingonovertheairdatatransfers.
Thedefaultisoffor0.
Anyothervaluewillenableparity.
4.
3.
6FlowControlCharacteristic(8bits)UUID:6E400006-B5A3-F393-E0A9-E50E24DCCA9ETheflowcontrolcharacteristicenablesanddisableshardwareflowcontrolforthephysicalUARTtransmissions.
Itdoesnothaveanybearingonovertheairdatatransfers.
Thedefaultstateisoffor0.
Anyothervaluewillenablehardwareflowcontrol.
4.
3.
7UARTEnableCharacteristic(8bits)UUID:6E400008-B5A3-F393-E0A9-E50E24DCCA9EMuchliketheenablecharacteristicforthebeacon,thischaracteristicenablesanddisablesthephysicalUARTconnectiontotheovertheairconnection.
Thedefaultisoffor0.
AnyothervaluewillenabletheovertheairUART.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page14of394.
4DeviceInformationService(0x180A)Thedeviceinformationserviceisalsoavailable.
ThisserviceprovidesinformationasspecifiedbytheBluetoothSIG.
TheavailablefieldsareManufacturerName(0x2A29),SerialNumber(0x2A25),FirmwareVersion(0x2A26),andModelNumber(0x2A24).
FormoreinformationontheDeviceInformationService,refertohttps://developer.
bluetooth.
org/gatt/services/Pages/ServiceViewer.
aspxu=org.
bluetooth.
service.
device_information.
xml.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page15of395.
ControlPointCommandsBMDwarehasadditionalcommandsthatcanbesenttothecontrolpoint.
Thissectiondetailsthosecommands.
5.
1CommandArchitectureAllcommands,exceptforthestartbootloadercommand,areonebytelongwithavariableamountofparameterdata.
Whennotificationsareenabledforthecontrolpoint,aresponseissentforeverycommand.
Theresponseiseitheronebytelongoraslongasnotedbytheresponsedatafromthecommand.
5.
1.
1ControlPointUUID2413B43F-707F-90BD-2045-2AB8807571B75.
2CustomBeaconDataCommands5.
2.
1SetCustomBeaconData1:0x20ProtocolVersion:1Description:Thiscommandissenttosetthefirsthalfofthecustombeaconpacketdata.
Intotal,thecustombeaconpacketisupto31byteslong.
Uptothefirst19bytesaresentviathiscommand.
Parameters:1to19bytesofbeacondata5.
2.
2SetCustomBeaconData2:0x21ProtocolVersion:1Description:Thiscommandissenttosetthesecondhalfofthecustombeaconpacketdata.
Intotal,thecustombeaconpacketis31byteslong.
Onlythelast1to12bytesaresentviathiscommand.
Ifatleast19byteshavenotfirstbeensentviatheSetCustomBeaconData1command,invokingthiscommandwillresultinInvalidDataerrorresponse.
Parameters:1to11bytesofbeacondata5.
2.
3SaveCustomBeaconData:0x22ProtocolVersion:1Description:Thiscommandissenttocommitthecustombeacondatatonon-volatilestorage.
Ifnocustombeacondatahasbeensent,invokingthiscommandwillresultinanInvalidDataerrorresponse.
Parameters:None5.
2.
4ClearCustomBeaconData:0x23ProtocolVersion:1Description:Thiscommandissenttoclearallcustombeacondata.
Aftersendingthiscommand,beaconingwillrevertbacktoiBeaconstylebeaconing.
Parameters:NoneBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page16of395.
2.
5SetRSSICalibrationData:0x40ProtocolVersion:1Description:ThiscommandissenttosettheRSSIcalibrationdata.
TheRSSIcalibrationissentwithiBeaconpackets.
ThisvalueistheRSSIvalueexpectedwhenmeasuredat1meterfromthedevice.
Usingthisvalue,theiBeaconinfrastructureoniOSisabletodeterminetherelativedistancefromthedeviceandthenreconciletheinformationtoproduceImmediate,Near,andFarratingsforconsumptionbyiOSapplicationsinterfacingwiththeiBeacon.
Parameters:TXPower:ThepoweratwhichtheRSSIwasmeasuredRSSI:TheRSSIvaluemeasuredata1-meterdistancefromthedevice,lineofsight5.
2.
6GetRSSICalibrationData:0x41Description:ThiscommandissenttoretrievetheRSSIcalibrationdata.
Returnformat:5.
3GPIOCommands5.
3.
1ConfigureGPIO:0x50ProtocolVersion:1(3.
0.
0)Description:ThiscommandprovidesconfigurationoffreeGPIOpins.
Pinsareconfigurableasinputoroutputandwithorwithoutapulluporpulldownforinputpins.
Note:GPIOconfigurationsarenotsavedacrosspowercycles.
Parameters:Pin:Pinmapping:(BMD-200,Table1)or(BMD-300Series,Table4)Direction:Pindirection:00=input|01=outputPull:Internalpinpull-uporpull-down,13K(nominal):00=nopull|01=pull-down|03=pull-up5.
3.
2WriteGPIO:0x51ProtocolVersion:1(3.
0.
0)Description:ThewriteGPIOcommandchangesthestateofaGPIOconfiguredasanoutput.
Parameters:Pin:Pinmapping:(BMD-200,Table1),(BMD-300Series,Table4)State:Pinstate:00=Low/Clear(GND)|01=High/Set(VCC)BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page17of395.
3.
3ReadGPIO:0x52ProtocolVersion:1(3.
0.
0)Description:ThereadGPIOcommandreadsthecurrentvalueofaninputorthestateoftheoutputbufferandreturnsthisvalueviaanotification.
Parameters:Pin:Pinmapping:(BMD-200,Table1),(BMD-300Series,Table4)ReturnFormat:Pin:Pinmapping:(BMD-200,Table1),(BMD-300Series,Table4)State:Pinstate:00=Low/Clear(GND)|01=High/Set(VCC)5.
3.
4GetGPIOConfiguration:0x53ProtocolVersion:1(3.
0.
0)Description:ThegetGPIOconfigurationcommandprovidesthecurrentconfigurationforthesuppliedpinviaanotification.
Parameters:Pin:Pinmapping:(BMD-200,Table1),(BMD-300Series,Table4)ReturnFormat:Pin:Pinmapping:(BMD-200,Table1),(BMD-300Series,Table4)Direction:Pindirection:00=input|01=outputPull:Internalpinpull-uporpull-down,13K(nominal):00=nopull|01=pull-down|03=pull-up5.
3.
5ConfigureStatusPin:ProtocolVersion:1(3.
0.
0)Description:ThestatuspinprovidesaBLEconnectionindication.
WhenadeviceisconnectedtoBMDwareviaBLE,thestatuspinisactive,otherwiseitisinactive.
Theactivestateisdefinedbythepolarity.
Thispinisconfiguredtobeahighdriveoutput.
Ifconfiguredfor'ActiveHigh',thepinisdriventoVCCduringanactiveconnection.
Whenconfiguredfor'ActiveLow',thepinisdriventoGroundduringanactiveconnection.
Otherwise,thepinwillbedriventotheinactivestate.
Note:ThepinconfiguredasthestatuspincannotbeusedforGPIOoperationswhileconfiguredasastatuspin.
Pinconfigurationisstoredacrosspowercycles.
Thedefaultconfigurationisnostatuspin.
Parameters:Pin:Pinmapping:(BMD-200,Table1),BMD-300Series(BMDwareValue0x00-0x04),SeeTable4Polarity:00-ActiveLow;01-ActiveHighBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page18of395.
3.
6De-configureStatusPin:ProtocolVersion:2Description:Thiscommanddisablesthestatuspin.
5.
3.
7GetStatusPinConfiguration:ProtocolVersion:2Description:Retrievesthecurrentstatuspinconfiguration.
ResponseFormat:5.
3.
8ReadStatusPin:ProtocolVersion:2Description:Returnsthecurrentactiveorinactivestateofthestatuspin.
ResponseFormat:Parameters:State:00-Inactive;01-Active5.
4ConnectableAdvertisementCommands5.
4.
1SetConnectableAdvertisingInterval:0x42ProtocolVersion:2Description:Thiscommandadjuststheadvertisingintervaloftheconnectableadvertisement.
Thissettingisretainedacrosspowercyclesandappliesanytimethedeviceisanadvertisingstate.
Thedefaultvalueis1285ms.
Parameters:Interval:Theadvertisingintervalinlittleendianbyteorder.
Thisisa16-bitvalueandthevalidrangeis20to2500ms.
5.
4.
2GetConnectableAdvertisingInterval:0x43ProtocolVersion:2Description:Thiscommandretrievesthecurrentadvertisingintervaloftheconnectableadvertisement.
ResponseFormat:BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page19of395.
5SystemandMiscellaneousCommands5.
5.
1GetBootloaderInfo:ProtocolVersion:2Description:Returnsthecurrentbootloaderinformation.
ThisdataisONLYavailableifsupportedbythebootloader.
ThedatawasaddedtoRigDfuversion3.
2.
0.
Previousbootloaderversionsdonothavethisinformation.
Ifthebootloaderinformationisunavailable,thiscommandwillreturnthe'InvalidData'error.
ResponseFormat:;SeeAppendixAforformat.
5.
5.
2SetAdvertisedName:ProtocolVersion:2Description:Thiscommandconfigurestheadvertisementnameofthedevice.
ThisdataisplacedintheDeviceNameoftheadvertisementdatapacket.
Onetoeightcharactersmaybespecified.
ThecharactersmustbeASCIIcharacters.
Thedefaultnameis'RigCom'.
Parameters:DeviceName:1to8ASCIIcharacters5.
5.
3GetAdvertisedName:ProtocolVersion:2Description:Retrievesthecurrentdevicename.
Responseformat:5.
5.
4GetBMDwareProtocolVersion:ProtocolVersion:2Description:ReturnsthecurrentprotocolversionofBMDware.
ResponseFormat:5.
5.
5Unlock:0xF8ProtocolVersion:1Description:Thiscommandissenttounlockthedevice.
Parameters:Password:Theunlockpasswordofupto19bytes.
SeeSetPasswordforfurtherinformation.
5.
5.
6SetPassword:0x31ProtocolVersion:1Description:Thiscommandissenttosetanunlockpasswordforthedevice.
Oncethepasswordisset,allconfigurationsettingsarelockedunlesstheUnlockcommandwiththecorrectpasswordisfirstsenttothedevice.
ThepasswordmaybecomprisedofanyASCIIprintablecharacter,exceptaspace,upto19charactersinlength.
Passwordscontainingnon-printablecharacters(suchascontrolcodes)willnotbeaccepted.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page20of39PasswordsthatarenotacceptedwillreceivedaresponseofUpdatePinFailed.
Onceunlocked,thedevicewillremainunlockeduntiladisconnectionorresetoccurs.
Parameters:Password:Theunlockpasswordofupto19bytes.
5.
5.
7StartBootloader:03563057(hexbytes)ProtocolVersion:1Description:SendingthiscommandtoanunlockeddevicewillcausethedevicetoresetintotheBootloader.
Ifafirmwareupdateisnecessary,thiscommandisusedtostartthebootloadertoperformthefirmwareupdate.
Ifnofirmwareupdateisstarted,thedevicewillresetafter2secondsandresumerunningtheapplication.
5.
5.
8RunBootloader:96dff40b(hexbytes)ProtocolVersion:2Description:Thiscommandbehavesexactlythesameasthe'StartBootloader'commandbutcausesthebootloadertorunfor3minutesinsteadof2seconds.
Thiscommandisonlyavailablewhenatleastbootloaderversion3.
2.
0isinstalled(APIversion3).
Tocheckthebootloaderversion,issuethe'GetBootloaderInfo'commandandverifytheverifynumber.
5.
5.
9SystemReset:4b102f37(hexbytes)ProtocolVersion:2Description:ThiscommandresetsBMDwareandbypassesthebootloaderreducingthestartuptimeofBMDware.
UseitwhenonlyBMDwareneedstoberesetandthebootloaderisnotneeded.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page21of395.
6CommandResponseCodesCommandSuccess–0x00Description:Thisresponseissentanytimeasuccessfulcommandhasbeenreceivedandexecuted.
DeviceLocked–0x01Description:Thisresponseissentanytimeacommandissenttothedevicewhentheconfigurationinterfaceislockedwithapassword.
Theunlockcommandistheonlyacceptedcommandinthisstate.
CommandInvalidLength–0x02Description:Thisresponseissentanytimeacommandissentwiththewrongparameterdatalength.
UnlockFailed–0x03Description:Thisresponseiswhentheunlockcommandisexecutedwithanincorrectpassword.
UpdatePinFailed–0x04(onlyforsetpasswordcommand)Description:Thisresponseissentifthenewpasswordcontainsnon-printableASCIIcharactersorspaces.
InvalidData–0x05Description:Thisresponseissentwhenanycommandparameterhasinvaliddata.
InvalidState–0x06Description:Thisresponseissentwhenanycommandisreceivedwhenthedeviceisinaninvalidstate.
Forexample,changingtheUARTsettingswhileitisenabledisaninvalidstate.
InvalidParameter–0x07Description:Thisresponseissentwhenacommandparameterisoutofrangeoftheavailablevalues.
InvalidCommand–0x08Description:Thisresponseissentwhenacommandtothecontrolpointisnotvalid.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page22of396.
ATCommandInterfaceTheATcommandinterfaceallowsadeviceormicrocontrollerconnectedviaaUARTinterfacetoconfigureBMDwarethroughaphysicalconnectionratherthanovertheBluetoothLowEnergyinterface.
WhiletheBluetoothLowEnergyconfigurationinterfaceisalwaysavailable,theATinterfaceisenabledthroughatogglepinontheBMDmodule.
Eachcommandhasanassociatedprotocolversion.
Itistheminimumprotocolversionrequiredtosupportthecommandandtheversioninwhichthecommandwasadded.
6.
1EnablingATModeToenableATcommandprocessingmode,Pin17(P0.
06)ontheBMD-200,Pin32(P0.
14)ontheBMD-300,andPin23(P0.
11)ontheBMD-200Evaluationboardmustbepulledordrivenlowatboot.
Aconnectedmicrocontrollercansetthispinlowandthenresetthemoduleviatheresetpin.
IfATModeneedstobealwaysenabled,thepincanbetieddirectlytoground.
Note:WhenATModeisenabled,thePass-throughUARTisnotavailableforuse.
6.
1.
1ATModeUARTSettingsThesettingsfortheATModeUARTarefixed.
Theyarecompletelyindependentofthepass-throughUARTsettings.
Baudrate:57600Databits:8Stopbits:1Parity:NoneFlowControl:None6.
2LockedDevicesDeviceswithapasswordwillhavetobeunlockedbeforecommandscanbesenttothedevice.
DuetothenatureofUARTconnections,thedevicewillberelockedaftereachsuccessfulcommandissenttothedevice.
Inthisway,iftheUARTconnectionisseveredforanyreason,thedevicewillnotbeleftinanunlockedstateexceptforonecommand.
6.
3ATCommandFormatUnlessotherwisenoted,allparameterdataforATmodecommandsaresuppliedashexadecimalbig-endianASCIIvalues.
Seeindividualcommandsforfurtherdetails.
6.
4ATCommandStructureAllATcommandshavethefollowingstructure:6.
4.
1WriteCommandsat$…Note:Allparametersareseparatedwithaspace.
Note:Sendonly\nor\r.
Ifbotharesent,thenextcommandwillproduceanerror.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page23of396.
4.
2ReadCommandsat$Thereadresponsewillcontainthedataasdefinedbelowalongwitha`\n`only.
Note:SomeoftheGPIOcommandsareinexceptiontothis.
Sincetheyrequireparametersforthereadoperation,the''postfixisnotused.
6.
4.
3InterfaceTestCommand:atProtocolVersion:1Description:The'at'commandisasimplecommandtotestthattheinterfaceisavailable.
TheresponseisalwaysOKwhenATCommandmodeisenabled.
6.
5BeaconCommands6.
5.
1BeaconUUID:at$buuid,at$buuidProtocolVersion:1Invocation:at$buuidDescription:TheUUIDcommandsetstheUUIDfortheiBeaconstylebeacondata.
Example:ConfigureUUIDas00112233-4455-6677-8899-aabbccddeeffat$buuid00112233445566778899aabbccddeeffNote:at$uuidandat$uuidaredeprecatedbutretainedforbackwardcompatibility6.
5.
2BeaconMajorNumber:at$bmjid,at$bmjidProtocolVersion:2Invocation:at$bmjidDescription:ThemajornumbercommandsetsthemajornumberfortheiBeaconstylebeacondata.
Example:ConfigureMajorIDas0x960a(2710decimal)at$bmjid0a96Note:at$mjidandat$mjidaredeprecatedbutretainedforbackwardcompatibility6.
5.
3BeaconMinorNumber:at$bmnid,at$bmnidProtocolVersion:2Invocation:at$bmnidDescription:TheminornumbercommandsetstheminornumberfortheiBeaconstylebeacondata.
Example:ConfigureMinorIDasbf17(6079decimal)at$bmnid17bfNote:at$mnidandat$mnidaredeprecatedbutretainedforbackwardcompatibility6.
5.
4BeaconAdvertisingInterval:at$badint,at$badintProtocolVersion:2Invocation:at$badintDescription:Theadvertisingintervalcommandsetsthebroadcastintervalforthebeacon.
SeetheBluetoothlowenergyinterfacedescriptionforavailableadvertisingintervals.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page24of39Example:Setbeaconadvertisingintervalto100msat$badint0064Note:at$adintandat$adintaredeprecatedbutretainedforbackwardcompatibility6.
5.
5BeaconTXPower:at$btxpwr,at$btxpwrProtocolVersion:1Invocation:at$btxpwrDescription:TheBeaconTXpowercommandsetsthetransmitpowerforthebeaconbroadcastdata.
ThisTXpowerisdifferentfromtheconnectableadvertisement.
SeetheBluetoothlowenergyinterfacedescriptionforavailabletransmitpowervalues.
Theparametervalueisasigned8-bitinteger.
Example:SetbeaconTXPowerto-4dBmat$btxpwrfc6.
5.
6BeaconEnable:at$ben,at$benProtocolVersion:1Invocation:at$benorDescription:Thebeaconenablecommandisusedtoenableordisablebeaconfunctionality.
Sendavalueof0x01willenablethebeacon.
Sendinganyothervaluewilldisablethebeacon.
Ifthebeaconisenabled,thereadcommandwillrespondwith0x01,otherwise0x00.
Example:Enablebeaconat$ben016.
5.
7CustomBeaconDataSet:at$cusbcn,at$cusbcnProtocolVersion:1Invocation:at$cusbcnDescription:ThecustombeacondatacommandwillswitchtheBMDwarebeaconingtoafullycustomizednon-connectableadvertisingdata.
ThisallowsforalternatebeaconspecificationssuchasAltBeaconorURIBeacon.
ThecustombeacondatawillhaveanadvertisingintervalassetbyAdvertisingIntervalproperty.
Example:at$cusbcn0303FED81A16fed800112233445566778899aabbccddeeff0123456789abcd6.
5.
8CustomBeaconDataClear:at$cbclrProtocolVersion:1Invocation:at$cbclrDescription:ThecustombeacondataclearcommandwillclearthecustombeacondataandbeaconadvertisementswillreverttoiBeaconstyleasconfiguredbytheUUID,Major,andMinornumbers.
6.
5.
9SetBeaconRSSICalibration:at$bcal,at$bcalProtocolVersion:1Invocation:at$bcalDescription:ThebeaconRSSIcalibrationvaluesetsthecalibratedRSSIvaluefortheprovidedTXpower.
ThisfieldisbroadcastaspartofaniBeaconpacketandisusedbyiOStodeterminehowclosethedeviceistoaparticularbeacon.
Thereshouldbenospacebetweenthetwoparameters.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page25of39Example:SetBeaconcalibrationvalueto-4dBmat-68RSSIat$bcalfcbc(-4dBm,-68RSSI)BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page26of396.
6Pass-throughUARTCommandsThesecommandsdonotaffecttheconfigurationoftheATModeUARTsettings.
ATModeUARTsettingsarefixed.
SeetheATModeIntroductionsectionfortheATModeUARTconfiguration.
6.
6.
1BaudRate:at$ubr,at$ubrProtocolVersion:1Invocation:at$ubrDescription:ThebaudratecommandwillsetthebaudratefortheUARTpass-throughmodeonly.
ThebaudrateforcommandsprocessedduringATmode.
Thenewbaudratetakeseffectafteraresethasbeenissued.
SeetheBluetoothLowEnergyinterfaceforavailableBaudRatesandtheirlimitationswithandwithoutflowcontrol.
Example:SetBaudRateto57600at$ubr57600Example:GetBaudRateat$ubrReturns0000E100Note:BaudratevaluesaresentasASCIIdecimal(e.
g.
57600,38400,etc.
)andreadaslittle-endianhexadecimal(e.
g.
0xE100fortherateof57600baudisrepresentedas0x00E1)6.
6.
2FlowControlEnable:at$ufc,at$ufcProtocolVersion:1Invocation:at$ufcorDescription:Theflowcontrolenablecommandisusedtoenableordisableflowcontrol.
Sendingavalueof0x01willenableflowcontrol.
Sendanyothervaluewilldisableflowcontrol.
Ifflowcontrolisenabled,thereadcommandwillrespondwith0x01,otherwise0x00.
Example:Enableflowcontrolat$ufc016.
6.
3ParityEnable:at$upar,at$uparProtocolVersion:1Invocation:at$uparorDescription:Theparityenablecommandisusedtoenableordisableparity.
TheBMDmoduleonlyhasOddparity.
Sendingavalueof0x01willenableparitychecking.
Sendinganyothervaluewilldisableparitychecks.
Ifparityisenabled,thereadcommandwillrespondwith0x01,otherwise0x00.
Example:Enableparityat$upar016.
6.
4UARTPass-throughEnable:at$uen,at$uenProtocolVersion:1Invocation:at$uenorDescription:TheUARTpass-throughenablecommandisprovidedasameanstoenableanddisablethepass-throughUARTonly.
Ifthepass-throughUARTisdisabled,thennoUARTwillbeavailableontheBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page27of39deviceafterbootunlesstheATModepinisdrivenlow.
SendingthiscommandwillnotdisabletheATModeUARTuntilaresethasbeenissued.
Sendingavalueof0x00willdisablethepass-throughUART.
Sendinganyothervaluewillenablethepass-throughUART.
IfUARTpass-throughisenabled,thereadcommandwillrespondwithON,otherwiseOFF.
Example:EnablePass-throughUARTat$uen01BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page28of396.
7GPIOCommands6.
7.
1ConfigureGPIO:at$gcfgProtocolVersion:1Invocation:at$gcfgDescription:TheinputGPIOpinisconfiguredwithadirectionandpulluptype.
Thedefaultpower-upstateisinput,Hi-Z.
Note:GPIOconfigurationsarenotsavedacrosspowercycles.
Parameters:referstothepinmapping:(BMD-200,Table1),(BMD-300Series,Table4)=pindirection:00=input|01=output=internalpinpull-uporpull-down,13K(nominal):00=nopull|01=pull-down|03=pull-upReturnCodes:OKonsuccess,ERRoninvalidparameterExample:ConfigureBMD-300pin13(P0.
00)asOutputNo-pullat$gcfg0001006.
7.
2WriteGPIO:at$gsetProtocolVersion:1Invocation:at$gsetDescription:TheselectedGPIOpin,ifsetforoutput,issettotheselectedstate.
Parameters:referstothepinmapping:(BMD-200,Table1),(BMD-300Series,Table4)=pinstate:00=low|01=highReturnCodes:OKonsuccess,ERRoninvalidparameterExample:DriveBMD-300pin13(P0.
00)toGNDat$gset00006.
7.
3GPIOGetPinState:at$greadProtocolVersion:1Invocation:at$greadDescription:ReadsthecurrentstateofaGPIOpin.
Parameters:referstothepinmapping:(BMD-200,Table1),(BMD-300Series,Table4)=pinstate:00=low|01=highReturnCodes:00or01foravalidpinnumber,ERRoninvalidparameterBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page29of39Example:ReadstateofBMD-300pin13(P0.
00)at$gread006.
7.
4GPIOGetPinConfiguration:at$gcgetProtocolVersion:1Invocation:at$gcgetDescription:TheselectedGPIOpinconfigurationisreturnedintheformatof:Parameters:referstothepinmapping:(BMD-200,Table1),(BMD-300Series,Table4)=pindirection:00=input|01=output=internalpinpull-uporpull-down,13K(nominal):00=nopull|01=pull-down|03=pull-upReturnCodes:onsuccess,ERRoninvalidpinnumberExample:GetconfigurationforBMD-300pin13(P0.
00)at$gcget006.
7.
5GPIOConfigureStatusPin:at$gstc,at$gstcProtocolVersion:2Invocation:at$gstcDescription:TheselectedGPIOpinisconfiguredastheconnectionstatuspinwithastheactivestate.
Parameters:referstothepinmapping:00–06(BMD-200,Table1),BMD-300Series:BMDwareValues0x00-0x04,SeeTable4,FF-Un-configure=activestatepolarity:00=activelow|01=activehighReturnCodes:OKonsuccessforwrite,forread,ERRoninvalidpinnumberExample:ConfigureBMD-300pin15(P0.
02)asthestatuspinwith`ActiveLow`polarityat$gstc02006.
7.
6GPIOReadStatusPin:at$gstrProtocolVersion:2Invocation:at$gstrDescription:Readthecurrentstateoftheconfiguredstatuspin.
Returnsavaluebasedontheactiveorinactivestateofthestatuspin.
Thiscommanddoesnotreturnthelogiclevelofthepin.
ReturnCodes:00forinactive,01foractive,ERRoninvalidpinnumberBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page30of396.
8AdvertisementControl6.
8.
1ConnectableAdvertisementEnable:at$conadv,at$conadvProtocolVersion:2Invocation:at$conadvorDescription:TheConnectableAdvertisementEnablecommandisusedtoenableordisabletheconnectableadvertisementfunctionality.
Sendingavalueof0x01willenableconnectableadvertisements.
Sendingavalueof0x00willdisableconnectableadvertisements.
Ifconnectableadvertisementsareenabled,thereadcommandwillrespondwith0x01,otherwise0x00.
Notes:Thissettingissavedacrosspowercycles.
6.
8.
2ConnectableAdvertisementInterval:at$cading,at$cadintProtocolVersion:1Invocation:at$cadintDescription:TheConnectableAdvertisementIntervalcommandisusedtoadjusttheadvertisementintervaloftheconnectablebroadcastofBMDware.
Validvaluesare20msto2500mssuppliedasatwooctectbig-endianvalue.
Notes:Thissettingissavedacrosspowercycles.
Example:SetConnectableadvertisingintervalto1200msat$cadint04b06.
8.
3ConnectableTXPower:at$ctxpwr,at$ctxpwrProtocolVersion:1Invocation:at$ctxpwrDescription:TheConnectableTXpowercommandsetsthetransmitpowerfortheconnectableadvertisementdata.
ThisTXpowerisdifferentfromthebeaconbroadcast.
SeetheBluetoothlowenergyinterfacedescriptionforavailabletransmitpowervalues.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page31of396.
9SystemandMiscellaneouscommands6.
9.
1Unlock:at$unlockProtocolVersion:1Invocation:at$unlockDescription:Thiscommandattemptstounlockthedeviceusingtheprovidedpassword.
Ifthepasswordisincorrect,thedevicewillrespondwithLOCKED.
Example:Unlockwithpasswordsetas`test`at$unlocktest6.
9.
2Reset:at$devrstProtocolVersion:1Invocation:at$devrstDescription:TheresetcommandisusedtoresettheBMDmodule.
Thiscommandcausestheprogrammedbootloadertorunfor2seconds.
6.
9.
3BMDwareVersion(readonly):at$verProtocolVersion:1Invocation:at$verDescription:TheversioncommandreportstheversionofBMDwarecurrentlyprogrammedtothemodule.
6.
10BootloaderVersion(readonly):at$blverProtocolVersion:2Description:ReportstheversionoftheRigadobootloaderprogrammedtothemodule.
Onlyavailableifbootloaderversionis>=3.
2.
0.
Ifthebootloaderversionisnotavailable,"unavailable"isreturned.
6.
11APIProtocolVersion(readonly):at$pverProtocolVersion:2Description:ReportstheprotocolversionforBMDware.
SeeAppendixBfortheprotocolversioncommandavailability.
6.
12StartBootloader:at$stblProtocolVersion:2Description:Startsthebootloaderandcommandsittorunfor3minutes.
ThiscommandonlyinvokesthisoperationifatleastRigDFUversion3.
2.
0isinstalled.
Previousversionsofthebootloaderdonotsupportthisoperationandthenormal2secondstartuptimewillapply.
6.
13RestartBMDware:at$restartProtocolVersion:2Description:RestartsBMDwareimmediately.
Thebootloaderisnotstartedwhenthiscommandisused.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page32of396.
14GetHardwareInfo(readonly):at$hwinfoProtocolVersion:2Description:RetrievesinformationaboutthehardwareonwhichBMDwareisrunning.
Returnsthefollowingformattedstring:NRF5//=1or2=AmountofflashspaceinkB,typically512or256=AmountofRAMavailableinkB,typically64,32,or16Ifforsomereasontheaboveinformationisnotavailableornotrecognized,"UnknownPart!
"isreturned.
6.
15DeviceName:at$name,at$nameProtocolVersion:2Description:SetsorgetstheDeviceNameadvertisedaspartoftheconnectibleadvertisement.
Thenamemaybesettoanycombinationof1to8ASCIIcharacters.
Invalidinputwillcausean'ERR'responsefromBMDware.
Example:SetnametoBMD300at$nameBMD3006.
15.
1SetPassword:at$passwordProtocolVersion:1Invocation:at$passwordDescription:ThesetpasswordcommandisusedtosetorchangethepasswordcurrentlyusedtoprotecttheBluetoothLowEnergyandATcommandinterfaces.
Thepasswordisprovidedasanon-nullterminatedstring.
AllcharactersofthepasswordmustbeASCIIprintablecharacters.
The''(space)characterisnotallowed.
Example:SetpasswordtoatMod3pa$$w0rdat$passwordatMod3pa$$w0rdBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page33of397.
AppendixA:BootloaderversioninformationThebootloaderversioninformationisdescribedbythefollowingtypedefs:typedefenumversion_type_e{VERSION_TYPE_RELEASE=1,VERSION_TYPE_DEBUG=2}version_type_t;typedefenumsoftdevice_support_e{SOFTDEVICE_SUPPORT_S110=1,SOFTDEVICE_SUPPORT_S120=2,//NotusedSOFTDEVICE_SUPPORT_S130=3,SOFTDEVICE_SUPPORT_S132=4,SOFTDEVICE_SUPPORT_RESERVED2,SOFTDEVICE_SUPPORT_RESERVED3,SOFTDEVICE_SUPPORT_RESERVED4,SOFTDEVICE_SUPPORT_RESERVED5}softdevice_support_t;typedefenumhardware_support_e{HARDWARE_SUPPORT_NRF51=1,HARDWARE_SUPPORT_NRF52=2,HARDWARE_SUPPORT_RESERVED1,HARDWARE_SUPPORT_RESERVED2,HARDWARE_SUPPORT_RESERVED3,HARDWARE_SUPPORT_RESERVED4,HARDWARE_SUPPORT_RESERVED5}hardware_support_t;typedefstructrig_firmware_info_s{uint32_tmagic_number_a;//Always0x465325D4uint32_tinfo_size;//Sizeofthisstructureuint8_tversion_major;uint8_tversion_minor;uint8_tversion_rev;uint32_tbuild_number;version_type_tversion_type;softdevice_support_tsd_support;hardware_support_thw_support;uint16_tprotocol_version;BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page34of39uint32_tmagic_number_b;//Always0x49B0784C}rig_firmware_info_t;WhentheGetBootloaderVersioncommandisexecutedoverBLE,theabovestructureisreturnedasanarrayofbyteswithoutthemagicnumberfields.
OverATmode,thebootloaderversionisrequestedwiththe'at$blver'commandwhichonlyprovidestheversionnumber.
Itdoesnotprovidetheprotocolversion.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page35of398.
AppendixB:ProtocolVersionSupportThefollowingtablesshowthecommandssupportedbyeachprotocolversion.
Afewcommandswereaddedtoversion3.
0.
0beforeaprotocolversionwastracked.
Thesecommandsaredenotedas1(3.
0.
0).
Ifthecommandreturnsanerror,verifytheversionisatleast3.
0.
0forthosecommands.
Version2wasaddedtoBMDwareversion3.
1.
0.
8.
1BLECommandsCommand(Octect)AddedDeprecated201211221231311401411422432501(3.
0.
0)511(3.
0.
0)521(3.
0.
0)531(3.
0.
0)541(3.
0.
0)552562572602612622632F814B102F37203563057196DFF40B2Table5–BMDwareBLECommandAvailabilityBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page36of398.
2ATCommandsCommandAddedDeprecatedat$buuid1(3.
0.
0)at$uuid12at$bmjid1(3.
0.
0)at$mjid12at$bmnid1(3.
0.
0)at$mnid12at$badint1(3.
0.
0)at$adint12at$btxpwr1at$ben1at$cusbcn1at$cbclr1at$bcal1at$ubr1at$ufc1at$upar1at$uen1at$gcfg1(3.
0.
0)at$gset1(3.
0.
0)at$gread1(3.
0.
0)at$gcget1(3.
0.
0)at$gstc2at$gstr2at$conadv2at$cadint2at$ctxpwr1at$unlock1at$devrst1at$ver1at$blver2at$pver2at$stbl2at$restart2at$hwinfo2at$name2at$password1Table6–BMDwareBLECommandAvailabilityBMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page37of399.
KnownErrata9.
1ConnectedStatusPin(BMD-300Only,BMDware3.
1.
0(50))9.
1.
1DescriptionConfiguringcertainBMD-300pinsasthestatuspinerroneouslycausesanotherGPIOpintobeconfiguredasanoutput.
9.
1.
2DetailsWhensettingthestatuspinwiththeBMDwareValue,themappedpinisconfiguredasthestatuspinasexpected.
However,theP0.
xpinmatchingtheBMDwareValueiserroneouslyconfiguredasanoutput.
TheerroneouslyconfiguredP0.
xpinisnotaffectedbychangesinthestateofthestatuspinanditsstatusasanoutputisnotreflectedwhenusingtheat$gcgetorBLEGPIOConfigGetcommands.
CommandstoconfiguretheP0.
xpinwilloverwritetheerroneousconfigurationandtheP0.
xpinwillthenworkasexpected.
TheupdatedsetofavailableBMD-300pinsforthestatusindicationisasfollows:BMD-300PinNameBMDwareValue13P0.
000x0014P0.
010x0115P0.
020x0219P0.
030x0320P0.
040x04ThesepinsaredocumentedastheonlyavailablepinsforthestatuspinalthoughanyfreeGPIOmaybeconfiguredasthestatuspin.
9.
1.
3ExampleoftheerrataConfiguresBMD-300Pin10,NameP0.
29,BMDwarevalue0x14(20)asthestatuspinwith:`at$gstc1400`Errata:ConfiguresBMD-300Pin10asexpected,butsetsBMD-300Pin38(P0.
20),asanoutputdriventoitsdefaultvalue.
9.
1.
4AdditionalNotesIftheaffectedpinnotused(NC),thentheerratacanbeignored.
9.
1.
5Workaround(Outputpins)Iftheaffectedpinisusedasanoutput,makesuretheaffectedpinisconfiguredafterconfiguringthestatuspin.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page38of399.
1.
6NoWorkaround(Inputpins)Iftheaffectedpinisusedasaninput,thenthepotentialformultipledriversonthesamecircuitexists.
Westronglyrecommendavoidingthiscombination.
BMDwareDatasheetBeaconandUART-over-BLE05/06/2016BMDWARE-DS-V2.
3Page39of3910.
RevisionHistoryDateRevisionAuthorNotes05/27/20151.
0EPSInitialRelease06/04/20151.
1EPSFixATmodereadUARTparitycommanddefinition08/14/20151.
2EPSFixavailableparitytype,otherminoredits11/16/20151.
3BRAddedGPIOcommandsandrelateditemsAddedat$conadvcommandAddedat$buuid,at$bmjid,at$bmnidandat$badintDeprecatedat$uuid,at$mjid,at$mnidandat$adintUpdatedPinDescriptiontableMovedrevisionhistorytotheendofthedocument11/23/20151.
3EPSUpdates03/01/20161.
4BRCorrectedresponseto0x53GetGPIO03/29/20162.
0BRAddedBMD-300informationthroughout04/20/20162.
0EPSReorganizedcommandsections,addednewsections,addnewatcommands04/26/20162.
1EPSAddedATModeUARTconfiguration,fixpinnumberinATModesection,newlogo04/29/20162.
2EPSUpdatewithErrataregardingConnectionStatuspin,updatedocumentationforstatuspin,addATModeexamplesandinformationregardinginputandUARTparametersforATMode05/06/20162.
3EPSFixrestartcommandbytes,fixsectionnumbering
已经有一段时间没有听到Gigsgigscloud服务商的信息,这不今天看到商家有新增一款国际版线路的美国VPS主机,年付也是比较便宜的只需要26美元。线路上是接入Cogentco、NTT、AN2YIX以及其他亚洲Peering。这款方案的VPS主机默认的配置是1Gbps带宽,比较神奇的需要等待手工人工开通激活,不是立即开通的。我们看看这款服务器在哪里选择看到套餐。内存CPUSSD流量价格购买地址1...
继阿里云服务商推出轻量服务器后,腾讯云这两年对于轻量服务器的推广力度还是比较大的。实际上对于我们大部分网友用户来说,轻量服务器对于我们网站和一般的业务来说是绝对够用的。反而有些时候轻量服务器的带宽比CVM云服务器够大,配置也够好,更有是价格也便宜,所以对于初期的网站业务来说轻量服务器是够用的。这几天UCLOUD优刻得香港服务器稳定性不佳,于是有网友也在考虑搬迁到腾讯云服务器商家,对于轻量服务器官方...
inlicloud怎么样?inlicloud(引力主机)主要产品为国内NAT系列VPS,目前主要有:上海联通NAT(200Mbps带宽)、宿州联通NAT(200Mbps带宽)、广州移动NAT(200Mbps带宽)。根据官方的说法国内的NAT系列VPS不要求备案、不要求实名、对中转要求也不严格,但是,禁止任何形式的回国!安徽nat/上海联通/广州移动/江门移动nat云主机,2核1G/200Mbps仅...
hwinfo32为你推荐
ejb开发什么是ejb?如何快速收录如何让百度快速收录分词技术搜索引擎采用的是什么技术?虚拟机软件下载谁有好用的虚拟机软件?网络虚拟机VMware虚拟机三种网络模式的区别有哪些?服务器连接异常服务器连接异常是怎么回事啊,怎么解决微信怎么看聊天记录怎样查找一个人的微信聊天记录cisco防火墙思科防火墙策略extended什么意思厦门铁通厦门铁通宽带可以免费升级到2m么?网页窗口最大化怎样才能打开网页窗口自己最大化
西安虚拟主机 南通服务器租用 国外vps 注册cn域名 ubuntu更新源 debian源 免费个人网站申请 双拼域名 申请个人网站 165邮箱 100m空间 域名和空间 闪讯官网 双11促销 葫芦机 香港博客 碳云 hosting24 windows2008 2016黑色星期五 更多