-
Notifications
You must be signed in to change notification settings - Fork 0
An Arduino Nano-based MySensors v 2.1x node to get teleinformations
License
trychlos/mysTeleinfo
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
mysTeleinfo - README
Summary
=======
What is it
Input/Outputs
Features
Project content
Notes
Interruption management
Interactions
Known bugs and limitations
Limitations
Bugs
Sources
-----------------------------------------------------------------------
What is it
==========
mysTeleinfo is a MySensors v2 node
built on an Arduino Nano
which decodes EdF Teleinformation thread
and sends its datas to a Jeedom controller
via a MySensors v2 serial gateway
through a NRF24L01 radio communication.
-----------------------------------------------------------------------
Input/Outputs
=============
Input is:
EdF Teleinformation.
Outputs are:
Datas to Jeedom controller
A thread LED which is on during thread reception
A HC (resp. HP) LED on during HC (resp. HP) hours.
-----------------------------------------------------------------------
Features
========
This project features:
- the interpretation of the EdF Teleinformation thread and its
transmission to the MySensors gateway
- a behavior witness via a thread LED which is on during the
reception of each EdF Teleinformation thread
- a HC LED which is on during low price hours
- a HP LED which is on during high prices hours
- all datas may be retransmitted on request.
-----------------------------------------------------------------------
Project content
===============
This project includes:
- docs/: the external documentation used for the project
- build/: the build resources:
> Arduino Nano pins layout
> Kicad electronic scheme
> the built PCB
- images/: the .png images used as Jeedom widgets
- mysTeleinfo.ino: the main Arduino program
- pwiSoftwareSerial.{h,cpp}: a hacked version of the SoftwareSerial
library (see NOTES)
- teleInfo.{h,cpp}: the class used to decode the EdF Teleinformation
thread
- teleInfo.dump: a log of the debug output.
-----------------------------------------------------------------------
Notes
=====
Interruption management
The hardware IRQ0/IRQ1 (D2/D3) are left free.
Most of the NRF24 radio module makes use of PortB (PCINT0) pins.
For this reason, we have chosen to use a PortB (PCINT2) pin to use
as input for teleinformation.
Input is managed via SoftwareSerial library. We are using an hacked
version in order to optimize the software interrupt management.
-----------------------------------------------------------------------
Interactions
============
The MySensors node present one main ID to the controller, to manage global
actions and request or set global parameters.
For each configurable parameter:
- define a specific ChildId
- parse a received C_SET command with V_CUSTOM message and payload
- parse a received C_REQ command
- send a V_VAR1 message to the controller with the value
Cf. also the mysTeleinfo.ods sheet.
-----------------------------------------------------------------------
Known bugs and limitations
==========================
Cf. TODO
-----------------------------------------------------------------------
Sources
=======
http://lhuet.github.io/blog/2014/01/montage-teleinfo.html
http://www.magdiblog.fr/gpio/teleinfo-edf-suivi-conso-de-votre-compteur-electrique/
https://hallard.me/demystifier-la-teleinfo/
https://www.jeedom.com/doc/documentation/plugins/teleinfo/fr_FR/teleinfo
https://www.kzenjoy.net/2015/la-teleinformation-sous-jeedom/
http://playground.arduino.cc/Code/Interrupts
https://github.com/jaysee/teleInfo
http://playground.arduino.cc/Main/PinChangeInterrupt
https://code.google.com/archive/p/arduino-pinchangeint/issues/7
-----------------------------------------------------------------------
P. Wieser - Created on 2017, mar. 31st
Last updated on 2019, oct. 7th
About
An Arduino Nano-based MySensors v 2.1x node to get teleinformations
Topics
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published