Fwd: Re: LIRC on a microcotroller

classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Fwd: Re: LIRC on a microcotroller

Abhinav Kalra
To begin, Thanks Alec for the response.

On 14/10/2016 13:03:59, Alec Leamas <leamas.alec@gm...> wrote:

>The short story is that building bits and pieces of lirc this way just isn't >supported. You need to build the complete lirc distribution.


Can you please tell me why is this? There has to be some reason behind this. Right? And I would really like to know that.


>I don't know your OS. If you are on a debian-based one haveĀ  look at the
>debian source package at [1] which actually is available in the debian
>'experimental' channel. You could try the debian repo using apt-get, or
>download the complete debian package from [1] and rebuild it
>according to the README. it's actually not that hard.


Can you please tell me why is this? There has to be some reason behind this. Right? And I would really like to know that.

And, I am using Raspbian Jessie on my raspberry. I am sorry that I forgot to mention this, but I have already build lirc in my raspberry and I have already used it and it works fine. But what is really troubling me is that I want to customize it a little bit. I am planning on building an android application via which I want to control my devices. I want lircd to be running on my raspberry so that I can control it using the application over internet using the ip address of rpi.

It is as explained in this link. This application just controls irsend part. I want my application to also have irrecord function, but modified one. The one which I run on the terminal using irrecord command, it prints a lot of things when it is run where it gives details about the license, and development and what the command does which would be of no use to me.

Is it possible to do this?

I hope I was able to explain what I really want.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Fwd: Re: LIRC on a microcotroller

Alec Leamas


On 14/10/16 15:34, Abhinav Kalra wrote:

>>The short story is that building bits and pieces of lirc this way just
> isn't >supported. You need to build the complete lirc distribution.
>
>
> Can you please tell me why is this? There has to be some reason behind
> this. Right? And I would really like to know that.

It because the irsend application depends on all the other pieces of
lirc: libraries, daemon, configuration. You just cannot take a single
source file like and rebuild it outside of the lirc context (please, do
not push this further).


> It is as explained in this link
> <http://www.irdroid.com/2016/10/how-to-turn-your-raspberry-pi-into-a-fully-functional-infrared-remote-control/>.

This is based on a really old version of lirc as of 2010. Since then,
both the kernel and lirc has undergone big changes, and to be  honest I
doubt if this is a  meaningful project. What needs to be done here is to
port the driver part to modern LIRC, a task requiring some C/C++ skills.

One loophole might be to use the irtoy driver. I have no idea what the
irdroid is based on, but if it indeed is an irtoy it might be possible
to use the existing irtoy driver out of the box (this certainly wasn't
part of 0.8.7). You might be able to find out what kind of device it is
by inspecting dmesg(1) after connecting the  irdroid.

> This application just controls irsend part. I want my application to
> also have irrecord function, but modified one. The one which I run on
> the terminal using irrecord command, it prints a lot of things when it
> is run where it gives details about the license, and development and
> what the command does which would be of no use to me.
>
> Is it possible to do this?

If you look into the debian source package I mentioned in previous
reply, the README describes the workflow for building a patched version,
which seem to be what you need. You might run into problems depending on
what debian version your raspbian is based, though.

Otherwise, if you just rebuild lirc from regular sources you can of
course make any change you want to e. g., irsend.cpp before building.
But, you need to build the  complete lirc, that's just how these things
works.

Modifying the license info displayed is, while not illegal, something
I'd advice against if you plan to distribute your modified version.


Cheers!

--alec

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Fwd: Re: LIRC on a microcotroller

W.P.
Hi guys,

if interested:
- I have (partially) developed a small project on AVR uC: - "LIRC super
pilot".

This would allow to get hard-realtime stuff out of Linux box, at low cost.

As for now (development stopped 2014, have no more prototype board), it
consists of Mega328 + 24C256 EEPROM, IR LED + IR receiver (schematic
available).

Remark: I2C EEPROM (for storing remote definition) is too slow. Need to
use SPI EEPROM/flash. [it parses command line, searching for remote/key
-> code family / code definition. For 1 remote with ~40 keys it takes
almost 1s. And response should be immediate - from human point of view]

I have implemented SENDING "constant-length" codes. This was for
controlling my Yamaha home cinema amplifier. Using code definitions
gathered by LIRC on my PC.

