IoT Midterm Review
In Bluetooth smart, a client and a peripheral in a trusted relationship can send an authenticated message over an unencrypted link using the [answer] key.
LTK STK IRK Temporary Key XCSRK
In Bluetooth BLE, the worst case Master latency for modifying a Server device attribute is defined by which connection parameter?
Peripheral Profile Setting Slave Latency XConnection Interval Supervisory Timeout
for which connection even n would the channel need to be remapped due to wifi channel 11 which corresponds to BLE channels 24-32 connection event n=0 f(0) = channel 5 and hop = 14
1 2 3 X4 5 6 X7
max latency for slave to pudate client with an attribute notificiation when the conn interval is set to 25ms and slave latency is set to 4?
25ms 70ms X 100ms 125ms 175ms 225ms
enter the line number in the code below that should be protected by a critical section
32 34: curr_event = read_temp 24 20
At what temperature is a coin-cell battery capacitor assisted power source more important?
70C 25C 105C X0C
what digital radios could be used to send VoIP or voice signals
ANT Xbluetooth SCO/eSCO BLE Xwifi
Match the below Bluetooth Smart messages to whether a response is required or not.
Indications - Response Required Write Command - No Response Read request - Response Required Notification - No Response
select all that are atomic in nature
i++ for(i=0; i < 1000; i++) {a = a*i} X ADC0->IEN |= ADC_IEN_SINGLE X sub r1, r2, r3
a critical section must be (select all that apply)
Always a single instruction in length X (Correct answer)Placed around non-atomic read/modify/write accesses to global variables inside functions called from outside interrupt context when these variables are also modified within an interrupt. (Incorrect answer)As long as needed to cover any functions which might reference any global variables Used inside an interrupt function when accessing a global variable, even when interrupt nesting is disabled (Incorrect answer)Used inside an interrupt function when accessing a global variable, even when interrupt nesting is disabled. (Incorrect answer)Placed around any local variable access Placed around any global variable access. X As short as possible while still protecting any necessary variables. X? Placed around accesses to global variables inside functions called from non-interrupt context when these variables are also read in an interrupt.
Match the function that most commonly corresponds to either a Bluetooth Smart Client or Peripheral.
Bluetooth Smart Profile - Server, Peripheral, Client, Both, Master Advertises - Server, Peripheral, Client, Master Device - Client, Master Starts Attribute Protocol Procedures - Server, Peripheral, Client, Both, Master Controls Connection Interval and Slave Latency - Both,
A BT Mesh node needs all of these key(s) to relay a message? Network Key Only A BT Mesh node needs all of these key(s) to read a message? Both the Network and Application Keys
Both the Network and Application Keys Application Key Only Network Key Only
Energy modes and what the lowest mode is for the CPU, I2C, LETIMER0 and GPIO
CPU - EM0 I2C - (no interrupts - EM2)? LETIMER0 - EM3 GPIO - EM4?
Select all that apply or that are generally true regarding interrupts on an ARM CortexM4 micro controller by default
For an interrupt to be triggered, only the Interrupt Enable bit in the peripheral's IEN register needs to be set Interrupts are cleared upon reading the peripheral's interrupt flag, IF, register X For an interrupt to be triggered, both the Interrupt Enable bit in the peripheral's IEN register needs to be set as well as the peripheral's interrupt needs to be enable in the NVIC register, Nested Vector Interrupt Controller If an event corresponding to an enabled interrupt occurs while interrupts are disabled using CORE_ATOMIC_IRQ_DISABLE(), the interrupt will not occur until the next event after CORE_ATOMIC_IRQ_ENABLE() X If an event corresponding to an enabled interrupt occurs while interrupts are disabled using CORE_ATOMIC_IRQ_DISABLE(), the interrupt will occur after CORE_ATOMIC_IRQ_ENABLE()
For the device highlighted by the red circle, select all the Bluetooth Mesh Node type(s) that apply.
Friend Node Client XRelay Node Low Power Node Server XProxy Node
AP
GATT layer builds on top of this and it contains the commands issued for attributes (read/write)
In programming a low energy micro controller, select all that would be likely to achieve a lower power consumption
On a Blue Gecko design which uses EM3 for sleep modes, change the Blue Gecko I2C master configuration to use 100KHz instead of 400KHz frequency Poll the ADC to determine when the ADC conversion is completed instead of using Interrupts X Disable all unused peripheral clocks In an event driven system with a high ratio of static to dynamic power consumption, increase the clock frequency X Utilize DMA to retrieve data for designs with large data transfer sizes and low CPU requirements
Motivations for keeping Bluetooth BLE packet sizes short include (select all which apply)
Support high bandwidth applications XAvoiding the need for radio recalibration XDecreasing duration of peak power consumption XDecreasing peak power consumption Avoiding frequency shifts due to chip temperature?
in the following code why are the core_enter/exit_critical function calls used
To allow the read-modify-write of myGlobalFlags to be atomic. i.e the read-modifywrite cannot be interrupted by an interrupt service routine that also modifies myGlobalFlags.
in BLE an oberver consumes more energy due to the requriement it does not know when in the time domain a bt device may advertside, so it must listen for an extended period of time to cat the advertisement
True
Your co-worker is concerned about radio peak current on your Bluetooth BLE device design impacting battery life. What are some suggestions you would offer to try to reduce the impacts of peak current consumption? (select any which apply)
X Adjust transmit strength down based on RSSI measurements. Use a smaller bulk capacitor on VCC to reduce the duration of the charge cycle. Use longer attribute lengths to increase transmit and receive time Avoid using Encryption if possible, since this increases the amount of processing performed while the packet is being received X Use a larger bulk capacitor on VCC to decrease instantaneous current draw from the battery
If you are viewing the Energy Profiler of the Blue Gecko running at 38MHz, and you measure the current to be 3.0mA, which energy state is it most likely in?
X EM1 EM2 EM3 EM0
In bluetooth BLE a broadcaster would typically be (select all which apply)
X GATT server - where is data and who is after it GATT client how radio is used: GAP GAP central device X GAP peripheral device
the BLE standard was designed with a goal to optimize these specifications
X minimize power consumption X minimize latency maximize data throughput for high bw applicaitons
select the true statement about an i2c device which has power turned off via load power management
X scl and sda pins on the chip should remain high for lowest power consumption a high level on scl or sda would likely result in current flow to the chip gorund pin through the ESD protection diode a high level on scl or sda would likely result in current flow to the chip power pin through the esd protection diode
It is most beneficial to use event-driven program design in any of the following scenarios
XA. Events to handle occur seldomly B. The microcontroller in use does not support sleep modes C. The software implementation is not CPU intensive
Bluetooth Low Energy (or Bluetooth Smart) devices are geared for applications with the following characteristics. Select all that apply.
XAsynchronous communcations High bandwidth applications XSmall amounts of data Synchronous communications
Bluetooth LE Generic Attribute Profile (GATT) defines these peripheral types (select all which apply)
XClient Central XServer Peripheral
an ICs onboard esd diodes are designed to protect the IC from which of the following type of events
Xlightning strike Xpositive electrostatic discharge negative electrostatic discharge bus contention due to multiple devices driving the IO line
You are attempting to modify a Blue Gecko peripheral register but the register does not seem to be updating after you've written it. Which of the following is likely to explain the problem?
You forgot to disable global interrupts X The peripheral clock tree is not setup properly You forgot to enable global interrupts You forgot to enable peripheral interrupts You forgot to use a critical section macro around your initialization code
GATT
contains Database that server maintains and client looks at to try to access data
GAP
describes how the radio is used
select what is true about the Internet of Things (IoT)
must transfer data over a network must include devices with unique identifiers requires human to computer interaction requires a data rate of at least 1Mb/s
the BT 5 2Mbps PHY can save energy due all of the following
radio lower peak power Xradio on for a shorter period of time Xdevice can be in a sleep mode longer radio lower average power in long range scenarios
in BLE the worst case slave latency for updating master device is defined by which parameter
supervisory timeout connection interval peripheral profile settings slave latency?
in schematic below why not connect Vsensor directly to 3.3V
system would draw more current overall current would leak through C106 X if connected to 3.3V, load management would not be possible 3.3v is too high a voltage for the Si7021
load pwr management is most important when
the device being managed is: X used infrequently X? consumes a large amount of power when active consumes very little standby power when not in use used continuously X consuming a large amount of standby power when not in use
