SlideShare a Scribd company logo
1 of 28
Download to read offline
Decoding the airspace 
above you 
with Java and $7 hardware 
Bert Jan Schrijver 
bertjan@jpoint.nl 
@bjschrijver
Outline 
• Background 
• Software Defined Radio 
• About ADS-B 
• Decoding ADS-B 
• Demo 
@bjschrijver
TL;DR 
• Now -> planes & Java 
• Afterwards -> free beer (at the bar) 
@bjschrijver
How it all started… 
@bjschrijver
Software Defined Radio 
• Radio communication system 
• Components implemented in software 
• Cheap DVB-T with RTL2832U chip ($7) 
• Hence: RTL-SDR 
• Details on www.rtl-sdr.com 
@bjschrijver
Software Defined Radio 
@bjschrijver 
Demo
So how about Java? 
@bjschrijver
Java and RTL-SDR 
• RTL_TCP: Provides socket for RTL-SDR 
device 
• Java can connect, set frequency and 
stream data 
• Decode data signal in Java 
• First try: AIS (ship traffic) 
• First tries never succeed… 
@bjschrijver
ADS-B 
• Automatic Dependent Surveillance 
Broadcast 
• Monitoring and collision avoidance 
• Installed on all airliners 
• Reports identity, position and more 
• Part of US and EU regulation 
@bjschrijver
ADS-B 
@bjschrijver 
Source: simflight.nl
Java and ADS-B 
• Java connects to RTL_TCP socket 
• But now what? 
• No open source Java decoders 
available 
• No other option than to write own 
decoder… or is there? 
@bjschrijver
(insert legal notice here) 
@bjschrijver
How stuff works 
@bjschrijver
@bjschrijver 
Demo! o/
How stuff works 
@bjschrijver
That’s cool, but… 
• In-house reception is sub-optimal 
• Always-on service would be nice 
• Laptop needed for work now and then 
@bjschrijver
Getting serious 
@bjschrijver
We love data 
• Keep system running for a while 
• Nicely stocked MongoDB 
• Now what? 
• Visualize it! 
@bjschrijver
Antenna range 
@bjschrijver
1 hour of data 
@bjschrijver
2 hours 
@bjschrijver
4 hours 
@bjschrijver
8 hours 
@bjschrijver
16 hours 
@bjschrijver
@bjschrijver 
That’s all!
@bjschrijver 
Questions?
Thanks for your time! 
Please care about 
conference quality.
Liked it? 
Tweet it! 
@bjschrijver 
bertjan@jpoint.nl

More Related Content

Similar to J-Fall 2014: Decoding the airspace above you with Java and $7 hardware

Devoxx BE 2015 - Decoding the air around you with Java and $7 hardware
Devoxx BE 2015 - Decoding the air around you with Java and $7 hardwareDevoxx BE 2015 - Decoding the air around you with Java and $7 hardware
Devoxx BE 2015 - Decoding the air around you with Java and $7 hardwareBert Jan Schrijver
 
GOTO Berlin 2019 - Building a self-driving RC car
GOTO Berlin 2019 - Building a self-driving RC carGOTO Berlin 2019 - Building a self-driving RC car
GOTO Berlin 2019 - Building a self-driving RC carBert Jan Schrijver
 
JavaZone 2016: Continuous performance
JavaZone 2016: Continuous performanceJavaZone 2016: Continuous performance
JavaZone 2016: Continuous performanceBert Jan Schrijver
 
OpenValue meetup January 2019 - Continuous performance - Load testing for dev...
OpenValue meetup January 2019 - Continuous performance - Load testing for dev...OpenValue meetup January 2019 - Continuous performance - Load testing for dev...
OpenValue meetup January 2019 - Continuous performance - Load testing for dev...Bert Jan Schrijver
 
JUGM meetup March 2019 - Continuous performance - Load testing for developers...
JUGM meetup March 2019 - Continuous performance - Load testing for developers...JUGM meetup March 2019 - Continuous performance - Load testing for developers...
JUGM meetup March 2019 - Continuous performance - Load testing for developers...Bert Jan Schrijver
 
Workshop: Introductie tot Python
Workshop: Introductie tot PythonWorkshop: Introductie tot Python
Workshop: Introductie tot PythonVincent Claes
 

Similar to J-Fall 2014: Decoding the airspace above you with Java and $7 hardware (6)

Devoxx BE 2015 - Decoding the air around you with Java and $7 hardware
Devoxx BE 2015 - Decoding the air around you with Java and $7 hardwareDevoxx BE 2015 - Decoding the air around you with Java and $7 hardware
Devoxx BE 2015 - Decoding the air around you with Java and $7 hardware
 
GOTO Berlin 2019 - Building a self-driving RC car
GOTO Berlin 2019 - Building a self-driving RC carGOTO Berlin 2019 - Building a self-driving RC car
GOTO Berlin 2019 - Building a self-driving RC car
 
JavaZone 2016: Continuous performance
JavaZone 2016: Continuous performanceJavaZone 2016: Continuous performance
JavaZone 2016: Continuous performance
 
OpenValue meetup January 2019 - Continuous performance - Load testing for dev...
OpenValue meetup January 2019 - Continuous performance - Load testing for dev...OpenValue meetup January 2019 - Continuous performance - Load testing for dev...
OpenValue meetup January 2019 - Continuous performance - Load testing for dev...
 
JUGM meetup March 2019 - Continuous performance - Load testing for developers...
JUGM meetup March 2019 - Continuous performance - Load testing for developers...JUGM meetup March 2019 - Continuous performance - Load testing for developers...
JUGM meetup March 2019 - Continuous performance - Load testing for developers...
 
Workshop: Introductie tot Python
Workshop: Introductie tot PythonWorkshop: Introductie tot Python
Workshop: Introductie tot Python
 

J-Fall 2014: Decoding the airspace above you with Java and $7 hardware