Pages: 1 2 [3]   Go Down
Author Topic: Agentuino - A lightweight SNMP Agent  (Read 6411 times)
0 Members and 1 Guest are viewing this topic.
Nova Scotia, CA
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
A world that runs on bits and bytes!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

yesyes
I took a quick look at Cacti (seems like a pretty cool tool) and it's based on the RRDTool.  The RRDTool round-robin database does support divisors.

If you haven't done so yet, I would subscribe to their forum and ask.

Sounds like a pretty neat project your undertaking.  Good luck.

Also, I am waiting for TangoAlpha to upload his updates so I can add some updates that I've done as well.

Regards,

Eric

Correction; RRDTool graphing portion supports divisors.
« Last Edit: December 16, 2010, 12:28:20 pm by LAVco » Logged

Common sense is not so common...

Berkshire, UK
Offline Offline
Full Member
***
Karma: 0
Posts: 120
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi, just wanted to report back with success... ;-)
I have asked on the Cacti forum after failing to find anything in the Cacti documentation. Got an answer from a developer that pointed me in the right direction. While you can't modify data before being written to the database, you can apply math to the data before being graphed. So I now send (float_value * 100) converted to an int32 from the Arduino and when generating a graph it automatically divides everything by 100 again. Nice.

Thanks to you, LAVco, for pointing me in the right direction....
Logged

Chris

Location: Berkshire, UK
My Astro and DIY projects website: http://yesyes.info/

Nova Scotia, CA
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
A world that runs on bits and bytes!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi All,

An updated library was uploaded to Google Code http://code.google.com/p/agentuino/.

- decode functions were corrected (byte array, uint, int, etc)
- all malloc calls were removed

We would like to thank TangoAlpha for detecting and correcting decoding bugs.

More to come and keep us posted should you find a bug.

Regards,

Eric
Logged

Common sense is not so common...

Berkshire, UK
Offline Offline
Full Member
***
Karma: 0
Posts: 120
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Thanks for the new version. Any chance of more details on the fixed bugs? Is there a changelog?  smiley-wink
There was an issue when a new SNMP request comes in before the current one had been fully processed and replied to. Has this been fixed by any chance? smiley
Logged

Chris

Location: Berkshire, UK
My Astro and DIY projects website: http://yesyes.info/

0
Offline Offline
Newbie
*
Karma: 0
Posts: 3
Blah
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Example graphs from my web server created using Cacti...

http://weeble.ath.cx/netsensor/

Hardware:
Arduino Uno, I2C pressure/temperature sensor, LDR, ethernet shield v2

Software:
Agentuino SNMP library, (extended) I2C library
Logged

Berkshire, UK
Offline Offline
Full Member
***
Karma: 0
Posts: 120
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Interesting TangoAlpha. Your project is very similar to mine... ;-)
Logged

Chris

Location: Berkshire, UK
My Astro and DIY projects website: http://yesyes.info/

Nova Scotia, CA
Offline Offline
Jr. Member
**
Karma: 0
Posts: 64
A world that runs on bits and bytes!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
yesyes wrote:
There was an issue when a new SNMP request comes in before the current one had been fully processed and replied to. Has this been fixed by any chance?
This problem can be resolved by using an RTOS smiley
The problem lies in two areas; your sketch and the Ethernet chipset.  If your sketch has blocking calls you are going to run into latency and race condition issues.  The Ethernet chipset buffers incoming requests and the atmel MCU will process when interrupted if it can.  If the MCU is blocked by a blocking call it can't do anything else till it's done.


AlphaTango
What are the units on the light graph?  Lux,etc.?

Eric
« Last Edit: January 10, 2011, 07:56:56 pm by LAVco » Logged

Common sense is not so common...

0
Offline Offline
Newbie
*
Karma: 0
Posts: 3
Blah
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
What are the units on the light graph?  Lux,etc.?
The sensor is a light dependent resistor. The data is inverted and scaled roughly so that the brightest sunshine should be around 1024 and darkness is 0.

The Arduino will eventually become an outdoor weather station once I have a PoE ethernet shield.

The weather station data will be used in two ways...

1. Logged as simple weather data
2. As input into a bespoke heating controller (a work in progress), in order to create a more efficient central heating system

For 2, I only really need the light data to further qualify the temperature reading (whether the sun will effect it or not) so the actual value (Lux or otherwise) is not important to me.
Logged

Pages: 1 2 [3]   Go Up
Jump to: