element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Arduino
  • Products
  • More
Arduino
Arduino Forum A couple of Arduino libraries I wrote, AS3935 lightning detector and TCS3471 color/light sensor
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Arduino to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 36 replies
  • Subscribers 393 subscribers
  • Views 3658 views
  • Users 0 members are here
  • sensors
  • prototyping
  • arduino
Related

A couple of Arduino libraries I wrote, AS3935 lightning detector and TCS3471 color/light sensor

Former Member
Former Member over 12 years ago

A bit of a shameless self-promotion image I wrote two libraries for two interesting sensor chips, first is AS3935 lightning detector chip, that can warn you about coming storm while it is still 40 kilometers away and the second in high dinamic range 16bit resolution color and light sensor chip TCS34717. Both libraries in my opinion are interesting in the way communications are implemented, library code does not access any other library, like SPI or Wire, directly, but rather relies on user sketch to provide functions to communicate over SPI or i2c bus, which makes them usable with almost any imaginable setup and scenario.

Both libraries can be downloaded from my github - https://github.com/raivisr?tab=repositories

 

And break-outs if anyone is interested in these, can be purchased here - https://www.tindie.com/shops/TAUTIC

  • Sign in to reply
  • Cancel
  • Former Member
    Former Member over 12 years ago

    Will this code work with the board sold by Embedded Adventures?  Same chip.

     

    http://www.embeddedadventures.com/as3935_lightning_sensor_module_mod-1016.html

     

    Don't think it has all the same outputs..

     

    and can I use an arduino uno instead of the Mega?

     

    thanks

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 12 years ago in reply to Former Member

    Neither do I have a board sold by EA, nor I have Uno, but I have reports of library working with Uno no problems.

    While claims of EA that they have each board "pre-tuned" make me doubt their level of competence, after all, tuning depends on temperature (even with C0G capacitors in tank circuit) and bunch of other conditions and should be redone once those conditions change, besides, library takes care of that and there is nothing tricky there.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • DAB
    DAB over 12 years ago

    Hi Raivis,

     

    I had been wondering about the performance to that lightning detection chip.

    I do lightning research in my spare time and I currently use an AM radio for discharge detection.  It would be interesting to see if your solution gives better performance.

     

    Have you verified the sensitivity of the color sensor?  How good is its spectral purity?

     

    Thanks

    DAB

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 12 years ago in reply to DAB

    All I can say, it does indeed detect lightnings image I have no idea how good it is at it though.

    Regarding color sensor, I havent seen it in flesh, wrote library solely based on datasheet and then debuged it remotely on a laptop located in US that had arduino and sensor attached.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    Hi Raivis,

     

    Our lightning sensors, along with many of our other weather related modules are being used by people around the world to find out more about the world around them.

     

    We have provided open source C software to communicate with the sensor, including deciding on the tuning values, but provide the tuning parameters we found when testing as a service to our customers.

     

    We pride ourselves on making awesome products that people love and we are always open to feedback. Feel free to drop us a line at feedback at embeddedadventures dot com or post up here if you have specific questions. Happy to help.

     

    kind regards

    Ian.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    Hello Ravis.I use the library of AS3935 but when I compile the following appears

    'AS3935' does not name a type to

    LightningDetector: 48: error: 'AS3935' does not name a type

    LightningDetector.pde: In function 'void setup ()':

    LightningDetector: 64: error: 'AS3935' was not declared in this scope

    LightningDetector.pde: In function 'void loop ()':

    LightningDetector: 102: error: 'AS3935' was not declared in this scope

    LightningDetector.pde: In function 'void printAS3935Registers ()':

    LightningDetector: 130: error: 'AS3935' was not declared in this scope

    can you help me?

    Best regards

    Pedro

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 11 years ago

    Hello to all,

    I am learning something new everyday, but I have no idea how to change the "Noisefloor" in the AS3935 lightning detector. Could someone please give me a kick in the right direction since I am fairly new to all of this?

     

    Ken, W8DZN

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    If you are using my library, then there is function for that:

    int AS3935::setNoiseFloor(int noisefloor)

    {

    registerWrite(AS3935_NF_LEV,noisefloor);

    return getNoiseFloor();

    }

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    Thank you for the reply. I have tried using your suggest before I wrote my question. I am not sure how to use it for sure. As I stated I am learning and very new to this all. I have a couple more ideas to try. Hands-on is the best way for me to learn and to keep trying ideas to find a solution. If you could give me a hint on how to use the code.

    Regards,

    Ken, W8DZN

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 11 years ago in reply to Former Member

    Well, there is example included with library. Other than working with specific chip, this library follows generic arduino programming paradigm.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
>
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube