Can circuitpython libraries be imported and used in micropython? - esp8266

I am researching on micropython to use for an IoT project for school using nodeMCU esp8266. one of the use cases requires the device to receive IR signal from an Aircon remote control and save it as well as being able to transmit this code using and IR LED. in circuitpython there is a library called pulseio that can do this function, but it is not available in micropython. can this library be imported into micropython?

In short No.
It is very unlikely any CircuitPython library willl work straight over in MicroPython on your board. The main reason for this is that once the library starts to use UART or I2C the underlying implementation in CircuitPython is very dependent on other CircuitPython libraries which do not have equivalents in MicroPython.
It may be possible to find all these and re-implement them using standard MicroPython.
The decision point is if you can do that faster than finding a MicroPython library or example for your board to do the same thing OR if you should buy a CircuitPython compatible board instead.

Related

Is there a way to use ESP NOW protocol using lua?

i'm working on a project using esp8266 nodemcu board, and found right at the beginning that there is an IDE for this board called ESPlorer IDE which uses Lua code, so i've using https://nodemcu.readthedocs.io as my go to, but now i want to implement the esp now protocol on my project but i can't since there is no documentation for it's usage on lua, so my question is. Is there a way to use ESP NOW protocol using lua?
or do i have to use another IDE and start all over?
It looks like the ESPNow protocol isn't supported by the NodeMCU firmware by default; there's an issue requesting support from September 2019.
If you're adept in C, you could maybe be the hero to implement that, but otherwise... no, unfortunately you can't use ESPNow with NodeMCU/Lua.

How to use ESP8266-01 module GPIO pins for temperature sensing with NodeMCU

How can i use ESP8266-01 module GPIO pins for temperature sensing in a ESP8266 standalone environment using NodeMCU ROM. If possible than what will be the lua code for it ?
Will the programming/flashing of ESP8266 will be same irrespective of the module version i'm using be it ESP8266-01 or ESP8266-07.
How to use the GPIO pins depends on which temperature sensor you will use. Or more specifically which protocol they use (assuming it's a digital and not a analog sensor, a analog sensor can't really (well easily) be used with a GPIO pin.)
But basically you'll just wire the data pin of the sensor to the GPIO pin, using whatever electric circuit is relevant for the type of sensor.
You will preferably use the latest NodeMCU firmware (1.5.1), which you will need to build using their online build service (it's easy :) ). While doing this you need to choose the modules you'll want available, which must include support for the sensor you'll be using.
Flashing will be the same for any ESP module, except for having to specify a different flash size/mode, and you might need to add a reset and flash button for 'bare' modules.
Programming (=LUA) will be identical for any module, once you've flashed the NodeMCU firmware. Except ofcourse that you might specify a different GPIO pin.
As an example of LUA code, for a ds18b20 sensor, you could look at:
https://github.com/nodemcu/nodemcu-firmware/blob/master/lua_examples/onewire-ds18b20.lua
https://github.com/nodemcu/nodemcu-firmware/blob/master/lua_examples/yet-another-ds18b20.lua
But this will be different for each type of sensor.

ESP8266 12E - How to use functions in SDKs

This is kumar. I used the AT commands of ESP8266 12e successfully. It's AT version is 0.4 & SDK version is 1.3. but I don't how to use the functions that are given in its SDK. I want to interface ESP8266 12E to my cortex 32bit controller through SPI communication & also I want to use the Wi-Fi P2P functions which are given in the SDK. I'm using windows 10 OS & LPC controllers & KEIL IDE. so can anybody tell me what are the basic requirements that I need so that I can build my application program in my controller. since I'm new to SDK's or API's. In CC3000 Wi-Fi module, through SPI communication we can call its API functions through host controller. In the same way how can I call the SDK's function from my controller since they are stored in its flash(esp8266) & how can I know what are the functions available in SDK's & how to access them from controller. Since there is no proper document available for my question.
You should start here and read and understand the Tutorial for Beginners.

can i use an eye detecting opencv code on microcontroller?

i want to do a project which uses eye tracking, is it possible to port an open cv code on a microcontroller.
i am new to opencv as well as microcontroller so can any one tell me if it is possible to make a code which works like this vedio.
http://www.youtube.com/watch?feature=endscreen&v=eBtpKAja-m0&NR=1
Q: Can i use an eye detecting opencv code on microcontroller?
A: Yes, you can
Q: Is it possible to port an open cv code on a microcontroller
A: OpenCV is already in the Unix and Android platform. The easiest approach therefore will be to get hold of some embedded device with ARM. There are a lot of help available for the 'OpenCV-ARM' combination.
Beagleboard and RasberryPi are the cheapest embedded ARM devices available for less than $150. Sometimes they come preloaded with Unix boot system and opencv2.0. Thus it would be so easy to run the executable that you created in the computer system.
Be aware of the speed of the processor. If your algorithm is computationally intensive then you wont be quiet satisfied with the output being obtained in the low-end embedded devices.
If some ARM embedded Linux board can fit into your definition of microcontroller, then there is nothing to port.
http://www.google.com/search?q=opencv+arm

What's the difference between AMD's APP SDK and (AMD) ATI's Stream Technology?

I'm working on a project that will use an AMD GPU for processing data. I noticed AMD has two different SDKs available on their website for using the GPU: ATI Stream Technology and
OpenCLâ„¢ and the AMD APP SDK. It looks like both support OpenCL but I haven't found anything on the site explicitly pointing out why one would use one over the other. What's the difference between these two?
The AMD APP SDK is here: http://developer.amd.com/sdks/AMDAPPSDK/Pages/default.aspx
The website should also answer your question about the difference between Stream and APP:
AMD Accelerated Parallel Processing (APP) SDK (formerly ATI Stream)
It used to be called AMD Stream SDK, they probably renamed it after adding support for non-Firestream hardware (namely OpenCL)
stream is the higher level amd-specific project (hardware and software) that includes opencl as the current software implementation. stream originally used the "brook" language, but switched to opencl in 2011. since then opencl became more popular (because it is a cross-platform standard that has been particularly well supported by apple) and these days amd doesn't seem to mention stream much. you can see this in a link like http://www.amd.com/us/products/technologies/stream-technology/opencl/pages/opencl.aspx where opencl is a "child" of stream (or the menu on the left of that page, where the higher level group is stream; other children are related to hardware).
in short, you want opencl. and despite the confusing mess that is amd's site, their opencl implementation is pretty solid.
hmmm. re-reading your question you seem to say there are two separate sdks. do you actually drill down to two different packages? my understanding is that opencl is the stream sdk. if you have found two different sdks (that are both current) can you link to them?

Resources