Introduction: Arduibag: a Connected Backpack for Bike Riders
Arduibag is a connected backpack for bike riders. It is also an open source project created by two passionate french guys: Michaël D’AURIA and Stéphane DE GRAEVE.
If you want to know more about Arduibag please go to : http://www.arduibag.com
The project was inspired by the concept design winner of the Red Dot Design Award 2010: SEIL bag by Leemyungsu design lab.
The design lab concept really looked innovative and perfectly meets one crucial need for bike riders: visibility!
What can Arduibag do for you (current version)?
- Display a flashing arrow to indicate to drivers which direction you want to turn.
- Display a “STOP” message when you want to be visible at a traffic light.
- Display a “Thanks!” animation to thank a car driver and thus, promote mutual respect between bikes and cars!
- Display a warning message to help a driver be visible when witnessing a car accident.
- Display information like time, travel time, temperature and humidity.
You need to buy components describe on this page for the bag and on this page for the remote control. Be careful, for some of the components, you’ll need to get the specific references listed in order for them to operate properly with the software or the remote control (please read comments).
Step 1: Prepare the Bag
1- Cut a window in your backpack
First, you need to cut a 19 x 9.5 cm window in the front pocket of your backpack through which you’ll be able to see the led matrix display.
2- Glue the “viewing window”
Cut a 21 x 11.5 cm window in a clear plastic book protector sheet to create the “viewing window” of your Arduibag. Then glue it carefully inside the front pocket of the backpack to ensure perfect sealing…
3- Shape the main board
Prepare the main board: cut a thin plywood board to the exact shape of your backpack front pocket:
Ok, now we can prepare the main board’s electronics!
Step 2: Prepare the Backpack's Electronics
1- Build the Adafruit protoshield
First, follow this Adafruit tutorial to build your own protoshield and connect the Bluno board to the RGB Led matrix.
You can download the PDF version of the Adafruit tutorial.
Check RGB LED matrix and Bluno pins.
RGB LED matrix pin - Bluno pins
R1 - D2
B1 - D4
R2 - D5
B2 - D7
A - A0
C - A2
CLK - D8
OE - D9
G1 - D3
GND - GND
G2 - D6
GND - GND
B - A1
D - GND (?)
LAT - A3
GND - GND
Check your protoshield and the ribbon cable connection very carefully (check with the picture above).
Then, connect a power source to the Adafruit RGB Led matrix and connect the Bluno to your computer. You can test your screen by executing one of these RGB matrix panel library 16×32 examples.
2- Build the USB power cord
Now, let’s make a specific USB power cord to connect the RGB matrix panel to the Xiaomi battery.
For this, you need the original Adafruit power cord and a USB cord.
To connect the USB cord to the Adafruit power cord, you need to connect the matching 5V and Ground pins of each cord together.
3- Add temperature sensor and realtime clock to the protoshield
Now, with pins description below, you need to add the temperature sensor and the real time clock to your Protoshield:
Temperature sensor pin - Bluno pin
Left ( – ) - GND
Middle - 5V
Right ( S ) - D12
Real time clock pin - Bluno pin
SCL - A4
SDA - A5
VCC - 5V
GND - GND
4- Build a power supply
Create a power supply with a switch button.
5- Assemble the main board
Now you are ready for the final assembly. Begin with the LED matrix installation.
Important: make sure you position your LED matrix correctly on your mainboard so that it matches your backpack’s “viewing window”.
Then fix all the electronic components you have prepared on the main board.
Now you can install your main board in your bag.
Ok the backpack hardware is ready, so let’s build your Arduibag remote control !
Step 3: Prepare the Remote’s Electronics
Use KYNAR AW30 wires (very fine wires: less space taken in the case) to connect LEDS, joystick and battery supply to the Bluno Nano.
Important: be careful to provide the correct length of wire to connect these components to the Bluno Nano inside your case!
Below, summaries of pins’ connections :
RIGHT LED connections
LED pin - BLUNO pin
GND - GND
RED - D5
GREEN - D6
BLUE - D7
LEFT LED connections
LED pin - BLUNO pin
GND - GND
RED - D8
GREEN - D9
BLUE - D10
Joystick pin - BLUNO pin
GND - GND
VCC 5v - +5V
VRx - A1 (or A0(*))
VRy - A0 (or A1(*))
SW - D2
(*) I find a Keyes Joystick where VRx and VRy were inverted (so you’ll have to try it)
Ok, you are ready to print your own 3D case and insert electronics components
Step 4: Print Your Own 3D Case
To build your own Arduibag remote control case, you must first determine on which side of your bike handlebar it should be fixed (Left or Right).
Then you have 2 options: you can either download the 3D files to print the case yourself or you can print it via a third party (like Sculpteo).
Warning: The 3D model of the Arduibag remote control that you can download below is designed to be fixed to your bike’s brake lever. However, please notre that we haven’t checked if it is adapted to any type of brake lever. So, we have included a modification that can be activated if you need to install the remote control on your bike’s handlebar. If the template below doesn’t fit on your bike, you’ll probably want to change the 3D model using this procedure.
Print the case yourself: download 3D files
MTL and OBJ files
Download this ZIP Archive where you’ll find all 3D files (MTL and OBJ) for your 3D printer. Pleaser refer to you 3D printer manual to learn how to use these files.
Print via Sculpteo
You don’t have any 3D printer?
You need a beautiful Arduino remote case?
Then use these ready-to-buy 3D printed Sculpteo models:
You’ve received or printed the 3 parts of your Arduibag remote control?
Nice! Now, you are ready to prepare the case.
Step 5: Prepare the Case
1- Install 4 nuts into the case’s joystick cover
To prepare the Arduibag case, first, you need to fix nuts inside the joystick cover. (You only need to glue them if they move too much). Important: You must at least secure the nut shown in green by gluing it because we still haven’t found how to prepare an “honorable place” for this one!
2- Glue one nut into the top cover
3- Install the remote control’s electronics in your Arduibag case
Important: don’t forget to glue the power switch to secure it!
4- Install the 4 screws to close the joystick cover
Important: you need to use the correct screws in the correct holes (see photo above) otherwise you may damage the cover case or you won’t be able to use the joystick correctly.
Wow! Now you are ready for the last part: program your backpack !
Step 6: Software for the Backpack
What you need
You need to download these libraries:
And put them into your personal “Arduino libraries” folder (read the Adafruit documentation if you are an Arduino beginner).
Then download this archive:
And put the “Arduibag” subfolder (with Arduibag.h, Arduibag.cpp and Sprites.h) in your personal “Arduino libraries” folder.
Then you need to use and compile the Arduibag backpack sketch:
Now you can compile this sketch and program your backpack.
Important: the bluetooth integrated to the bluno communicates with both D0 and D1 pins.
Therefore your backpack can’t communicate with the remote control when it is connected to your computer (via the USB cable). If you want to test your backpack with the remote control, you must disconnect it from the computer and use it with the 9V battery.
Step 7: Software for the Remote
You just need to use and compile this sketch into your remote control’s bluno:
After the compilation, your remote control starts by checking the leds (sequence red/green/blue) and then the blue leds blink meaning that it is waiting your backpack…
Important note: the integrated bluno nano’s bluetooth communicates with D0 and D1 pins. So your remote can’t communicate with the backpack when it is connected to your computer (with the USB cable). You must disconnect you remote control and use it with the 9V battery to test it with the backpack.
Huh ! Your remote control and your backpack are now ready to fight!
Congratulations! A wonderful adventure, isn’t it?
Step 8: User Manual
How do I install the Arduibag remote control on my bike?
To install the Arduibag remote control on your bike, you need to replace your brake screw (the one that helps tighten the brake lever on the handlebar) with a longer screw. You can then insert the remote control onto this new screw and tighten the whole thing with a “wing bolt” (The “wing bolt” will allow you to easily remove the remote control to prevent it from being stolen).
How do I use Arduibag during the day?
During the day, Arduibag only needs to display important information which is therefore displayed upon the biker’s request. This is why we provide a “Day mode”. First, you need to switch on Arduibag. When you see the “Bluetooth animation”, you can switch on the remote control. Then move your joystick to the right to activate the day mode. Follow theses instructions to use Arduibag:
How do I use Arduibag when it is dark?
When it’s dark, cyclists need to be very visible. Arduibag offers a “Night mode” which always displays something even if you’re not using the joystick: animation, time, travel time, temperature, humidity… The procedure is the same as for the “Day mode” but you need to move the joystick to the left.
How can I signal a car accident with my Arduibag?
Arduibag has a special mode for this type of situation! If you witness an accident while using your Arduibag, please stop on the side of the road. Switch off the backpack and the remote control, and switch them back on until you get the “Night or Day” mode selection screen. Then, push down your joystick to display the Warning sign on your backpack.
I need to know what the temperature or the time is. Is this possible with Arduibag?
Arduibag also has a special mode for this! Just push up your joystick when you get the “Night or Day” mode selection screen.
Step 9: Conclusion
You need more information?
You decide to build your own Arduibag?
Please go to our website and contact us!
We have a be nice policy.
Please be positive and constructive.