two faces, one connection

phone
llizard

what it is

Janus is an Android app that bridges your phone's media to LlizardOS. Named for the Roman god of doorways and transitions - the deity with two faces looking in opposite directions - it serves as the gateway between devices.

It runs a Bluetooth GATT server, exposing media information and accepting control commands. The phone becomes the source, the car thing becomes the display.

how it works

1 Janus starts a GATT server on your phone
2 LlizardOS connects as a GATT client
3 Media metadata flows to the car thing
4 Control commands flow back to the phone

gatt characteristics

track title
0x2001
current track name, read/notify
artist
0x2002
artist name, read/notify
album art
0x2003
compressed image data, read
playback state
0x2004
play/pause/position, read/notify
controls
0x2010
play, pause, skip, write
volume
0x2011
volume level, read/write

built with

kotlin android bluetooth le gatt server media3 room db
view on github

the other faces

Janus serves LlizardOS through Mercury - the Go BLE client on the CarThing that receives media state and sends back playback commands.

see Mercury see Llizard see LlizardOS
return to projects