pinkos
pinkos copied to clipboard
Alternative operating system for IM-Me toy with radio, LCD terminal and keyboard support
PinkOS
PinkOS is a minimal operating system/bootloader for the GirlTech IM-Me and CC111x. http://code.google.com/p/pinkos/ Joby Taffey [email protected]
It provides a bootloader with a command line console (either serially or using LCD + keyboard) and both peer-to-peer and broadcast packet radio.
To get started, read precompiled/README
Status:
PinkOS is working, but incomplete.
Desired features include:
- flash write support in the bootloader
- a reliable transport protocol
- flow controlled serial
- flash based non-volatile config data
- support for USB CDC on CC1111
Building:
Currently, radio network addresses are hardcoded into each firmware. Set the address at compile time with DEVADDR=<0-255>. Note - 0 is the broadcast address.
To build and install PinkOS:
$ make erase
For IM-Me handset: $ make clean && make DEVICE=HANDSET DEVADDR=
installFor IM-Me dongle: $ make clean && make DEVICE=DONGLE DEVADDR=
installTo build and install an application: $ cd apps/speccan && make install (note: handset only)
or
$ cd apps/shellapp && make clean && make DEVICE=DONGLE install $ cd apps/shellapp && make clean && make DEVICE=HANDSET install
LCD Console:
The IM-Me handset version provides a text console using the LCD and keyboard:
- caps lock is caps lock not shift
- alt behaves like caps lock
- the cursor will change to signal the mode
- key repeat is not supported
Serial Console:
The IM-Me dongle version provides the console over TTL level RS232 at 115200 8-n-1 with no flow control. See http://code.google.com/p/pinkos/wiki/IMMeDongleSerial for the required hardware modifications.
Radio Packet Format:
All radio packets begin with a 5 byte header: uint8_t len; // packet length (not including this byte) uint8_t dstAddr; // destination address uint8_t srcAddr; // source address uint8_t seq; // sequence number, set top bit to request an ACK uint8_t type; // packet type
Console Commands:
help show help text
reset reset
boot boot application from 0x4000
xdata
pdata
tx
led
teleled
gfxinit
gfxplot
gfxtest
Authors
Joby Taffey [email protected]
Portions Copyright (c) 2010: Travis Goodspeed [email protected] http://daveshacks.blogspot.com