Interface is on serial (USB->serial dongle), emulating "irsend DEVICE
COMMAND" interface.

If interested, please let me know, where to send / publish project files
(avr-gcc code, eagle schematic).

Wawrzyniec Piotrzkowski
Poland

W dniu 14.10.2016 o 14:38, Alec Leamas pisze:

>
>
> On 14/10/16 15:34, Abhinav Kalra wrote:
>
>>> The short story is that building bits and pieces of lirc this way just
>> isn't >supported. You need to build the complete lirc distribution.
>>
>>
>> Can you please tell me why is this? There has to be some reason behind
>> this. Right? And I would really like to know that.
>
> It because the irsend application depends on all the other pieces of
> lirc: libraries, daemon, configuration. You just cannot take a single
> source file like and rebuild it outside of the lirc context (please, do
> not push this further).
>
>
>> It is as explained in this link
>> <http://www.irdroid.com/2016/10/how-to-turn-your-raspberry-pi-into-a-fully-functional-infrared-remote-control/>.
>
> This is based on a really old version of lirc as of 2010. Since then,
> both the kernel and lirc has undergone big changes, and to be  honest I
> doubt if this is a  meaningful project. What needs to be done here is to
> port the driver part to modern LIRC, a task requiring some C/C++ skills.
>
> One loophole might be to use the irtoy driver. I have no idea what the
> irdroid is based on, but if it indeed is an irtoy it might be possible
> to use the existing irtoy driver out of the box (this certainly wasn't
> part of 0.8.7). You might be able to find out what kind of device it is
> by inspecting dmesg(1) after connecting the  irdroid.
>
>> This application just controls irsend part. I want my application to
>> also have irrecord function, but modified one. The one which I run on
>> the terminal using irrecord command, it prints a lot of things when it
>> is run where it gives details about the license, and development and
>> what the command does which would be of no use to me.
>>
>> Is it possible to do this?
>
> If you look into the debian source package I mentioned in previous
> reply, the README describes the workflow for building a patched version,
> which seem to be what you need. You might run into problems depending on
> what debian version your raspbian is based, though.
>
> Otherwise, if you just rebuild lirc from regular sources you can of
> course make any change you want to e. g., irsend.cpp before building.
> But, you need to build the  complete lirc, that's just how these things
> works.
>
> Modifying the license info displayed is, while not illegal, something
> I'd advice against if you plan to distribute your modified version.
>
>
> Cheers!
>
> --alec
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Fwd: Re: LIRC on a microcotroller

Bengt Martensson-2
On 10/14/16 21:55, W.P. wrote:
> Hi guys,
>
> if interested:
> - I have (partially) developed a small project on AVR uC: - "LIRC super
> pilot".

Nice. Why don't you put it on Github (or similar)?

> This would allow to get hard-realtime stuff out of Linux box, at low cost.
>
> As for now (development stopped 2014, have no more prototype board), it
> consists of Mega328 + 24C256 EEPROM, IR LED + IR receiver (schematic
> available).

As an alternative approach, I suggest using a cheap board like e.g.
"Arduino Nano", which can be had in cloned version for less than 3 EUR.
See http://www.harctoolbox.org/arduino_nano.html for my project. For the
corresponding firmware, see https://github.com/bengtmartensson/AGirs .
(This uses the Arduino framework, which is essentially the Gnu AVR tool
chain.)  The firmware can be used from Lirc using the girs driver,
contained in current (upstream) Lirc.

> Remark: I2C EEPROM (for storing remote definition) is too slow. Need to
> use SPI EEPROM/flash. [it parses command line, searching for remote/key
> -> code family / code definition. For 1 remote with ~40 keys it takes
> almost 1s. And response should be immediate - from human point of view]

In that firmware, you can store predefine commands, presently in raw
form, as Nec1-, or Rc5-commands. (Yamaha uses Nec1). The problem is to
have it  to fit into memory. The main trick here (note that Atmega is a
Harvard architecture, with "much" flash, "litte" RAM) to get the payload
into flash, without using RAM. 40 commands should not be a problem on an
Atmega328, provided that they use a "cooked" format.

Greetz,

Bengt


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Fwd: Re: LIRC on a microcotroller

