micro:bit Gateway 1.1 Icon
0
0 Ratings
2K+
Downloads
1.1
version
Dec 30, 2020
release date
965.8 KB
file size
Free
Download

What's New

Android 11

About micro:bit Gateway Android App

This app establishes a channel between two micro:bit devices. The channel will be handeled as UART communication. You have to develope a programm on each micro:bit device with UART transfer.

Indication aktive: BLE Indication (Default)
Indication inaktive: BLE Notification

Silent aktive: No visual logging
Silent inaktive: Logging

Requirements:
- Min. Android 4.4
- Bluetooth Low Energy (BLE)
- Paired devices
- micro:bit programm (developed by yourself)


MBED example:

#include "MicroBit.h"
#include "MicroBitUARTService.h"

MicroBit uBit;
MicroBitUARTService *uart;

int connected = 0;

void onConnected(MicroBitEvent e)
{
uBit.display.scroll("C");

connected = 1;
}

void onDisconnected(MicroBitEvent e)
{
uBit.display.scroll("D");
connected = 0;
}

void onButtonA(MicroBitEvent e)
{
if (connected == 0) {
uBit.display.scroll("NC");
return;
}
uart->send("Yes");
uBit.display.scroll("Y");
}

void onButtonB(MicroBitEvent e)
{
if (connected == 0) {
uBit.display.scroll("NC");
return;
}
uart->send("No");
uBit.display.scroll("N");
}

void onButtonAB(MicroBitEvent e)
{
if (connected == 0) {
uBit.display.scroll("NC");
return;
}
uart->send("SK");
uBit.display.scroll("SK");
}

void processBLEUart() {
uint8_t readBuf[22];
while (1) { // loop for ever
if ((!connected) || (!uart->isReadable())) {
uBit.sleep(50); // wait 50mS and check again
continue; // loop;
}
//else we are connected AND there is some input to read
if (uart->isReadable()) {
while (uart->isReadable()) {
int charCount = uart->read(readBuf, 22, ASYNC);
if (charCount != 0) {
for (int i = 0; i < charCount; i++)
uBit.display.scroll((char) readBuf[i]);
}
}
}
}
}


/*
IMPORTANT !!!
Oherwise you will run out of memory !

Recommend disabling the DFU and Event services in MicroBitConfig.h since they are not needed here:
microbit->microbit-dal->inc->core->MicroBitConfig.h

#define MICROBIT_BLE_DFU_SERVICE 0
#define MICROBIT_BLE_EVENT_SERVICE 0
#define MICROBIT_SD_GATT_TABLE_SIZE 0x500
*/

int main()
{
// Initialise the micro:bit runtime.
uBit.init();

uBit.messageBus.listen(MICROBIT_ID_BLE, MICROBIT_BLE_EVT_CONNECTED, onConnected);
uBit.messageBus.listen(MICROBIT_ID_BLE, MICROBIT_BLE_EVT_DISCONNECTED, onDisconnected);
uBit.messageBus.listen(MICROBIT_ID_BUTTON_A, MICROBIT_BUTTON_EVT_CLICK, onButtonA);
uBit.messageBus.listen(MICROBIT_ID_BUTTON_B, MICROBIT_BUTTON_EVT_CLICK, onButtonB);
uBit.messageBus.listen(MICROBIT_ID_BUTTON_AB, MICROBIT_BUTTON_EVT_CLICK, onButtonAB);


uart = new MicroBitUARTService(*uBit.ble, 32, 32);
uBit.display.scroll("Go");
create_fiber(&processBLEUart); // create fiber and schedule it.

release_fiber();
}

Other Information:

Package Name:
Requires Android:
Android 4.4+
Other Sources:

Download

This version of micro Android App comes with one universal variant which will work on all the Android devices.

Variant
2
(Dec 30, 2020)
Architecture
universal
Minimum OS
Android 4.4+
Screen DPI
nodpi (all screens)

All Versions

If you are looking to download other versions of micro Android App, We have 2 versions in our database. Please select one of them below to download.

Loading..