Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid...

40
Flicker: Rapid Prototyping for the Batteryless Internet-of- Things Josiah Hester Jacob Sorber @ Clemson SenSys’17—November 7, 2017 [email protected] josiahhester.com Bluetooth LE Gyro Accelerometer Solar and RFID Harvesters (Back)

Transcript of Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid...

Page 1: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Flicker: Rapid Prototyping for the Batteryless Internet-of-Things

Josiah Hester Jacob Sorber @ Clemson

SenSys’17—November 7, 2017

[email protected] josiahhester.com

Bluetooth LE

Gyro

Accelerometer

Sola

r and

RFI

D Ha

rves

ters

(Bac

k)

Page 2: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

2image: Wikimedia Commons, John Seb Barber

Page 3: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Infrastructure PipelinesBridges Roads

Batteryless Sensing Applications

3

Buildings Occupancy

Energy Monitor

Wearables Clothing Jewelry

Implants

Wildlife Tracking Small animal Endangered

Extreme Environments Deep Sea, High Altitude, Space

Page 4: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Intermittent Computing

4

As small as possible

• Minimal energy storage (Cap)

• Harvest energy (RF, Solar, Glucose)

Run when you can

• Frequent failures

• Erratic supply

WISP

Page 5: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

What’s Next for Platforms?

5

?

Page 6: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Timekeeping

6

Capacitor or SRAM as Hourglass

• timekeeping across power failures

• fine grained and reliable

MCU

Volts

inittimekeeper

remanence decay computetime from

decay

Timekeeper

Volts

Timemcu power-on mcu power-off mcu power-on

Persistent Clocks for Batteryless Sensing Devices, Josiah Hester et al. ACM TECS, 2016

[ACM TECS]

Page 7: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Federated Energy

7

Multiple capacitors

• One for microcontroller

• One for each peripheral

• Static charge rate and priority

[Sensys’15]

Charge Controller

CoreEnergyHarvesting

Sensor Radio

+

-

Compute Sample SendReceive

Page 8: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Platform Challenges

8

Limited Hardware Options

• RFID Focused, like the WISP

• Or build from scratch

Limited Flexibility

• No prototyping, no changing tasks

Platforms Lack Modern Amenities

• No timekeeping or energy management

What’s Next?

Page 9: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Flicker

9

Rapid Prototyping for the Batteryless Internet-of-Things

Reconfigurable Hardware

• Common interconnect

Reconfigurable tasks

• Task priority and energy set at runtime

Multi source harvesting

• For multi-modal applications

Bluetooth LE

Gyro

Accelerometer

Sola

r and

RFI

D Ha

rves

ters

(Bac

k)

Page 10: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Flicker Modules

10

Common interconnect supports…

CommunicationHarvesting Motion Sense Enviro SenseComputation

Kinetic

RFID

Solar

433MHz Radio Transciever

Bluetooth LE

Magnetometer

Gyro

Accelerometer

Leaf Wetness

Humidity & Temp

Barometer

Peripherals

User Interface

Touch Slider

LCD Screen

Page 11: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Universal Peripheral Interface

11

EM-CTRLUARTSPIAnalogVCC/GND

EM-CTRLI2CSPIAnalogVCC/GND

EM-CTRLUARTSPIAnalogVCC/GND

P1

P2

P3

Page 12: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Energy Management

12

Every sensor / peripheral is unique

• unique tasks

• unique energy cost

• unique power draw

• unique voltage range

Handle with care…

Page 13: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Environmental Tasks

13

Supp

ly V

olta

ge (

V)

0

1

2

3

4

5

6

MCU

Hum

idity

Sens

or

Leaf

Wet

ness

Radi

o

Voltage requirements vary

Usable Range

Page 14: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Energy Costs

14

Environmental Monitoring

Ener

gy C

ost (

mJ)

0

25

50

75

100

Task

1s Computation 10x Leaf Readings

10x Humidity Readings

Send 2 Message

Page 15: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Optimistic Scheduling

15

Sens

or V

olta

ge

0

1

2

3

4

Time (s)0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8

ResetAttemptSendPkt

Sensor

Task coupling increases failure

Page 16: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

UFoP / FedEnergy

16

Multiple capacitors

• One for microcontroller

• One for each peripheral

• Static charge rate and priority

[Sensys’15]

Charge Controller

CoreEnergyHarvesting

Sensor Radio

+

-

Compute Sample SendReceive

Page 17: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Relax Voltage Constraints

17

Supp

ly V

olta

ge (

V)

0

1

2

3

4

5

6

MCU

Hum

idity

Sens

or

Leaf

Wet

ness

Radi

o

Federated Range

Centralized Range

Page 18: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Results

18

3x fewer power and peripheral failures

• Compared to centralized energy

6x more MCU availability

• Allowing for more programmer control

Side-effect: more energy harvested!

• 17% more

[Sensys’15]

Page 19: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Rapid Prototyping?

19

Small task changes obsolete hardware

• radio message size, sampling rates

Priority is hardware defined

• no priority inversion allowed

Peripherals are set in stone

• can’t swap sensors or peripherals

Page 20: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Flicker Tasks

20

Dynamic Federated Energy

• Extension to FedEnergy

Tasks set at compile time

• Task priority and energy level

Enables rapid testing and prototyping

• Or even runtime adaptation

(2) temp

(1) light

(3) send

(1) temp

(2) light

(3) send

Enable priority change.

Page 21: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Flicker Architecture

21

EnergyHarvesters

ComputeCore

Harvester Interface

MCU1st stage Capacitor

Solar Kinetic

Current FlowData/Control Signals

Failure-TolerantTiming

Harvester Interface

ChargingHysteresis

Peripheral

Cap

ChargeCtrl

Peripheral Interface

Int. Ctrl

Peripheral