Bengt Martensson-2
In reply to this post by Alec Leamas
On 10/14/16 16:38, Alec Leamas wrote:
 >
 >
 > On 14/10/16 15:34, Abhinav Kalra wrote:
 >
 >>> The short story is that building bits and pieces of lirc this way just
 >> isn't >supported. You need to build the complete lirc distribution.
 >>
 >>
 >> Can you please tell me why is this? There has to be some reason behind
 >> this. Right? And I would really like to know that.
 >
 > It because the irsend application depends on all the other pieces of
 > lirc: libraries, daemon, configuration. You just cannot take a single
 > source file like and rebuild it outside of the lirc context (please, do
 > not push this further).

Let me add that writing your own irsend, possibly in a completely
different language (Python?), should not really be a major undertaking.
It only has to implement (a subset of) the commands of "SOCKET COMMAND
INTERFACE" of lircd(8). IrScrutinizer actually contains a graphic
version of irsend. For the implementation, see
https://github.com/bengtmartensson/harctoolboxbundle/blob/master/HarcHardware/src/main/java/org/harctoolbox/harchardware/ir/LircClient.java

 >> It is as explained in this link
 >>
<http://www.irdroid.com/2016/10/how-to-turn-your-raspberry-pi-into-a-fully-functional-infrared-remote-control/>.
 >
 > This is based on a really old version of lirc as of 2010. Since then,
 > both the kernel and lirc has undergone big changes, and to be  honest I
 > doubt if this is a  meaningful project. What needs to be done here is to
 > port the driver part to modern LIRC, a task requiring some C/C++ skills.
 >
 > One loophole might be to use the irtoy driver. I have no idea what the
 > irdroid is based on, but if it indeed is an irtoy it might be possible
 > to use the existing irtoy driver out of the box (this certainly wasn't
 > part of 0.8.7). You might be able to find out what kind of device it is
 > by inspecting dmesg(1) after connecting the  irdroid.

We had this discussion about a year ago,
http://lirc.10951.n7.nabble.com/Using-LIRC-to-IRBlast-irsend-with-a-Raspberry-Pi-2-amp-an-Irdroid-Transciever-td10586.html#a10595 
see also http://dangerousprototypes.com/forum/viewtopic.php?f=29&t=7401 
. In short, it is half of the IrToy to twice the price. To make things,
these guys do not even give Dangerous Prototypes (creators of IrToy)
credit...

 >
 >> This application just controls irsend part. I want my application to
 >> also have irrecord function, but modified one. The one which I run on
 >> the terminal using irrecord command, it prints a lot of things when it
 >> is run where it gives details about the license, and development and
 >> what the command does which would be of no use to me.

irrecord is really not state of the art. (To put things diplomatically
(happy now Alec?)). Any chance you can use IrScrutinizer instead?

Greetz,

Bengt


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Fwd: Re: LIRC on a microcotroller

Alec Leamas
In reply to this post by W.P.


On 14/10/16 21:55, W.P. wrote:
> Hi guys,
>
> if interested:
> - I have (partially) developed a small project on AVR uC: - "LIRC super
> pilot".

We are always interested in how lirc is used. If you have a website I
would be happy add a link to it from the LIRC main sites. One way to
create a site is to just create a github project (yes, there are other
sites besides github, but you get the idea)


Cheers!

--alec

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Fwd: Re: LIRC on a microcotroller

W.P.
In reply to this post by Bengt Martensson-2


W dniu 15.10.2016 o 08:14, Bengt Martensson pisze:

> On 10/14/16 21:55, W.P. wrote:
>> Hi guys,
>>
>> if interested:
>> - I have (partially) developed a small project on AVR uC: - "LIRC super
>> pilot".
>
> Nice. Why don't you put it on Github (or similar)?
>
>> This would allow to get hard-realtime stuff out of Linux box, at low cost.
>>
>> As for now (development stopped 2014, have no more prototype board), it
>> consists of Mega328 + 24C256 EEPROM, IR LED + IR receiver (schematic
>> available).
>
> As an alternative approach, I suggest using a cheap board like e.g.
> "Arduino Nano", which can be had in cloned version for less than 3 EUR.
> See http://www.harctoolbox.org/arduino_nano.html for my project. For the
> corresponding firmware, see https://github.com/bengtmartensson/AGirs .
> (This uses the Arduino framework, which is essentially the Gnu AVR tool
> chain.)  The firmware can be used from Lirc using the girs driver,
> contained in current (upstream) Lirc.

Using Nano frees me from (almost) building test board :). I use it
already for another project.

