Arduino, PHP, LCDs, XBees: Tactical Texting in Public Spaces

While the adventure in working on this project began months ago, I’ve finally sorted through the mess of files I made and put it all together in a nice handy zip folder. Using Arduinos, XBees, LCDs, and PHP, this project was challenging from a technical stand-point, but I think the project is now at a place where it can act as a foundation for a number of other projects I’m hoping to take on.

While the most-recent installation of this project was on view as part of SRSI, I’m already looking at the Arduino-TVOut library dreaming of what to do next.

Certainly, it’s no surprise that I really, really like working with text. I think there’s something about text that allows an accessibility to the work that isn’t always possible with an exclusively image-based presentation. So, while I had some loftier ambitious at the start of this project, it was actually the process of running into those walls that helped me to move this project into something that is more flexible and expansive (in the long-run).

I think there’s a lot of strong potential for this project — it’s possible for these to be battery-operated (though in my tests, you won’t get a hugely long run out of them), and even if you are tethered to a wall-based power source, you can still install these in a variety of situations. Being able to dynamically insert messages into public space is very fun and as this project continues to develop, it could provide the groundwork for a lot of new tactical activities.

Should you like to take on a similar project, I’ll detail the hardware/software requirements, code, and some general details below…

Continue reading “Arduino, PHP, LCDs, XBees: Tactical Texting in Public Spaces”

XBees, Arduinos, Serial Data

I made some huge progress over the last week or so on this ongoing Arduino / LCD project — it’s finally gone wireless!

With some more silly mistakes behind me, I’m finally getting a better handle on how to break down the problems I run into and solve them a lot faster. I remember back in February, it seemed as though it was going to be impossible to actually get this wireless part happening, so I’m super relieved to know it’s at least partly working.

Also, there have been people asking for the code used in this project (in terms of PHP and Arduino scripts), I will upload them! I just haven’t had the time to go through and appropriately clean them up and comment them, so I’m not sure how useful they would be at this point. I just wanted to note that I will indeed be doing that soon though!

Lots of photos of wireless glory ahead…

Continue reading “XBees, Arduinos, Serial Data”

Parsing RSS Feeds for the Arduino + LCD + PHP project

I’ve made some really great progress on this ongoing Arduino + LCD project over the last couple of weeks — some of the two larger hurdles are now out of the way, the results of which you can see in the video above.

Since the video was shot, I’ve improved the PHP script some more to ensure that the text is properly broken up over the appropriate lines on the LCD and I’ve also removed those strange characters, which were resulting from newlines in the Twitter RSS feed, I think.

Continue reading “Parsing RSS Feeds for the Arduino + LCD + PHP project”

Working on the PHP Backend of the Arduino + LCD Project

I haven’t posted for a while, but that doesn’t mean I haven’t been working on the ongoing Arduino + LCD project, which is moving along towards connecting external data to be displayed on the LCD screen.

The last bit of time I’ve put into the project has been focused on printing text to the LCD screen from a text file. It’s an easy enough process using a PHP serial class that I mentioned in the last post, combined with PHP’s basic file manipulation functions.

Continue reading “Working on the PHP Backend of the Arduino + LCD Project”

Arduino + LCD + PHP, Part 2

The epic adventure with Arduino, LCDs, and PHP continues. I’ve finally made some progress in terms of breaking up the words and lines appropriately. It felt like a huge achievement, since I had been trying to figure out this line-break thing for quite a while.

You can check the majority of the progress in the video below, and all of the steps along the way are below! Don’t mind the nonsensical example texts. So first off, I figured out I needed to send Arduino very specific information to know where to line break.

Continue reading “Arduino + LCD + PHP, Part 2”

More Arduino + LCD + PHP fun

My work on this ongoing LCD Arduino project has been continuing over the last couple of weeks, I just haven’t had the time to update appropriately.

So, I switched over my plan of attack from Processing to PHP. I figured this made sense for a couple reasons: first, I’m already very well-acquainted with PHP, I’ve written and hacked together a good amount of code in this language before and so I feel like I’ll spend a lot less time just figuring this out and more time actually doing; second, I don’t think I was really going to use Processing for its strengths, and instead, I was going to rely on its string functions, which pale in comparison to PHP.

I’ve made quite a lot of progress over the last week or so — all of which is detailed below. There are still some major problems I need to sort out, but for the most part things are about where I’d hoped them to be at this point.

Continue reading “More Arduino + LCD + PHP fun”

Getting Things to Talk: Arduino + LCDs

I spent the better part of the day on Saturday doing some more basic research into connecting an Arduino and LCD for this ongoing project. For the most part, it’s pretty basic and following the wiring diagrams and tutorials online is fine.

I ran into a problem with getting text on two lines, which I’ll detail below. Next on the to do list is to order a different LCD, maybe a 4×20 display and maybe something even smaller and then do some work on the text processing part of this whole thing.

Overall, it was a good start and I’m anxious for later this week when I’ll have a block of time to continue with the next steps in this early research.

Continue reading “Getting Things to Talk: Arduino + LCDs”

Starting New Projects: Researching the Basics of Arduino + LCDs

As part of a Canada Council for the Arts Inter-Arts Research and Creation grant I received, I will be documenting my work on the project through here, as I anticipate it will cross over into other projects we work on and came out of past projects we’ve completed.

This project comes out of Broken City Lab‘s previous work on Text In-Transit, where I’m hoping to open up a continuing flow of those kinds of texts in relation to a public space like a bus, or bus stops, or the downtown terminal. It’s likely that we’ll be working with Transit Windsor again on this project as it moves along. The project will connect this kind of publicly-engaged work I’ve done with BCL with some of my digital work I’ve done in the past.

The project is going to involve a lot of experimenting with Arduino-controlled LCD screens, and efforts towards capturing sms text messages, twitter updates, and emails and pushing them all into an LCD display. This will be the foundation of the project anyways.

I’m assuming this is going to involve a combination of interfacing Arduino with Max or Processing and using Perl or maybe PHP to do the text processing (depending on how involved it is), though it may end up taking another route altogether, but that’s what this time is for. I’ll be spending the next few months working through these aspects of the project, while also building towards an approximation of a public installation. I’ll spill more details as time goes on, and I’ll be documenting my progress, as I’ll undoubtedly need notes of my own, and why not keep them on here?

For now, I’ll be working through some basic tutorials, and eventually heading up to InterAcces for some of their workshops.

I would like to thank the Canada Council for the Arts for their generous support in this project. I’ll be acknowledging their support with their logo on each post that I write while documenting this project.