Wixel Apps

Here is a list of all the Wixel apps we know about:

Apps in the Pololu version of the Wixel SDK. The Pololu Wixel SDK has over 20 apps that do a variety of things. Some of them are documented in the user’s guide and available in the “Wixel Apps” section of the Wixel User’s Guide. All of them have comments at the top of the main .c file explaining how to use them.

xDrip. xDrip is a project that allows you to see your blood glucose levels on an Android phone. The Wixel code for talking to the Dexcom radio transmitter can be found in the StephenBlackWasAlreadyTaken/wixel-xDrip repository on github.

radio_multi library by Geoff. Allows for multi-Wixel communication without changing channels. Uses ACK packets. If the link is broken, see this thread.

wireless_serial_channel app by Geoff. This modified version of the Wireless Serial App is capable of changing its radio channel at run time, allowing it to communicate with more than one Wixel. It was used as part of Project Tabletop in order to control multiple m3pi robots from a single Wixel connected to a computer. If these links are broken, see this thread.

WS2812B LED app by ekholm. This app uses SPI and DMA to control WS2812B LED strips.

Makefiles for use outside of wixel-sdk by ekholm. This isn’t really an app, but these Makefiles allow you to build a Wixel app in its own directory outside of the Wixel SDK.

Quiz Button App by attackcrow. This is designed for Jeopardy-style quiz games, and allows you to determine which participant pressed their button first.

I/O Repeater Network by Carlo Bernaschina. This is a modified version of the I/O repeater app that uses Carlo’s radio_network library. The radio_network library is a modified version of radio_queue that allows for a network of Wixels, each with its own address. Each Wixel maintains a routing table that helps it relay packets from one Wixel in the network to another.

I/O Repeater address-based by Carlo Bernaschina. This is a modified version of the I/O repeater app that demonstrates how to use the address-filtering feature of the CC2511 radio to filter out packets that are not intended for that Wixel. It uses the radio_address library that Carlo wrote in order to set up the filtering.

Wireless Servo Widget by Martan. This project allows a single master Wixel to control up to 64 slaves, with each slave controlling up to 6 servos. Martan also sells a Slave Widget Breakout Board that makes it easy to connect servos to the slave Wixels. Martan also posted about the project on this forum.

usb_msd app by VolAnd. Turns the Wixel into a USB SD card reader/writer.

snes_controller app by kevinwchang. Reads the signals from an Super NES controller and implements a USB HID interface, so you can have a USB SNES controller.

gg_button app by kevinwchang. When an input line is triggered, sends key codes to the computer that make it chat “gg” to all players and leave a Starcraft 2 game. Implements a USB Human Interface Device.

zelda_chest app by kevinwchang. This was part of a battery-powered system that mimics a chest from the Zelda: Ocarina of Time. When the chest is opened, the Wixel triggers a sound to start using one of its I/O lines. When an item is removed from the chest, the Wixel triggers a different sounds to start. Two sensors are used to detect if the chest is open and whether there is an item in the chest.

oled-spectrum-analizer by Oestoidea. Spectrum analyzer apps with an SPI and/or I2C SSD1306 OLED display.

USB Test Device app by Pololu. This is an app for the Wixel that exposes some simple USB interfaces to the USB host. We made it so that we can have automated tests for our USB library, libusbp. Also, the Makefile for this app is a good starting point if you want to have your app’s code live outside the Wixel SDK folder.

Apps under development:

test_radio_sleep app by slasi. Shehryar Lasi has added functions to the Wixel libraries for stopping the radio and putting the Wixel to sleep, and made this app for testing it.

general_joystick app by pdg137. Allows you to make a joystick with up to 8 buttons and 6 axes. Implements a USB Human Interface Device.

Timer and PWM apps by dpark83. dpark83 wrote a library for working with Wixel timers and these are his apps for testing the library.

If you want to use one of these apps, the best way is to download the entire Wixel SDK that the app is from, which guarantees you will have the same versions of the Wixel libraries that the app was developed for.

If you’re a git user, you might want to get all of our latest changes to the SDK and also be able to compile the 3rd party app. You can do this using the “git pull” command. Here’s an example sequence of commands that clones our repository and then pulls changes from a 3rd party repository:

git clone -o pololu git://github.com/pololu/wixel-sdk.git
cd wixel-sdk
git remote add slasi https://github.com/slasi/wixel-sdk.git
git pull slasi master

Please note that the resulting merged SDK will not have been tested by Pololu or by the 3rd party, so it is more likely to have problems.

If you wrote an app, please make a new topic in the Wixel forum and let us know about it!