My approach, for sending at least is much simplier, even "echo" works.

But will take a look at Your project.

>
>> Remark: I2C EEPROM (for storing remote definition) is too slow. Need to
>> use SPI EEPROM/flash. [it parses command line, searching for remote/key
>> -> code family / code definition. For 1 remote with ~40 keys it takes
>> almost 1s. And response should be immediate - from human point of view]
>
> In that firmware, you can store predefine commands, presently in raw
> form, as Nec1-, or Rc5-commands. (Yamaha uses Nec1). The problem is to
> have it  to fit into memory. The main trick here (note that Atmega is a
> Harvard architecture, with "much" flash, "litte" RAM) to get the payload
> into flash, without using RAM. 40 commands should not be a problem on an
> Atmega328, provided that they use a "cooked" format.
>

I've been thinking about SPI flash, it's fast and has capacity up to
several megabytes.


W.P.

> Greetz,
>
> Bengt
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[hardware questions / remarks] Re: Fwd: Re: LIRC on a microcotroller

W.P.
In reply to this post by Bengt Martensson-2


W dniu 15.10.2016 o 08:14, Bengt Martensson pisze:
> On 10/14/16 21:55, W.P. wrote:
>> Hi guys,
>>
>> if interested:
>> - I have (partially) developed a small project on AVR uC: - "LIRC super
>> pilot".
>
> Nice. Why don't you put it on Github (or similar)?
>

<snip>

> As an alternative approach, I suggest using a cheap board like e.g.
> "Arduino Nano", which can be had in cloned version for less than 3 EUR.

Second alternative is to use (micro) Arduino based on M32U4, but those
boards cost significantly more :|. Advantage would be to have USB AND
serial on same time. Disadvantage that some part of flash have to be
devoted to USB stack, AND problem of getting USB VID/PID's...

> See http://www.harctoolbox.org/arduino_nano.html for my project. For the
> corresponding firmware, see https://github.com/bengtmartensson/AGirs .
> (This uses the Arduino framework, which is essentially the Gnu AVR tool
> chain.)  The firmware can be used from Lirc using the girs driver,
> contained in current (upstream) Lirc.
>

Looks VERY good, better than my hardware ;P.

<snip>

> In that firmware, you can store predefine commands, presently in raw
> form, as Nec1-, or Rc5-commands. (Yamaha uses Nec1). The problem is to
> have it  to fit into memory. The main trick here (note that Atmega is a
> Harvard architecture, with "much" flash, "litte" RAM) to get the payload
> into flash, without using RAM. 40 commands should not be a problem on an
> Atmega328, provided that they use a "cooked" format.

Questions / remarks:

What are (useful, "teste with ...") ranges for:
- sending IR?,
- receiving IR (learn / work modes)?

- could You publish schematic?,

- are SPI pins used? (if so, can be freed?),

- 40mA is "absolute max rating" for M328P, "normal working" is max 20mA.
(2x IR LED in series with 68R from ~5V is about this),
- so some transistor for IR LEDs would be nice (selection on board with
0R SMD bridges? - or jumpers?).

How about making some "carrier board" (project) for Nano?

- with IR transmitters / receivers on opposite sides, not on USB side,
transistors for driving them, visible LED on top,

- DIP 8 socket for SPI EEPROM / flash (SO->DIP adapters are now easily
available) (DataFlash from Atmel?), or just SMD pads IF "we" decide what
part (big size but cheap and easily available in hobbyists quantities),

- level converter, as SPI devices I have found are 3.3V (we do have an
LDO on Nano already),

- SUITABLE for some (commercially available!) CASE?

This would be "market killer device" :)

Same functionality board for Arduino M328P (small PCB) w/o USB, with
just TTL serial? (for systems w/o USB, embedded?).

One thing that I have been thinking for my project:
- standalone M328 could act as "IR translator", eg receive "code x",
send "code y (,code z, code a), etc.

W.P.

>
> Greetz,
>
> Bengt
>
>
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, SlashDot.org! http://sdm.link/slashdot
>

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [hardware questions / remarks cd] Re: Fwd: Re: LIRC on a microcotroller

W.P.
Just one more thing...

there is 32bit WiFi SoC ESP8266.

Prices (Poland):

- NodeMCU (ESP12E module on carrier containing USB->serial, 3.3V LDO,
but NO ext antenna socket, 4MB(!) flash) - 2x price of Aduino Nano (clone).

