[HeRos] This is the end

Hi everyone!

Well, that’s it, ROSE is over! The presentation could have gone better but Murphy was among us apparently because every group had some issues on scene! For us it wasn’t that bad until the end when we wanted to show the team deathmatch feature. We couldn’t get it to work, probably because of the WiFi because it worked great a few hours earlier in A406. Well, too bad I guess! Fortunately we were able to show people how it worked and to let them play after the presentations were over!

Now we’ll be taking a well-deserved break before getting back to work (at a slower pace) to prepare for the Parrot competition.

Anyway, I’d like to thank Charles and Rico for all their hard work, I’m really proud of what we managed to achieve with this Figurines project idea of mine! We took it and made it into HeRos! And although it was hard at times, we had fun (especially when testing the games at the end!) and I enjoyed working with them a lot!

Of course I’d also like to thank Alexis and Sam for all their help, their support and their unbelievable work. I really learnt a lot of things in these two months, both in hardware and software and I couldn’t have hoped for a better course as the last course of my life! I’m going to try and keep working on embedded systems and that’s all thanks to them!

That’s it, I’m done. I’ll probably post an update after the Parrot competition 😉

So until next time…

[HeRos] Last day

Hi everyone!

Yesterday I worked on the Android app, to improve its stability and its user interface for the tomorrow’s presentation. Today I’ll finish working on it by adding some graphics that Rico designed. Then I will publish it on the google store.

We also have to prepare tomorrow’s presentation, finish the script and rehearse it. I will have to work on the java application that we will use to demonstrate the simplest features of our HeRos.

Rico and Charles ran extensive tests late last night so there are some bugs to fix today.

To sum up, it’s going to be a long day!

Until next time!

[HeRos] IR range control, 2 days left before final presentation ;)


The last days have been very intense. Our project has been evaluated on Monday, so me and my group spent the entire week-end finishing some feature and getting the code clean and in order for the presentation. The presentation went well, even if we had a minor bug (fixed in 5 minutes), won’t happen again in a presentation :/ But after correcting this our project was working well, we could play a basic HeRos game 😉

I implemented during the week end a new way to send the IR. I was using a PWM to generate the IR frame, now we are also using another one to deal with the power of the IR shots. This permits us to control the shot power and so its range. Now we are able to limit the range of the global shots, making the gameplay more fun !

Now we are focusing on the presentation we are going to make on Friday. It will be an important moment for us, the achievement of 2 intense months, and we want to share our excitment for this project with everyone, hope we’ll make a good presentation !

We have still a lot to do : Videos, presentation, final tests, Hackster page project to complete, but we’ll make it !

[HeRos] UDP streaming working!

Hi everyone!

Video streaming is now done using UDP instead of TCP, and it is way better! There is still some tweaking to do but it should be perfect tomorrow!

Tomorrow I’l also keep improving the app and I’ll add the graphics that Rico is working done in order to have better looking buttons, icons, and a better UI.

Of course we also have to work on our presentation for friday, so it’s going to be a rough week!

Until next time!

[HeRos] Last week

After a long week-end, we finally present our result to Alexis and Sam. It was good but not enough to be attractive for common usage. HeRos are able to communicate with a smartphone by WiFi, display the camera, shot trough IR. The gameplay is not enough developed and thus it is our first goal for the beginning of the week.

Three points:

  • Adapt android application design
  • Improved gameplay
  • Create HeRos identity to identify the project (logo, color, sound …)

Samuel gave us a very good advise today in order to correct the inconvenient disconnection between the HeRos and the smartphone. We currently used TCP protocol but maybe during re-send packet we lose the camera then the connection is interrupted (not closed) during 1-3s. We will implement UDP protocol to avoid re-send packet since we need the camera only at the present time.


[HeRos] It’s going to be an interesting week!

Hi everyone!

This morning we had the evaluation of our projects by Alexis and Sam. We thought we had done enough tests to show a pretty good demo. Unfortunately a tiny mistake (very tiny: a 0 instead of a -1 on some server code) made it impossible for one of our HeRos to detect when it was shot! But we fixed the bug in a few minutes so it wasn’t that bad. This afternoon we had a test: the development part of it was about implementing a morse translator (both sound and visual on serial over usb). I did it with a very simple albeit ugly function that simply built a string one dot or dash at a time depending on which letter was detected.

