in Classic Cars Rogier van der Hee rogierzoidbergsolutionsnl Rogier van der Hee 2007 Zoidberg Solutions independent developer ZZP PlantScout app iOS Android for variety ID: 719911
Download Presentation The PPT/PDF document "Application of Bluetooth Low Energy" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
Application of Bluetooth Low Energy
in Classic Cars
Rogier van der Hee
rogier@zoidbergsolutions.nl
Slide2
Rogier van der Hee
2007 - : Zoidberg Solutions (independent developer - ZZP) PlantScout app (iOS / Android) for variety assessment for orchid
growers: www.plantscout.eu Invoice
Management for Blue 10: www.inkoopfacturen.nl
ATC simulation tests for candidate selection purposes for
EUROCONTROL: www.eurocontrol.int/services/feast Ignition
systems for classic cars: www.123ignition.nl
2Slide3
The project: classic car ignition systems
How does an engine work: Suck -> Squeeze -> Bang -> Blow!Modern cars ignition is done purely electronically, classic car it is mechanical on the crankshaft
3Slide4
What does an ignition system do?
Timing of the spark for optimal combustion, right at the moment the cylinder is at the top dead center.Based on piston position (advance) and power demand (vacuum)
4Slide5
Why electronic ignition in your classic car?
Why electronic?No more maintenanceBetter startingBetter torque in lower RPMWhy programmable?Almost endless combinations possible: different curve per engine, distributor and fuel (petrol, ethanol, LPG)Fabrication is unified: 1 embedded software program
Best possible setup for your specific engine: tuners and export hobbyists (racing)Because we can
5Slide6
Atmel
ATMega16
8Mhz-40 – 120 Celsius
16kb Flash
Windows XP / 7 / 8.Net 2.0 app
RPM
Battery
Temperature
Manifold
pressure
Ignition
advance
Today
Serial over USB
Rx
Tx
6Slide7
Atmel
ATMega
8Mhz-40 – 120 Celsius
16kb Flash
IPhone 5SDual core 1.3 GHz ARM v8
16/32/64 Gb1 GB RAM
DDR3
?
RPM
Battery
Temperature
Manifold
pressure
Ignition
advance
The challenge
Rx
Tx
7Slide8
Wireless hardware options
Classic Bluetooth 1.1/2.0/3.0 (2002-2009) Slow, long latency, requires MFI program for Apple Smart Ready: Dual mode device with 4.0 and classic, Smart is 4.0 onlyZigBee
, mostly home automationNo frequency hopping, not present in devices. No hardware support in phones.Wi-Fi Point to point difficult (Direct), software hard, optimized for large data transfer
ANT (+), mostly health and fitnessProprietary, + since 2011 requires certification. Native Android, no iOSNFCRange limited to 5 cm, targeted for payments. Android, no iOS
8Slide9
Why Bluetooth 4 Low Energy?
Hype “Internet of Things”: enables low cost, low powersensor communication between endless combination ofdevices, wearables, you name it!Proximity and out of range detection (geofencing)Fast connections (10
msec) and low data latency (3-6 msec): very responsive
appsAdaptive Frequency Hopping (AFH), resilient to interferenceBroadcast support (iBeacons
)Connectionless always off technologyLow power consumption: ~30μA average consumption with 1 second data interval, equivalent to 330 days on a single coin cell
Range up to 280 meters (in practice about 10-30 meters)No more MFI program for Apple
9Slide10
Real life range sample
Direct line of sight
30m
Faraday was right!
Plastic casing in prototype
Still connected!
Static timing LED
Bluetooth Status LED
Ignition behind fan
under hood
10Slide11
Hardware implementation
System-on-Chip: Bluetooth needs external controller with embedded software to runOption 1: buy separate chip: TI CC2540/CC2541, Nordic nRF8001
Complete controlHigh startup costs (FCC, dev kits etc
etc)Option 2: buy integrated solution:BlueGiga, BlueRadios
, CSR, NordicNo FCC approvalAvoid high dev kit licenseReady to go
Drawback: “vendor” libraries
CC2540
under
RF
Shield
Antenna
EEPROM
Crystal /
Transistor
11Slide12
Bluetooth Low Energy Architecture
GAP
ATT
L2CAP
GATT
GAP Role Profiles (Master / Slave)
GATT Profiles
User Application
Host Controller Interface (
HCI
)
SMP
Host
Controller
Link Layer (LL)
Physical Layer (
PHY
)
Application
12Slide13
Generic Acces Profile (GAP)
Ensures basic connection handling: discovery of what type of Bluetooth profile a device supportsCommon for Bluetooth 1/2/3/4, basis for all profilesHandles advertising and rolesHandles security (SMP):Bonds or pairing between devicesAccess and address security
13Slide14
Generic Access Profile (GAP) : Roles
Central
Peripheral
Peripheral
Broad- caster
Obser-ver
14Slide15
GATT Profile
Bluetooth SIG defines standard Profiles for interoperability: HID, Health, Hear Rate, Proximity, Cycling Power, Find Me, etc
Profile
Service
Characteristic
Characteristic
C# sort of comparison:
Profile = Model
Service = Class
Characteristic = Property
Descriptor = Property Attribute
15Slide16
GATT Characteristic
Value types: BroadcastReadWrite Write without responseNotifyIndicate (needs reply)Descriptors describe:Presentation formatValid Range
User description…See Bluetooth.org for complete specification
Characteristic
Value
Descriptor
Descriptor
16Slide17
Overhead
Protocol Data Unit (
PDU
)
Overhead
Preamble
Advertisement Packet layout
Acces
Address
Adv
Header
Payload
Length
Advertiser
Address
Payload
(31 bytes)
CRC
17Slide18
Support per platform
18Slide19
Show me the money … code!
Example for reading the Battery Level characteristiciOSAndroidWindows 8.1 (or how far I got ..)Windows Phone 8.1 (theory only ..)19Slide20
Security
Security modes“Just Works”, no pairing needed to connect (doesn’t work with Windows 8)Simple Pairing (Authorization only, no PIN)Secure Authenticated Pairing with MITM protection (PIN)Triggered by setting certain permissions on characteristicsPersonal experience so far: authenticated pairing is difficult to implement to cover all use cases for devices without a display. Also there are bugs in both iOS and Android which makes the experience cumbersome
20Slide21
iBeacons
Hype in the advertisement market, new way to personalize shop experiencesBroadcast devices, not connectableSpecial layout of Advertisement PacketCompany identifier code set to 0x004C -> AppleiBeacon proximity uuid in manufacturer data
Major / minor Id (for grouping beacons: home->living, attic, basement)Measured Power (RSSI in dB at 1m, translated to immediate, near, far)
21Slide22
Conclusions / Lessons learned
BLE is fast and fluid from end user point of viewHardware integration is always a big painWriting polished apps takes an incredible amount of time ;-)22