Cap

ChargeCtrl

Peripheral Interface

Int. Ctrl

Radio Sensor

Page 22: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Flicker Peripherals

22

EnergyHarvesters

ComputeCore

Harvester Interface

MCU1st stage Capacitor

Solar Kinetic

Current FlowData/Control Signals

Failure-TolerantTiming

Harvester Interface

ChargingHysteresis

Peripheral

Cap

ChargeCtrl

Peripheral Interface

Int. Ctrl

Peripheral

Cap

ChargeCtrl

Peripheral Interface

Int. Ctrl

Radio Sensor

Charge control

• Set charging priority

Interrupt control

• Set wakeup

Peripheral control

• Isolate, enable, and control, peripheral

Also sets total energy storage limit.

Peripheral Controller

Page 23: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Task Energy Revisited

23

Ener

gy C

ost (

mJ)

0

25

50

75

100

Task

1s Computation 10x Leaf Readings

10x Humidity Readings

Send 2 Message

Environmental Monitoring

Page 24: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Task Energy Revisited

24

Ener

gy C

ost (

mJ)

0

25

50

75

100

Task

3s Computation 5x Leaf Readings

5x Humidity Readings

Send 1 Message

Environmental Monitoring

Page 25: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Tasks Energy Revisited

25

Supp

ly V

olta

ge (

V)

0

1

2

3

4

5

6

MCU

Hum

idity

Sens

or

Leaf

Wet

ness

Radi

o

Programmable energy.

10x Readings

2 Message

10x Readings

Page 26: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Tasks Energy Revisited

26

Supp

ly V

olta

ge (

V)

0

1

2

3

4

5

6

MCU

Hum

idity

Sens

or

Leaf

Wet

ness

Radi

o

First Priority

Page 27: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Tasks Energy Revisited

27

Supp

ly V

olta

ge (

V)

0

1

2

3

4

5

6

MCU

Hum

idity

Sens

or

Leaf

Wet

ness

Radi

o

Dynamic charging priority.

Page 28: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Reconfigurable Hardware

28

Solar powered pedometer?RFID compass?

Page 29: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Multi Source Harvesting

29

RFID

RFID

RFIDSolar

0

1

2

3

4

0 10 20 30Time (s)

Volta

ge (V

)

Multi Source Harvesting

Compute: MSP430Peripherals: Radio, Humidity, TempHarvesters: RFID, Solar

Page 30: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Flicker Workflow

30

Configuration Info

PrototypeAssembly

Step 1: Choose harvester(s) and peripherals.

Step 2: Desktop program discovers and validates peripherals and harvesters.

Step 4: Peripherals mapped to ports in code. Libraries linked.

Discovery

Calibration

HardwareInfo

Firmware Generation

Step 3: User sets interrupt points, and task priority.

IV Surfaces

Testing

Deployment

Hardware Generation

User Code

Step 5: Developer tests code in the lab and in the actual environment.

Step 6: Miniaturized, application specific hardware is automatically generated from prototype.

ExistingNovel

Iterative refinement now possible.

Page 31: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

1. Energy Management Overhead

2. Timekeeper and RF Harvesting Perf.

3. System Usability User Study

Evaluation

31

Page 32: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Overhead

32

Parameter Value

Compute Board Quiescent Current 5.77 µA

Peripheral Quiescent Current 4.47 µA

Peripheral Voltage Range 1.7 to 5.5 V

Peripheral Current Range 0.0 to 40 mA

Page 33: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

User Study

33

1. Does Flicker enable rapid hardware prototyping?

2. Are the mechanical functions intuitive?

3. Does Flicker support a broad application?

19 participants, 76 devices, 9.5 hand-on hours

Page 34: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

User Study – Method

34

1. Entry survey on competency.

2. Handouts on Flicker, and sensing.

3. Asked to read prompt and prototype

multiple devices with Flicker.

4. Exit survey including System Usability

Survey (SUS)

Page 35: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

User Study – Sample

35

1. 19 CE / CS juniors and seniors

2. 2 to 5 years computing education; 2 to 10

years of programming experience

3. All self-rated knowledge of embedded

platforms as slightly below average

Page 36: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

User Study – Results

36

Interface Type SUSScore

Cell Phone 66.55

Graphical User Interface 75.24

Web Pages and Applications 68.05

Flicker Platform 84.9

1. 95% Flicker… create devices for many different applications.

2. 90% would use Flicker on a new IoT project if it was available

Page 37: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

User Study – Results

3719 participants, 76 devices, 9.5 hand-on hours

%

0

25

50

75

100

Percentage AgreedShort Term Long Term Safety-Critical

Q. Flicker devices could be deployed in a … [short term, long term, safety critical] application.

Page 38: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Future Work

38

1. Runtime Adaptation

2. Testbed, Module Development

3. Community Building

Page 39: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Flicker

39

Rapid Prototyping for the Batteryless Internet-of-Things

Reconfigurable Hardware

• Common interconnect

Reconfigurable tasks

• Task priority and energy set at runtime

Multi source harvesting

• For multi-modal applications

Bluetooth LE

Gyro

Accelerometer

Sola

r and

RFI

D Ha

rves

ters

(Bac

k)

https://github.com/PERSISTLab/

Page 40: Flicker: Rapid Prototyping for the Batteryless Internet-of- Things · 2018-03-12 · Flicker: Rapid Prototyping for the Batteryless Internet-of-Things Josiah Hester Jacob Sorber @

Flicker: Rapid Prototyping for the Batteryless Internet-of-Things

Josiah Hester Jacob Sorber @ Clemson

SenSys’17—November 7, 2017

[email protected] josiahhester.com

Bluetooth LE

Gyro

Accelerometer

Sola

r and

RFI

D Ha

rves

ters

(Bac

k)