- ESP07 + carrier (no USB, LDO, ceramic antenna + antenna socket +
"router style" antenna, 1MB flash) - same 2x Arduino.

My app from (not Arduino C++, but pure C) M328P / Nano (11kB) ported to
NodeMCU (with addition of WWW config of WiFi, if connection to AP
fails), "weights" ~500kB. So even on ESP07 there is ~0.5MB free (for
remotes definitions?).

It has WiFi, open source framework Sming, where many libraries are
ported from Arduino.

*Disadvantage: only ONE "hardware" TIMER , with us resolution (didn't
yet tested myself), many "software timers", but those exhibit 20%
accuracy...*

Bengt, could You look at?

Porting code from Arduino should be trivial, with exception of mentioned
timer.

? Standalone IR transmitter / receiver with WiFi (station or AP for
people not having AP at home), 5V powered (3.3V LDO leaves ~200mA for
us, ESP can consume ~250mA max for itself), IR LED consumption may be
high for long range, but pulsed, so maybe store energy for LEDs in a
capacitor? And we could power LEDs from 5V, without LDO limit :)

Could act as "LIRC leaf"?

Cigarette box size. CHEAP!

Just an idea :)

W.P.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [hardware questions / remarks] Re: Fwd: Re: LIRC on a microcotroller

Bengt Martensson-2
In reply to this post by W.P.
On 10/16/16 00:39, W.P. wrote:

>
>
> W dniu 15.10.2016 o 08:14, Bengt Martensson pisze:
>> On 10/14/16 21:55, W.P. wrote:
>>> Hi guys,
>>>
>>> if interested:
>>> - I have (partially) developed a small project on AVR uC: - "LIRC super
>>> pilot".
>>
>> Nice. Why don't you put it on Github (or similar)?
>>
>
> <snip>
>
>> As an alternative approach, I suggest using a cheap board like e.g.
>> "Arduino Nano", which can be had in cloned version for less than 3 EUR.
>
> Second alternative is to use (micro) Arduino based on M32U4, but those
> boards cost significantly more :|. Advantage would be to have USB AND
> serial on same time. Disadvantage that some part of flash have to be
> devoted to USB stack, AND problem of getting USB VID/PID's...

I made it run on a micro, see
https://cloud.githubusercontent.com/assets/11508922/12698344/c745abf8-c79a-11e5-9ef6-2d74f7446e50.jpg 
and https://github.com/bengtmartensson/AGirs/issues/16 Another advantage
is the even smaller size than the nano, as can be seen. However, from
the Arduino project, the 32-er are discontinued, and the availability of
clones on ebay much lower than for the Nano.

If usb-onboard is better than a CH341? I still have not made up my mind.

>> See http://www.harctoolbox.org/arduino_nano.html for my project. For the
>> corresponding firmware, see https://github.com/bengtmartensson/AGirs .
>> (This uses the Arduino framework, which is essentially the Gnu AVR tool
>> chain.)  The firmware can be used from Lirc using the girs driver,
>> contained in current (upstream) Lirc.
>>
>
> Looks VERY good, better than my hardware ;P.

Thanx!

> <snip>
>
>> In that firmware, you can store predefine commands, presently in raw
>> form, as Nec1-, or Rc5-commands. (Yamaha uses Nec1). The problem is to
>> have it  to fit into memory. The main trick here (note that Atmega is a
>> Harvard architecture, with "much" flash, "litte" RAM) to get the payload
>> into flash, without using RAM. 40 commands should not be a problem on an
>> Atmega328, provided that they use a "cooked" format.

Still to be done though:
https://github.com/bengtmartensson/AGirs/issues/13 (should not be too hard).

> Questions / remarks:
>
> What are (useful, "teste with ...") ranges for:
> - sending IR?,

I have not done any serious tests, but surely beats "simple" clickers in
the version shown. 5-10 meters without a problem.


> - receiving IR (learn / work modes)?

Demodulating: used sensor is state-of-the-art; I think the data sheets
says up to 45 meters.

Capturing (learning) much better than photodiodes (millimeters), OPL/QSE
(centimeters).

> - could You publish schematic?,

Schematics for the boards are found on arduino.cc

> - are SPI pins used? (if so, can be freed?),

