TinyCircuits

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.


Messages - hblanken

Pages: [1]
1
TinyDuino / Re: Consistent 5V - external power
« on: August 08, 2017, 07:36:53 AM »
I think I found the answer myself - I just solder wires to the + - on the other side of the battery jack and solder these wires to a 2Pin block on the powerboost.
Or I connect a usb cable from the powerboost to the tinydino.

Still a question: Why do the tiny batteries not provide enough power for stacking lots of boards? Would be a much cleaner solution.

Any suggestions?

2
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?
 https://www.adafruit.com/product/1944
Thanks for any help

3
TinyDuino / Re: Send GPS data over BLE nordic NRF8001
« on: November 28, 2016, 03:51:31 AM »
Hi all - I solved it myself - if anyone is interested, here is the problem. I had conflicting baud rates on the serial and the GPS.
The correct baud for my GPS module release is 9600 and I set the baud for the Serial to 115200. Now it send perfectly to Bluetooth. :)

4
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 );   
  delay(5);
  if( digitalRead( GPS_SYSONPin ) == LOW )
  {
     // Need to wake the module
    digitalWrite( GPS_ONOFFPin, HIGH );
    delay(5);
    digitalWrite( GPS_ONOFFPin, LOW );     
  }
  Serial.begin(9600);
  // Open the GPS serial port 
  Gps_serial.begin(GPSBaud); 
  Wire.begin();
 
  //accel.begin(BMA250_range_2g, BMA250_update_time_64ms);//This sets up the BMA250 accelerometer
  BLEsetup();
  //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)
    gps.encode(Gps_serial.read());
  aci_loop();//Process any ACI commands or events
 
//  Serial.println(msg);

  if(ble_rx_buffer_len){
 
    //accel.read();//This function gets new data from the accelerometer
   
   
    Serial.println(ble_rx_buffer_len);
    Serial.println((char*)ble_rx_buffer);
   
    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);
   
    ble_rx_buffer_len=0;
  } 
 
// 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?
      Serial.write(Gps_serial.read());
}
}


Thank you for help

Pages: [1]