PLAY for ChibiOS: RF module

This forum is about you. Feel free to discuss anything is related to embedded and electronics, your awesome projects, your ideas, your announcements, not necessarily related to ChibiOS but to embedded in general. This forum is NOT for support.
User avatar
RoccoMarco
Posts: 635
Joined: Wed Apr 24, 2013 4:11 pm
Location: Salerno (Italy)
Has thanked: 77 times
Been thanked: 60 times
Contact:

PLAY for ChibiOS: RF module

Postby RoccoMarco » Mon Nov 24, 2014 3:48 pm

Hey there.
I have not so much time to dedicate to PLAY with embedded but I'm still here. I have written code for NRF24L01 (that is a very cheap module for Radio Frequency communication).

It seems to work fine but I have to make some changes to PLAY before to release a stable 0.1.3 version even on Gyro\Accel\Comp modules.

Until that moment I would like to release these two demos for who want to PLAY with this modules.

Note that actually rfTransimit() and rfReceive() are blocking (I have to implement a timeout). Indeed rfTransimit()tries to retransmit then return an error messages, rfReceive() doesn't return until not receives.

Nucleo F0 is the receiver, Nucleo F4 the sender.

Ciao,
RM
Attachments
PLAY - RF MODULE.7z
0.1.3 unstable
(76.56 KiB) Downloaded 156 times

User avatar
RoccoMarco
Posts: 635
Joined: Wed Apr 24, 2013 4:11 pm
Location: Salerno (Italy)
Has thanked: 77 times
Been thanked: 60 times
Contact:

Re: PLAY for ChibiOS: RF module

Postby RoccoMarco » Fri Dec 05, 2014 6:52 pm

Hey there. I'm still working on PLAY. I have improved the RF module achieving good results.

RF works quite fine! I have implemented Timeout on rfReceive() and rfTransmit()...
Now Accelerometer could use SPI and I2C mutexes and the same Hardware could be used by many different threads.
Still working on the Doku and major adjustments on GYRO and COMP driver...

I will release version 0.2.0 this weekend...

The real funny thing is that today I had the chance to measure the Electric Field generated by the NRF24L01

If some values changing in the Expression Window is so exciting, try to immagine that:

Image

User avatar
RoccoMarco
Posts: 635
Joined: Wed Apr 24, 2013 4:11 pm
Location: Salerno (Italy)
Has thanked: 77 times
Been thanked: 60 times
Contact:

Re: PLAY for ChibiOS: RF module

Postby RoccoMarco » Mon Dec 08, 2014 3:16 pm

I love that Lizard... It gives every instrument that I need.

I'm developing on PLAY adding the possibility to gain exclusive access to my Devices... And I haven't to develop anything... I can use xxxAcquireBus() and xxxReleaseBus().

Code: Select all

/**
 * @brief   Gains exclusive access to the GYRO device.
 * @details This function tries to gain ownership to the GYRO device, if the
 *          device is already being used then the invoking thread is queued.
 * @pre     In order to use this function the option @p GYRO_USE_MUTUAL_EXCLUSION
 *          must be enabled.
 *
 * @param[in] gyrop      pointer to the @p GYRODriver object
 *
 * @api
 */
void gyroAcquireDevice(GYRODriver *gyrop) {

  chDbgCheck(gyrop != NULL, "gyroAcquireDevice");
#if GYRO_USE_SPI || defined(__DOXYGEN__)
  if(gyrop->hwsetup == GYRO_L3GD20_OVER_SPI) {
    spiAcquireBus(gyrop->config->spip);
  }
#endif
#if GYRO_USE_I2C || defined(__DOXYGEN__)
  if(gyrop->hwsetup == GYRO_L3GD20_OVER_I2C) {
    i2CAcquireBus(gyrop->config->i2cp);
  }
#endif
}


Anyway I'm finishing the re-arrangment of play. I will release it today as version 0.1.5
with support to
GYRO, ACCEL, COMP, AHRS, RF... I will add next support to Bluetooth, Temeperature Sensors and support for more accelrometers, gyros and compasses...


Return to “User Projects”

Who is online

Users browsing this forum: No registered users and 1 guest