What remains to be done for friday is:
– improving the app: UI, design and stability
– switching from TCP to UDP to communicate with our HeRos. Even though the app will now need to reorder fragments of Jpeg and to ignore incomplete frames, UDP is more adapted to streaming and should resolve our drops in framerate. I’ve already start working on this today, it should be done by noon tomorrow
– improving gameplay: more types of game, etc.

So we’re close to the end, but not quite there yet!

Until next time!

[HeRos] ATtiny85

Today, I have flashed my first ATtiny85V with the elnec beeprog programmer. It was really easier as I expected. Now, I would like to flash my application to use it as an extern module. With the bootloader, you have a tool doing this but it is only on widows. I would like to use the uart7 to speak with the ATtiny. However, I see in ChibiOS that neither the Serial Driver neither the UART driver for the UART7 are implemented. I will see tomorrow, what is the best solution with one day left.


[HeRos] After the storm, the sun !

Today was a trying day nevertheless efficient. The reason was that we have solved two problems. The first one referred to my post of yesterday and the second one arrived just after we solved the first problem.

The first problem was that two HeRos were not able to transmit data over the UART to the Pololu. The transistor was probably damaged. We still were able to oscillate but at low frequency since the up time was very long. An other strange fact was on the voltage of the serial RX transmission. When the HeRos was connected to an USB port of the computer we had 3.3V contrary to with a Pololu where we found 2V. Alexis solved the problem by adding a pull-up to the line. Now, we set the pin as open drain and we only drive the low level. The HeRos are able to use the Pololu again.
However, one HeRos was a little bit more damaged. We were not able to drive the RX pin and the maximal voltage was 1.2V. Maybe we will look next week with Alexis in order to bring him back. By the way, we still have no idea how did the Pololu damage our HeRos.

The second problem was easier to solve and a kind of funny (when we understand it, of course). On one Pololu, the camera didn’t work any more except sometimes during a global shot. We concluded after debugging our code that it was good, on top of that the same code was working on other HeRos. We pointed out that the camera only worked when the red led 3 was lighting. After looking on the schema, we saw that the pin is between the Uart3_Rx and Uart3_CTS and we might have a contact.

With all the problems, we are delayed on the external modules but we are still good. I took pictures tonight with Charles, have fun 🙂


Global Shot Demonstration

HeRos touched by a global shot

Direct Shot Demonstration

HeRos touched by a direct shot


HeRos in darkness

HeRos in darkness


[HeRos] New Design to lead the HL diode emissions

Today began terribly. We had 2 PCBs that just couldn’t communicate with Pololu and we didn’t know why. Then this morning another one got wrong. We analyzed what was coming from the Serial Port of our PCB that was supposed to communicate with the Pololu and saw that the signal just couldn’t increase up to 3.3v anymore when it was emitting a signal. The P transistor has fried. Alexis helped us solving the problem by adding a pull up resistor to have a correct signal. This worked pretty well on the first 2 PCBs that were damaged, but not on the 3rd one.


After this bad morning, I spent the day working on IR matters. In fact our HL diode  (used for direct shots) is not enough directive. This is a problem because you could fire another HeRos even if you didn’t aim correctly. I was thinking about a special cylinder printed in 3d to direct the IR but it appears the IR goes through the material used by the 3D printer (PLA). I was seeking new material to make a cylinder when Alexis told be a simple 4 color pen could be able to direct the IR. I tried it and it worked perfectly, now your direct shot are precise.

Capture d'écran de 2015-04-18 01-10-03

I changed the design in function and then studied the range of our IR shots. Global Shots are received up to 3,5 m and direct shots up to 10m, so this will make it for the game.

We also tried with Eric to see if it was possible to play in the dark with our HeRos, the result is quite fun :


[HeRos] What a day it has been

Hi everyone!

Today was interesting… We started the day with two PCBs not working: the UART with the Pololu didn’t work since yesterday. And then a third PCB started exhibiting the same symptoms. After a long investigation, it turns out that a transistor on the TX pin of the UART is fried and by adding a pull-up resistor, Alexis managed to get two PCBs working again. Unfortunately the third one is beyond repair and the processor is going to have to be replaced.

Then I worked on improving the app interface and stability and the server. The app also has some nice sound effects now from various sources: Star Wars (that new teaser felt good, didn’t it? 😉 ), Portal, even one from Mario! It’s all working pretty well. One issue remains: when only one of us is connected to a HeRos, we have 28fps streaming, no problem. But when two of us are connected at the same time, the framerate becomes unstable and has sudden drops. Whether it’s due to interferences or the number of people using the A406 hotspot, we don’t know yet. We’ll do more testing tomorrow.

Until next time!