frame

nucleo-F401RE expansion boards

Hello, 
I'm a python developer but completely new with "board" programming, I would like to make some experiments, the final goals of mine experiments will be to create a system that collect data and sent it to a central server  (some  sort of iot prototype) 
I'm able to connect my nucleo-f401re, viperize it and work with some exaples but I'm blocked while trying to  use some of the expansion boards I had microphone (MP34DT01-M) bluetooth ( IDB04A1)   proximity sensor (VL6180X ).
I started from the last one (proximity sensor) because is the only one with a display (so at least I can "see" something but after connected to the board it seems without power.
I think I'm missing some basic step (not finded on getting started and tutorials) 

There is some good tutorial for a  (really) beginner?
p.s. I work on macos but i had access to a win8 machine (I used for update the firmware of the nucleo board)

Comments

  • floydfloyd Member
    edited December 2015
    hi @JcBobo ;
    I have a couple of that expansion boards but please, in order to be sure we are talking about the same products, post here the links to the specific product descriptions.

    On viper documentation you will find only info related to the use of Viper and not to the powering and linking with external sensors and expansion boards.
    however, we'll be more than happy to help you in assembling your iot project
     
    Daniele Mazzei
    Zerynth Chief System Architect
  • my problem is exactly that one, I'm not able to find some really beginner tutorial about linking sensors and expansion board.
    At the moment I have:
    microphones  http://www.st.com/web/en/catalog/tools/PF261986
    Proximity and ambient light  http://www.st.com/web/en/catalog/tools/PF261465
    inertial http://www.st.com/web/catalog/tools/FM116/SC1248/PF261191
    That are the first sensors i would like to use
     i suppose to need also some modules for connectivity but I have to decide if using wifi connection (maybe as first step) or some mobile network connectivity.
  • very weird behavior.
    This shields shouldn't require any particular procedure to be powered when plugged onto a nucleo board.
     
    Are you powering the nucleo board through USB?

    let's go step by step:

    ---ambient light:
    this is the user guide http://www.st.com/st-web-ui/static/active/en/resource/technical/document/user_manual/DM00154104.pdf
    it use the arduino connectors and shouldn't require any particular power source. just plug on the nucleo and power the board through USB it should power on.
    I don't have this board but looking at the user guide i don't see any power LED on it. this means that in order to see if it is really powered you need to communicate with it through I2C. i don't know if the display is directly controlled by the board also without any setup or preliminary data initialization mediated by the Nucleo board.

    here a code example from mbed that can help you getting started
    https://developer.mbed.org/users/highroads/code/VL6180x/

    ---microphone
    according to the user guide http://www.st.com/st-web-ui/static/active/en/resource/technical/document/user_manual/DM00187403.pdf

    this board use morphos connectors and allow various configuration to be selected by soldering specific pins on the board.
    to be honest i also tried to find some info on how to use this board and also some drivers or libraries for acquiring data through a Nucleo but i found only an expansion package for the XCube environment with no details or generic code  :'(
    here a video from ST that maybe can help 
    here a thread on the MBED forum where a user is asking the same https://developer.mbed.org/questions/61851/Disco-F746-how-to-read-microphone-input/

    ---inertial
    the only useful material i found is a "Hello World" project on MBed where this sensor is used
    https://developer.mbed.org/teams/ST/code/HelloWorld_IKS01A1/

    here is possible to find details on the I2C data registry and parameters.
    I have one of this board in my office, so if you want to start from this we can remotely support you.
    The MBed code can help you in getting started.

    ---Viper I2C
    The use of the I2C in Viper is well documented here http://doc.viperize.it/core.viper.stdlib/r0.3.1/i2c.html
    a good example of sensors controlled through I2C is this https://rawgit.com/viper-dev/lib-melexis-mlx90615/r0.3.0/docs/html/index.html
    you can add to the Viper IDE by using the Viper Package Manager
     
    let me know
    F
    Daniele Mazzei
    Zerynth Chief System Architect
  • JcBobo Member
    edited December 2015
    Thanks you very much. I will try now.
    Yes I'm powering the board directly from the usb port of my mac
     There is some operation I have to do for un-viperize the board and work with the mbed (online) ide? 
  •  There is some operation I have to do for un-viperize the board and work with the mbed (online) ide? 
    no, you can use it directly.
    but you should stay on Viper  :p 

    I can guarantee that using I2C in C for mbed isn't a child play...  B)

    Let me know if you want to develop the Viper Python script for the inertial sensors on the basis of the MBed code i linked. On Monday I'll be back in my office and I can help you with remote debugging.
     
    Daniele Mazzei
    Zerynth Chief System Architect
  • since i'm a really beginner on such hw related development I was thinking to "work" in that way:
    - use the mbed system (running some examples) in order to check that the boards and various expansion/sensors are working correclty (and to acquire a little more of knowledge)
    - replicate examples using viper ( i really don't want to learn c++ and use to use it for a single prototipe on a single board type)
    - adding custom logic 

    At least for using this two working day before the first of the year in some useful way

    Again Thanks you very mutch
  • that's a good plan!
    On monday i'll also start some Viper tests with the expansion boards I have and I'll let you know
    keep me posted

    @giacomo we need your help :)
    Daniele Mazzei
    Zerynth Chief System Architect
  • I had run some examples with the expansion I had "seeing" some output :P thanks you

    floyd said:
    that's a good plan!
    On monday i'll also start some Viper tests with the expansion boards I have and I'll let you know
    keep me posted

    @giacomo we need your help :)
    I will start working  with  Viper from that one do you have some examples from i can start?
  • Not for the expansion boards.
    You can try the i2c basics with:
    The use of the I2C in Viper is well documented here http://doc.viperize.it/core.viper.stdlib/r0.3.1/i2c.html
    a good example of sensors controlled through I2C is this https://rawgit.com/viper-dev/lib-melexis-mlx90615/r0.3.0/docs/html/index.html
    you can add to the Viper IDE by using the Viper Package Manager


    Daniele Mazzei
    Zerynth Chief System Architect
  • ta1db Member
    edited November 27

    Dear Floyd,
    Could you please explain how we can use it directly ? I promise to stay with Viper :) 
    I have started another discussion about the same issue here: https://community.zerynth.com/discussion/586/mbed-examples-on-zerynth-vm#latest
    Thanks in advance.
  • See your other discussion ;)
    Matteo Cipriani
    Zerynth Support Team
Sign In or Register to comment.

ZERYNTH Community

@ 2016 Zerynth.com, all rights reserved.