GithubHelp home page GithubHelp logo

seco / esp8266-plane-spotter-color Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bodmer/esp8266-plane-spotter-color

0.0 1.0 0.0 663 KB

Color version of the ESP8266 Plane Spotter

License: MIT License

C++ 21.60% C 74.35% Arduino 4.05%

esp8266-plane-spotter-color's Introduction

Adapted by Bodmer for use with latest TFT_ILI9341_ESP and JPEGDecoder library from my repository.

These are the connections assumed for this forked copy of the sketch:

The typical setup for a NodeMCU1.0 (ESP-12 Module) is :

  • Display SDO/MISO to NodeMCU pin D6 <<<<<< This is not used by this sketch
  • Display LED to NodeMCU pin 5V or 3.3V via a 56 Ohm resistor
  • Display SCK to NodeMCU pin D5
  • Display SDI/MOSI to NodeMCU pin D7
  • Display DC/RS (or AO) to NodeMCU pin D3
  • Display RESET to NodeMCU pin D4 <<<<<< Or connect to NodeMCU RST pin
  • Display CS to NodeMCU pin D8
  • Display GND to NodeMCU pin GND (0V)
  • Display VCC to NodeMCU pin 5V or 3.3V

Note: only some versions of the NodeMCU provide the USB 5V on the VIN pin, To confuse matters some NodeMCU clone board pins are mislabeled and D4 and D5 are swapped!

There are some variants of the common 2.2" and 2.4" ILI9341 based displays:

  • Some are fitted with a transistor switch so the LED can be PWM controlled
  • Some have no transistor and no current/brightness limit resistor, so use 56 Ohms between the LED pin and 5V (or 3.3V)

If 5V is not available at a pin you can use 3.3V but backlight brightness will be lower.

If the TFT RESET signal is connected to the NodeMCU RST line then define the pin in the TFT library User_Config.h file as negative so the library ignores it, e.g. TFT_RST -1

##Original master repository text follows:

#ESP8266 Plane Spotter Color

This is the repository of the ESP8266 Plane Spotter Color. It downloads data from web APIs and displays aircrafts close to your location on a map.

The related blog post

https://blog.squix.org/2017/01/esp8266-planespotter-color.html

Video

ESP8266 Plane Spotter Color

Features

  • Beautiful startup splash screen
  • Automatic geo location by using WiFi scanning. List of visible SSIDs identifies your location
  • Automatic download of JPEGs from MapQuest
  • Detailed information about the nearest aircraft
  • Flight track: last 20 waypoints per aircraft displayed

Planed Features

  • Enable touch screen
    • Zoom in/out by button
    • shift map center
    • call location service again
    • select aircraft of interest
  • only download map if center of map, scale or map type changed

## Known Issues

  • Flickering with every update: not enough memory for frame/ double buffering
  • Sometimes waypoints get lost
  • Encoding problems when displaying airport names containing non-ASCII characters (e.g. Zürich)

## Hardware Requirements

This project was built for the following hardware:

Optionally you can get the connector PCB in the kicad sub directory. This allows for a easy soldering

Wiring/ Schema

If you are currently prototyping this shows how to setup the connections for the above mentioned ILI9341 display

Wiring

Schema

## Libraries

Install the following libraries:

WifiManager by tzapu

WifiManager

Json Streaming Parser by Daniel Eichhorn

![Json Streaming Parser] (images/JsonStreamingParserLib.png)

JPEGDecoder, fork by Frederic Plante

This is (not yet?) available through the library manager. You have to download it from here and add it to the Arduino IDE https://github.com/fredericplante/JPEGDecoder

Attention: You'll also have to open User_config.h in Arduino/libraries/JPEGDecoder-master and change

#define USE_SD_CARD
//#define USE_SPIFFS

into

//#define USE_SD_CARD
#define USE_SPIFFS

Adafruit GFX by Adafruit

Adafruit GFX Lib

Credits

This project wouldn't be possible if not for many open source contributors. Here are some I'd like to mention:

  • Frédéric Plante for his adaptations of the JPEGDecoder library
  • tzapu for the WifiManager library
  • Rene Nyfenegger for the base64 encoder I got from here: http://www.adp-gmbh.ch/cpp/common/base64.html
  • Adafruit for the ILI9341 driver and potentially also for the original designs of the TFT display

esp8266-plane-spotter-color's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.