Shop OBEX P1 Docs P2 Docs Learn Events
Propeller add-on for Raspberry Pi: RoboPi.. the most advanced robot controller for Pi - Page 11 — Parallax Forums

Propeller add-on for Raspberry Pi: RoboPi.. the most advanced robot controller for Pi

1678911

Comments

  • Heater.Heater. Posts: 21,230
    edited 2014-08-25 23:12
    Bill,
    So far, I've resisted getting a Parallella.
    I have a Parallella here. Had it for some time. I have never even powered it up!

    I threw a hundred quid or whatever it was into it's kickstarter because:

    1) At that time it was an OK price for an ARM board even without the FPGA and Epiphany parallel processor.

    2) The Epiphany sounded like an interesting idea worthy of support.

    3) I thought the FPGA stuff might be fun to play with.

    So why is it languishing in it's box of the shelf here?

    I am now awash with ARM boards. Raspis and IGEPS and whatever. Also now a bunch of MIPS based machines.

    That Epiphany is all about fast maths, number crunching. It might be fun to tinker with one day but I don't have the maths chops for it. Never mind parallelizing algorithms. I barely understand how an FFT works and parallelizing it for the Propeller with OpenMP was a project in itself.

    The FPGA stuff is a different world. A big investment of time and energy will be required to get into that. And now we have the P1 HDL and nano board to play with...life is not going to be long enough.

    Glad to hear the loader is working, I have to try and get that into the mainline propgcc sources. Did you recompile it or did the binary just work?
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-08-26 18:53
    Heater,

    LOL! I know what you mean about "awash with ARM boards"...

    I agree. FPGA is a better investment in time than Parallella.

    Re/ propeller-load

    I posted in the thread we were discussing it in before, I still can't rebuild it on a Pi.

    http://forums.parallax.com/showthread.php/155010-Propeller-Raspberry-PI-experiment-board/page3
  • doggiedocdoggiedoc Posts: 2,241
    edited 2014-08-27 12:10
    Just ordered a RoboPi lite kit from you on ebay. Thanks Bill!
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-08-27 13:10
    Thank you doggiedoc!

    Do keep up posted with what you build with it!
    doggiedoc wrote: »
    Just ordered a RoboPi lite kit from you on ebay. Thanks Bill!
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-09-05 09:15
    Sigh... two more ARM boards arrived... and other work has distracted me from P1V & RoboPI.

    I think that I can't build propeller-load on my Pi's because I was trying to build it by itself, I may need to build all of propgcc so that ./configure sets up the environment for the build.

    At least that is my latest theory.

    propeller-load and RoboPi work on both Raspberry Pi and Banana Pi.

    I managed to get some Netis WF-2111 wifi sticks, of the sticks I tested so far they are the only ones that work with Raspberry Pi Model A / B / B+ and Banana Pi.
    Heater,

    LOL! I know what you mean about "awash with ARM boards"...

    I agree. FPGA is a better investment in time than Parallella.

    Re/ propeller-load

    I posted in the thread we were discussing it in before, I still can't rebuild it on a Pi.

    http://forums.parallax.com/showthread.php/155010-Propeller-Raspberry-PI-experiment-board/page3
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-09-09 16:11
    Thanks for the nice ebay feedback doggiedoc!

    Update:


    According to my tests, I currently know of three USB WiFi sticks that work without a powered hub on a Model A / Model B / Model B+ so they are great for use with RoboPi

    1. Netis WF-2111
    2. EdiMax EW-7811Un
    3. Element14's WiPi

    Here is a link to the full results, including tests with a powered hub:

    http://www.mikronauts.com/raspberry-pi/pi-usb-wifi-tests/

    Sorry about the delay in releasing the Python API & newer docs, other work intervened.
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-09-17 13:57
    Update:

    The next firmware release will include tested C demo files for the RoboPi API.

    I am updating the sample code in the manual today as I just finished testing the samples.

    I have already added the Python API :-)

    I also added a "resetRoboPi" utility which wiggles GPIO#17 in case your code left a PWM or servo task running on RoboPi, this reboots RoboPi.

    Here is a list of the samples coming to the product page (as a zip):

    RoboPi_analogRead.c
    RoboPi_analogWrite.c
    RoboPi_digitalRead.c
    RoboPi_digitalWrite.c
    RoboPi_servoWrite.c
    RoboPi_readDistance.c
    RoboPi_reset.c

    The demos also cover RoboPiInit(), pinMode(), etc.

    I'll add a shell script or make file to compile the demos.
  • photomankcphotomankc Posts: 943
    edited 2014-09-18 06:36
    Thanks for the nice ebay feedback doggiedoc!

    Update:


    According to my tests, I currently know of three USB WiFi sticks that work without a powered hub on a Model A / Model B / Model B+ so they are great for use with RoboPi

    1. Netis WF-2111
    2. EdiMax EW-7811Un
    3. Element14's WiPi

    Here is a link to the full results, including tests with a powered hub:

    http://www.mikronauts.com/raspberry-pi/pi-usb-wifi-tests/

    Sorry about the delay in releasing the Python API & newer docs, other work intervened.


    Just as another data point I've had good look with the ASUS USB-N10 as well on the Pi's
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-09-24 15:17
    Thank you - will check it out.
    photomankc wrote: »
    Just as another data point I've had good look with the ASUS USB-N10 as well on the Pi's
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-09-24 15:19
    I’ve been updating the documentation and testing v0.85, and it is almost ready to go!

    New in this release:

    - python 2.7 API
    - python 3.2 API
    - getPacket()/putPacket() C API extension capability
    - tested C examples in the new manual
    - Python API documentation
    - zip file of C examples
    - resetRoboPi shell utility
    - support for the Banana Pi

    I expect to release it as soon as I test it a bit more (before Monday). For those that can’t wait, I have uploaded the v0.85 manual to the RoboPi product page at:

    http://www.mikronauts.com/raspberry-pi/robopi/
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-10-11 11:31
    Update:

    RoboPi C/C++ sample code for the Raspberry Pi has been translated to Python :-)

    Here is one sample to whet your appetites: (HC_SR04 sensor is on Prop pin 16, the "SENSOR1" servo connector)
    #!/usr/bin/python
    import RoboPiLib as RoboPi
    import time as time
    
    RoboPi.RoboPiInit("/dev/ttyAMA0",115200)
    
    HC_SR04 = 16
    
    while 1:
      print "Distance is ", RoboPi.readDistance(HC_SR04)
      time.sleep(0.1)
    
    



    I just have to figure out why RPi.GPIO's setmode() method is not working for me, as I use it in resetRoboPi.py
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-10-12 17:53
    Update:

    I've released a new product "Pi Rtc Dio" which is designed to be:

    - an I/O + RTC expander for RoboPi (powered from my 4 pin I2C header)
    - an I/O + RTC expander for the Raspberry Pi
    - it has a nice little prototyping area

    Here are a couple of little secrets about it:

    - you can daisy chain four of them per I2C bus
    - it also functions as a PropPlug (when mounted on a Raspberry Pi or Banana Pi)
    - it will work with any Propeller board that can supply 3.3v, SDA, SCL and GND
    - it will work with ANY microcontroller :)

    This of course means that you can use RoboPi + "Pi Rtc Dio" WITHOUT a Pi!

    http://www.mikronauts.com/raspberry-pi/pi-rtc-dio/

    Pi_Rtc_Dio_0640a_web.jpg


    v0.85 of RoboPiLib with Python support & demos will be uploaded later tonight, or tomorrow latest.
    800 x 516 - 229K
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-10-21 18:09
    UPDATE: Python support for RoboPi !!!

    Elf_p1_08071.jpg


    The new RoboPi v0.85 software release provides:

    v0.85 of the C RoboPi Lib
    C sample code using RoboPiLib
    Python 2.7 support
    Python 3.2 support
    Python sample code
    Compiled test utilities in the C Demos folder

    This release took longer than anticipated due to other work and “real life ™”

    You can find RoboPi v0.85 libs & demos on the product page at:

    http://www.mikronauts.com/raspberry-pi/robopi/
    800 x 530 - 140K
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-11-02 13:49
    I am adding support for HMC6352 and HMC5883L based I2C compass modules in the upcoming v0.87 version of the firmware and libraries.

    Two new API calls will be added:

    int initCompass(int model, int offset) // model = HMC6352 | HMC5883, offset = difference between true north and magnetic north at current location

    int getHeading() // returns 0-359 degrees, -1 means error / not initialized

    I don't see any point in supporting fractional degrees, the accuracy of these modules is really only about 2 degrees anyway.

    I will consider adding other popular inexpensive compass modules in the future, don't be shy about letting me know which are your favorites (please provide links)
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-12-13 11:00
    Update:

    From this point forward, all RoboPi Full Kits will ship with the EEPROM pre-programmed with the latest available version of the firmware.

    I am making this change so that people new to the Propeller don't have to use propeller-load to program the firmware before being able to use RoboPi.

    As a consequence, I find myself having to program a lot of EEPROM's, and since I did not want to do that one at a time, I made a gang programmer for EEPROM's, using a Raspberry Pi Model A+ (but it will work with Models A, B, B+ as well)

    I was considering using a prop to run the programmer, however I'd have had to make multiple passes on each chip, as there is not enough ram in a prop to hold a potentially 64KB image.

    I wrote an article describing how to build such an eeprom gang programmer, with schematics, code etc. ... this should be useful for all propeller users who need to program a lot of EEPROM's :)

    http://www.mikronauts.com/2014/12/09/making-a-raspberry-pi-based-eeprom-gang-programmer/

    FYI, I expected to have the compass code available by now, but now I expect early January.
  • Bill HenningBill Henning Posts: 6,445
    edited 2014-12-20 08:08
    Updated post#1 with supported platforms list
  • Bill HenningBill Henning Posts: 6,445
    edited 2015-01-27 19:18
    I wanted to be able to add a matrix keypad to some of my robots.

    Without tying up a lot of I/O on RoboPi or the Raspberry Pi... by using one port of an MCP23017 on the Pi Rtc Dio board.

    Normally, I'd mount 10 pin female connectors for the GPIO ports, but in this case I wanted to be able to plug the keypad in - and stack RoboPi on top of it, so I used right angle male headers.

    FYI: the board will run just fine with any micro controller that has a 3.3V or 5V I2C interface, it just needs a cable with 3v3, SDA, SCL and GND, like the one on RoboPi for example :)

    http://www.mikronauts.com/raspberry-pi/raspberry-pi-i2c-4
  • David BetzDavid Betz Posts: 14,516
    edited 2015-01-28 04:58
    I've looked on the Micronauts web site but was unable to find the schematic for the RoboPi. There are two LEDs on the board. One is a power LED. What does the other one do? Also, where is the schematic?
  • Bill HenningBill Henning Posts: 6,445
    edited 2015-01-28 05:34
    Hi David,

    There are two LED's

    - green LED showing that the board is powered (from Pi 5V, regulated down to 3.3V by RoboPi's on-board regulation)
    - red LED shows that external servo power is connected at the screw terminal

    The schematic is on page 6 of the RoboPi Build Manual, which can be found on the RoboPi product page under downloads.

    There is now a short form link to get to the RoboPi product page:

    http://RoboPi.com

    (not case sensitive, so robopi.com also works)

    RoboPi can be programmed directly from a Raspberry Pi using TX/RX/GPIO#17, and can also run stand-alone programmed with a PropPlug on the 5 pin COMM header.

    FYI,

    EZasPi and Pi Rtc Dio can both be used as PropPlugs for programming propellers from a Raspberry Pi (or Banana Pi/Pro) using a four conductor cable, just plug one side into pins 1-4 of the COMM header on those boards, and the other end of the cable into the header normally used for PropPlug on any prop board.
    David Betz wrote: »
    I've looked on the Micronauts web site but was unable to find the schematic for the RoboPi. There are two LEDs on the board. One is a power LED. What does the other one do? Also, where is the schematic?
  • David BetzDavid Betz Posts: 14,516
    edited 2015-01-28 05:39
    Thanks Bill. I was kind of hoping the second LED was for RX/TX activity. I'm having trouble getting my loader working on the RaspberryPi and thought about switching to RoboPi for testing if it displayed serial activity.
  • Bill HenningBill Henning Posts: 6,445
    edited 2015-01-28 05:43
    You can use it to monitor TX or RX, as long as you don't have a battery connected at the screw terminals.

    Configure SV2 and SV3 for running from Pi 5V (so do not have any servos hooked up, you may be able to get away with having just one 9g micro servo hooked up)

    Use a jumper wire from the "vbat" leg of SV2 or SV3 to pin 3 or 4 of the COMM connector (or TX/RX on the Pi connector)
    David Betz wrote: »
    Thanks Bill. I was kind of hoping the second LED was for RX/TX activity. I'm having trouble getting my loader working on the RaspberryPi and thought about switching to RoboPi for testing if it displayed serial activity.
  • David BetzDavid Betz Posts: 14,516
    edited 2015-01-28 05:57
    You can use it to monitor TX or RX, as long as you don't have a battery connected at the screw terminals.

    Configure SV2 and SV3 for running from Pi 5V (so do not have any servos hooked up, you may be able to get away with having just one 9g micro servo hooked up)

    Use a jumper wire from the "vbat" leg of SV2 or SV3 to pin 3 or 4 of the COMM connector (or TX/RX on the Pi connector)
    Thanks Bill! I'll give that a try when I get back over the weekend.
  • Bill HenningBill Henning Posts: 6,445
    edited 2015-02-02 16:39
    UPDATE:

    MIPS Creator CI20 added as a supported RoboPi platform.

    As part of my review of the CI20, I ported my RoboPi C library to it - so now RoboPi is supported on the CI20. I may add RoboPy support to the CI20 later.

    http://www.mikronauts.com/reviews/mips-creator-ci20-review-first-look/

    RoboPi now supports (and has been tested with)

    Raspberry Pi Model A
    Raspberry Pi Model B
    Raspberry Pi Model A+
    Raspberry Pi Model B+

    Banana Pi
    Banana Pro

    MIPS Creator CI20

    More supported platforms coming soon!
  • jmgjmg Posts: 15,173
    edited 2015-02-02 19:14

    RoboPi now supports (and has been tested with)

    Raspberry Pi Model B+
    MIPS Creator CI20

    Be interesting to see the new Quad Core Raspberry Pi 2 benchmark column added to those numbers.

    Another developer benchmark would be fastest Serial and SPI clock speeds supported, and Clock granularity offered.
  • Bill HenningBill Henning Posts: 6,445
    edited 2015-02-02 19:19
    Pi2B column will certainly be added :)

    If my experience with the release of the A+ and B+ is any indication it will be about two weeks before I can get my hands on one.

    Good suggestion re/ adding rows for max serial & SPI speeds!
    jmg wrote: »
    Be interesting to see the new Quad Core Raspberry Pi 2 benchmark column added to those numbers.

    Another developer benchmark would be fastest Serial and SPI clock speeds supported, and Clock granularity offered.
  • Bill HenningBill Henning Posts: 6,445
    edited 2015-02-05 17:58
    Update:

    RoboPi is now available for the Odroid-C1 with support for C/C++ and Python.

    I just finished testing it, and it works great :)

    The only change required is to use "/dev/ttyS2" when calling RoboPiInit instead of "/dev/ttyAMA0" on the Raspberry Pi.

    This expands the list of RoboPi supported platforms to eight single board computers:

    - Raspberry Pi Model A
    - Raspberry Pi Model A+
    - Raspberry Pi Model B
    - Raspberry Pi Model B+

    - Banana Pi
    - Banana Pro

    - MIPS Creator CI20 (C/C++ only at this time)

    - ODROID-C1

    Additional platforms will be added as time allows.

    I expect to add the new "Raspberry Pi 2 Model B" to the qualified platform list next week.
  • Bill HenningBill Henning Posts: 6,445
    edited 2015-02-11 18:58
    Update:

    RoboPi is now also qualified on the new Raspberry Pi 2 Model B!

    This expands the list of RoboPi supported platforms to nine single board computers:

    - Raspberry Pi Model A
    - Raspberry Pi Model A+
    - Raspberry Pi Model B
    - Raspberry Pi Model B+
    - Raspberry Pi 2 Model B

    - Banana Pi
    - Banana Pro

    - MIPS Creator CI20 (C/C++ only at this time)

    - ODROID-C1

    Additional platforms will be added as time allows.
  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2015-03-06 07:35
    This looks like a good match for your Robo Pi

    =====================================================================================================
    PiJuice - A Portable Project Platform For Every Raspberry Pi

    PiJuice is the ultimate module for all portable Raspberry Pi projects. Includes many fun maker projects and a solar power version too!

    Features:

    Onboard 1400 mAh "off the shelf" Lipo battery (with support for larger Lipo Battery up to 5000 mAH+) to last up to 24 hrs + in constant use!
    Full UPS (Uninterrupted Power Supply) solution.
    Integrated RTC (Real Time Clock)
    On board intelligent on/off switch
    Low power deep-sleep state with wake on interrupt/calendar event
    Programmable multi-colored RGB led
    Full power management API available to Raspberry Pi OS with auto shutdown capability when running low on batteries
    Raspberry Pi HAT compatible layout, with on board EEPROM for easy plug and play operation
    Low profile design, to fit inside lots of existing Raspberry Pi cases!



    https://www.kickstarter.com/projects/1895460425/pijuice-a-portable-project-platform-for-every-rasp
  • Bill HenningBill Henning Posts: 6,445
    edited 2015-03-07 09:52
    Thanks Bob!

    Looks interesting, except the battery capacity is much lower than I regularly use (5000mAh and 12000mAh) USB power banks.

    For an RTC I use http://www.mikronauts.com/raspberry-pi/pi-rtc-dio/ and while I have not tested it yet, it is theoretically capable of waking the Pi, it has an alarm output on a 2 pin header that could be used to reset/power on a Pi.

    Even though it is not documented yet, the Pi Rtc Dio board can be used with a Propeller board (no Pi required) - all it needs is 3.3V, SDA, SCL and GND ... it is designed to also be used with my other boards four pin I2C connector.

    I can have four boards per I2C bus (but only one with the RTC populated) for a total of 128 digital I/O's per I2C bus.
  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2015-03-08 10:00
    @ Bill Henning

    I Agree that Onboard 1400 mAh seems a little limited but I guess it's designed for general use .
Sign In or Register to comment.