about the esp8266: at some point I was able to compile and run MrlComm on one. Far from be fully tested. Using websocket I was able to communicate with it using a webapp (connect to it, get the board info) but of course nothing about websocket exist in MRL. I try to use tcp connection. MRL could connect and send data to mrlcomm, but then see the connection as disconnect and failed. But there is some potential in both way.
about SLAM: I have implement some basic SLAM algorithm in the integrated Movement service. Using the kinect, it can scan what is in the range of 0.5 to 1.5m using the depth map. The data is then group into different object and put in a 3d map around the robot and show them in the jme3 apps (or show it's location in the swing gui). Using inverse kinematic, my inMoov can avoid or put is hand close to the object detected. Still at the testing phase, but i'm quite happy by the results so far. The biggest problem I have right now with it is that it acting very wierdly when it sees his own arm in the kinect data when trying to do it in realtime (Because it will try to avoid his own arm).
Along the same lines as the sennsor above, I found on Ebay the GY21-HTU21D temperatur and humidity sensor. at nearly double the price of the one listed above, it's still not that expensive.
It only has 4 terminal and it 5.0V and 3.3V complient meaning it can be used with either the Arduino or the Raspberry Pi.
Well. I started and was hoping it would be easy ( stupid me ). The MPR121 is designed so that it can be used in a multihost environment, so it requires the i2c libraries to be written to support "repeated start". The libraries on RasPi are not written that way. So I had to change the base i2c libraries used on the PI and also rewrite some of the basic i2c read/writes in MRLComm and esp8266_01. And since I do that, I need to test all the other i2c devices to make sure that they continue to work.
So it's more to do than I expected, and that's why it takes some time.
i2c devices
As you may know I'm a great fan of i2c devices.
On my current list of i2c devices to be borged is:
MPC4725 12-bit Digital to Analog Converter
MPR121 Capacitive touch sensor
VL6180X Time of flight Distance sensor ( Up to 10cm )
VL53L0X Time of flight Distance sensor ( Up to 2 meters distance measure wit 1mm resoltuion )
All above are i2c devices. Some are easy to borg, others are quite complicated. The distance sensors are a challenge.
Other things that we should borg are:
Stepper motors
Some esp8266 variations and perhaps the esp32
Continous drive servo motors, with external potentiometers, so that they can be used with the DiyServo service.
At some stage it would be nice to borg some SLAM https://en.wikipedia.org/wiki/Simultaneous_localization_and_mapping
/Mats
Hi Mats about the esp8266: at
Hi Mats
about the esp8266: at some point I was able to compile and run MrlComm on one. Far from be fully tested. Using websocket I was able to communicate with it using a webapp (connect to it, get the board info) but of course nothing about websocket exist in MRL. I try to use tcp connection. MRL could connect and send data to mrlcomm, but then see the connection as disconnect and failed. But there is some potential in both way.
about SLAM: I have implement some basic SLAM algorithm in the integrated Movement service. Using the kinect, it can scan what is in the range of 0.5 to 1.5m using the depth map. The data is then group into different object and put in a 3d map around the robot and show them in the jme3 apps (or show it's location in the swing gui). Using inverse kinematic, my inMoov can avoid or put is hand close to the object detected. Still at the testing phase, but i'm quite happy by the results so far. The biggest problem I have right now with it is that it acting very wierdly when it sees his own arm in the kinect data when trying to do it in realtime (Because it will try to avoid his own arm).
Anther I2C Temp sensor with Humidity
Hello Grog,
Along the same lines as the sennsor above, I found on Ebay the GY21-HTU21D temperatur and humidity sensor. at nearly double the price of the one listed above, it's still not that expensive.
It only has 4 terminal and it 5.0V and 3.3V complient meaning it can be used with either the Arduino or the Raspberry Pi.
Link on Ebay:http://www.ebay.com.au/itm/GY21-HTU21D-Temperature-Humidity-Sensor-Modu…
Temperature and humidity sensor
Nice divice.
I ordered one, and it looks like it should be easy to borg.
/Mats
Current monitor
Here is a interesing current monitor chip I picked up (not tested yet).
Put "in-line" with your servo supply or motor drivers etcetcetc and read off the current via I2C
Ina219
It's already borged. The service name is AdafruitIIna219.
http://myrobotlab.org/service/AdafruitIna219.
/Mats
OCR
Reading this blog:
http://www.pyimagesearch.com/2017/07/03/installing-tesseract-for-ocr/
and found this:
http://tess4j.sourceforge.net/
It would be a really nice to add the ability for MRL to read ( and speak / respond ) a text from a piece of paper :)
/Mats
Lm75a
This device has now been borged:
http://myrobotlab.org/service/Lm75a
Resistance to Mats is Futile
Resistance to Mats is Futile !
It will be assimilated !
Hello Mats,Did you ever get
Hello Mats,
Did you ever get around to borging MPR121 Capacitive touch sensor ?
MPR121
Well. I started and was hoping it would be easy ( stupid me ). The MPR121 is designed so that it can be used in a multihost environment, so it requires the i2c libraries to be written to support "repeated start". The libraries on RasPi are not written that way. So I had to change the base i2c libraries used on the PI and also rewrite some of the basic i2c read/writes in MRLComm and esp8266_01. And since I do that, I need to test all the other i2c devices to make sure that they continue to work.
So it's more to do than I expected, and that's why it takes some time.
When that is done I can continue with the MPR121.
So it's currently work in progress.
Do you have an MPR121 and want to use it in MRL ?
I have three on their way,
I have three on their way, not due for almost a month.
Thought that would be good, one in each arm, and one on the back to allow area's of the covered to be sensitive to touch.
This could be used to give the inmoov the appearance of feeling if it reacts to an area being touched in an appropiot way,
For an arm, it could turn its head to face the area and move the arm away for the touched side. as an example.