No SPI pins are used (unless so configured in config.h). Coexists fine
with the Arduino Ethernet shield (which is "retired" from arduino.cc,
without replacement. Grrr!)

> - 40mA is "absolute max rating" for M328P, "normal working" is max 20mA.
> (2x IR LED in series with 68R from ~5V is about this),

However, it is not a continuous signal that is being sent. The modulated
"flashes" have a duty period of 30 to 50%; taking the gaps into account
you will have an effective duty period in general half of that, or less.

> - so some transistor for IR LEDs would be nice (selection on board with
> 0R SMD bridges? - or jumpers?).

Yup, in particular since the more modern processors cannot send more
thatn 7mA (or less). My favorite is BS170/2N7000 (see
https://en.wikipedia.org/wiki/2N7000). Saves you the base/gate resistor!

> How about making some "carrier board" (project) for Nano?
>
> - with IR transmitters / receivers on opposite sides, not on USB side,
> transistors for driving them, visible LED on top,

I have a "shoebox full" of different hardware. Will publish photos. RSN.


> - DIP 8 socket for SPI EEPROM / flash (SO->DIP adapters are now easily
> available) (DataFlash from Atmel?), or just SMD pads IF "we" decide what
> part (big size but cheap and easily available in hobbyists quantities),

How about boards with slighly larger flash, like mega2560, due, zero
teensy3?

> - level converter, as SPI devices I have found are 3.3V (we do have an
> LDO on Nano already),

I do not follow you here.

> - SUITABLE for some (commercially available!) CASE?

Anyone with a 3D printer here? Unfortunately, on ebay/amazon there are
nice housings for arduino-uno size boards, but nof much for nano/micro.

> This would be "market killer device" :)
>
> Same functionality board for Arduino M328P (small PCB) w/o USB, with
> just TTL serial? (for systems w/o USB, embedded?).

There are such nanos available at ebay.

> One thing that I have been thinking for my project:
> - standalone M328 could act as "IR translator", eg receive "code x",
> send "code y (,code z, code a), etc.

You should be able to tweak the AGirs firmware to do this.

Greetz,

Bengt


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [hardware questions / remarks cd] Re: Fwd: Re: LIRC on a microcotroller

Bengt Martensson-2
In reply to this post by W.P.
On 10/16/16 01:57, W.P. wrote:
> Just one more thing...
>
> there is 32bit WiFi SoC ESP8266.

There is almost a cult around this chip, books, many projects, etc.

>
> Prices (Poland):
>
> - NodeMCU (ESP12E module on carrier containing USB->serial, 3.3V LDO,
> but NO ext antenna socket, 4MB(!) flash) - 2x price of Aduino Nano (clone).
>
> - ESP07 + carrier (no USB, LDO, ceramic antenna + antenna socket +
> "router style" antenna, 1MB flash) - same 2x Arduino.
>
> My app from (not Arduino C++, but pure C) M328P / Nano (11kB) ported to
> NodeMCU (with addition of WWW config of WiFi, if connection to AP
> fails), "weights" ~500kB. So even on ESP07 there is ~0.5MB free (for
> remotes definitions?).
>
> It has WiFi, open source framework Sming, where many libraries are
> ported from Arduino.
>
> *Disadvantage: only ONE "hardware" TIMER , with us resolution (didn't
> yet tested myself), many "software timers", but those exhibit 20%
> accuracy...*

AFAK, there is a problem with hardware PWM. See also
https://github.com/z3t0/Arduino-IRremote/issues/209 and links therein.

For an interesting project, see
https://github.com/probonopd/ESP8266iTachEmulator .

> Bengt, could You look at?
>
> Porting code from Arduino should be trivial, with exception of mentioned
> timer.
>
> ? Standalone IR transmitter / receiver with WiFi (station or AP for
> people not having AP at home), 5V powered (3.3V LDO leaves ~200mA for
> us, ESP can consume ~250mA max for itself), IR LED consumption may be
> high for long range, but pulsed, so maybe store energy for LEDs in a
> capacitor? And we could power LEDs from 5V, without LDO limit :)
>
> Could act as "LIRC leaf"?

The Lirc driver interface (http://lirc.org/html/driver-api.html) is
unfortunately not very well designed. So I suggest to use the Girs type
commands (http://www.harctoolbox.org/Girs.html) (serial or TCP (UDP?))
and the girs plugin.

Greetz,

Bengt

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
Loading...