Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - hblanken

Pages: [1]
TinyDuino / Consistent 5V - external power
« on: August 08, 2017, 06:51:10 AM »
Many threads in this forum show how the 3.3V-4.2V tiny batteries are not powerful enough to run many stacked boards on battery supply.

I have similar experiences. The code works fine on USB souce with 5V but when I switch to the tiny 290mAh 3.7v battery the green light just barely runs and wireless transmission etc breaks down etc. :'(

So here is my question, how can we get a more consistent 5V / 500mA (or whatever is required) power supply to the tinydinos?

The tinydino processor board description states the following:
>>External power supported with a 0.1″ power connection holes. Supports automatic switching between +5V USB and vbatt

One option is to solder a external power supply to the processor board - can someone explain me in simple terms how to do this or point me to a tutorial please? E.g. how would I solder a powerboost 500c board to the tinydino processor board?
Thanks for any help

TinyDuino / Send GPS data over BLE nordic NRF8001
« on: November 26, 2016, 07:34:04 AM »
I just got my full stack of boards and I am a great fan of Tinycircuits already!

However, somehow I cannot figure out how to send GPS lat/long/time over Bluetooth to a nRF UART app on Android or another Arduino.

I used the http://makezine.com/projects/make-37/gps-cat-tracker-2/ and on my Serial Monitor I get the NMEA format. I can also display it in Google Earth. This is all great.

Then I try the TinyShield_NRF8001_BLE_Example with Accelerometer on Codebender and that also works well.

Putting both together gives me significant headache. If I use the TinyGPS++ library, I got as far as being able to receive empty gps strings in the Android app. However, I dont think the GPS shield reads any data. I tried for 3 days, I am lost. Who can help to give me a sketch to collect GPS data and send it over Bluetooth to another Arduino, Raspberry or Android app.
Code: [Select]
#include <TinyGPS++.h>
#include <Wire.h>
#include "BMA250.h"

// accel
//BMA250 accel;

#define BLE_DEBUG false

#include "SPI.h"
#include "lib_aci.h"
#include "aci_setup.h"
#include "uart_over_ble.h"
#include "services.h"
#include <SoftwareSerial.h>
// The Arduino pins used by the GPS module
static const int GPS_ONOFFPin = A3;
static const int GPS_SYSONPin = A2;
static const int GPS_RXPin = A1;
static const int GPS_TXPin = A0;
static const int GPSBaud = 4800;
// The TinyGPS++ object
TinyGPSPlus gps;
// The GPS connection is attached with a software serial port
SoftwareSerial Gps_serial(GPS_RXPin, GPS_TXPin);

uint8_t ble_rx_buffer[21];
uint8_t ble_rx_buffer_len = 0;

//when using this project in the Arduino IDE, delete the following include and rename UART.h to UART.ino
#include "UART.h"

void setup(void)
  // Init the GPS Module to wake mode
  pinMode(GPS_SYSONPin, INPUT);
  pinMode(GPS_ONOFFPin, OUTPUT);
  digitalWrite( GPS_ONOFFPin, LOW );   
  if( digitalRead( GPS_SYSONPin ) == LOW )
     // Need to wake the module
    digitalWrite( GPS_ONOFFPin, HIGH );
    digitalWrite( GPS_ONOFFPin, LOW );     
  // Open the GPS serial port 
  //accel.begin(BMA250_range_2g, BMA250_update_time_64ms);//This sets up the BMA250 accelerometer
  //uart.setDeviceName("DINO"); /* 7 characters max! */

int inByte = 0;         // incoming serial byte
byte pbyGpsBuffer[100];
int byBufferIndex = 0;

void loop() {
while (Gps_serial.available() > 0)
  aci_loop();//Process any ACI commands or events
//  Serial.println(msg);

    //accel.read();//This function gets new data from the accelerometer
    String msg = String(gps.location.lat(), 3);
      msg += ":";
      msg += String(gps.location.lng(), 3);
      msg += ":";
      msg += String(gps.altitude.value());
    uint8_t sendBuffer[20];
    uint8_t length = 20;
    msg.getBytes(sendBuffer, 20);
    lib_aci_send_data(PIPE_UART_OVER_BTLE_UART_TX_TX, sendBuffer, length);
// Debug: if we haven't seen lots of data in 5 seconds, something's wrong.
if (millis() > 5000 && gps.charsProcessed() < 10) // uh oh
  Serial.println("ERROR: not getting any GPS data!");
  // dump the stream to Serial
  Serial.println("GPS stream dump:");
  while (true) // infinite loop
    if (Gps_serial.available() > 0) // any data coming in?

Thank you for help

Pages: [1]