We provide you an example smartphone client to access the ALEN car CAN data streams.
Happy coding with the Bosch IoT Lab challenge!
- Pitch presentation: https://www.iot-lab.ch/wp-content/uploads/2019/03/START-Hack-pitch.pdf
- Workshop presentation: https://www.iot-lab.ch/wp-content/uploads/2019/03/START-Hack-workshop.pdf
- Documentation for all signals: https://www.iot-lab.ch/wp-content/uploads/2019/03/START-Hack-available-signals.pdf
- In assets/config.json is the IP address of the ALEN box specified
Car | Simulation | |
---|---|---|
REST/WS IP-Address | 192.168.8.10 | 130.82.239.210 |
MQTT Broker | 82.165.25.152:1883 | 82.165.25.152:1884 |
SSID | HUAWEI-2D17 | STARTHack2019 |
WLAN Password | Wa1z3gouASQ5! | STARTgoescoding |
SFTP Server (Port 22) | 82.165.25.152 | 82.165.25.152 |
SFTP User | ftp_read | - |
SFTP Password | ftp_read | - |
- Empatica E4 connect portal: ask our team!
- REST queries are done with the Google Volley library: https://developer.android.com/training/volley/
- Example queries are in MainActivity, GraphFragment, CANWebsocketClient, and SensorNameDropdownFragment
Query | Description | Examples |
---|---|---|
/list | Lists all available signals | {"gateway":{"signals":["speed", "acceleration", "steering_wheel_angle",...]}} |
/signal/'signal_name' |
Provides detailed information (e.g. description and last value) on a single signal. signal_name = a signal name from signal list |
{"signal":{"definition":{"name":"speed","unit":"Unit_PerCent","description":"in km/h"},"measurement":{"value":83.13725490196077,"utc":1550761385086735000}} |
/signal/'signal_name'/value |
Provides last value on a single signal. signal_name = a signal name from signal list |
{"measurement":{"value":83.13725490196077,"utc":1550761385086735000}} |
- Websocket connection is established with the Java WebSocket library: https://github.com/TooTallNate/Java-WebSocket
- Example implementations are the CANWebsocketClient and in LogFragment the CANDataClient class.
- IP_Adress/ws to open the Websocket
Event | Description | Examples |
---|---|---|
onOpen |
send on onOpen event a message on which signals and on which interval the websocket should receive messages signals = list of signal names samplerate = interval in ms withtimestamp = boolean if values should have a timestamp when the signal was last changed |
{"signals":["speed", "acceleration", "steering_wheel_angle",...], "samplerate":250, "withtimestamp":true} |
onMessage(String) | The event that receives incoming messages |
Without timestamp: {"signals": {"speed":{"value":234.32, "utc":0}, "acceleration":{"value": 21.21, "utc":0}, "steering_wheel_angle":{"value":432,26, "utc":0}, ...}} With timestamp: {"signals": {"speed":{"value":234.32, "utc":1551865379474022000}, "acceleration":{"value": 21.21, "utc":1551865379535070000}, "steering_wheel_angle":{"value":432,26, "utc":1551865379535070000}, ...}} |
Ask our team to borrow the devices!
- Empatica E4 Connect (online platform for accessing data): https://www.empatica.com/connect
- Streaming app from phone to E4 Connect (Android): https://play.google.com/store/apps/details?id=com.empatica.e4realtime
- Streaming app from phone to E4 Connect (iOS): https://itunes.apple.com/us/app/empatica-e4-realtime/id702791633
- Signals in detail: http://box.empatica.com/documentation/20141119_E4_TechSpecs.pdf
- PC client to read the data from device: https://we.tl/t-cXHvADb4fk
- Signals in detail: https://www.iot-lab.ch/wp-content/uploads/2019/03/Firstbeat-SPORTS-Physiological-and-GPS-variables.pdf
- The car interior of the future: https://www.youtube.com/watch?v=iSVt5Ja0ZCk
- Volkswagen Connect: https://www.vwconnect.com/driving-style-analysis/
- Mercedes InScore (only in German): https://www.mercedes-benz-bank.de/content/mbbank/de/produkte/versicherung/telematik-autoversicherung.html
- A more general approach: https://dl.acm.org/citation.cfm?id=3133939
- Apple Watch EKG monitor: https://www.youtube.com/watch?v=3cE5kA6XDSY
- Empatica Embrace 2: https://www.empatica.com/
- A stress related approach: https://ieeexplore.ieee.org/abstract/document/7744577
- Tesla Santa Mode as general example: https://www.youtube.com/watch?v=79Vx3spRFBk
- Mercedes Vivoactive: https://www.garmin.com/en-US/blog/general/garmin-collaborates-with-daimler-to-bring-connected-features-to-mercedes-benz-vehicles-with-the-vivoactive-3-gps-smartwatch/
- Audi Fit Driver: https://www.quattroworld.com/audi-news/audi-fit-driver/
- Official START hack website: https://starthack.ch/
- Bosch IoT Lab website: https://www.iot-lab.ch/