TROOPERS conference badge

  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.
  • warning: Creating default object from empty value in /home/jeffreygough/drupal4/sites/warrantyvoidifremoved.com/modules/spam/spam.module on line 488.

Electronic badges are all the rage at IT security conferences these days. I think DEFCON started it all with badges made by Joe Grand, but there have been many others, like the Sputnik RFID tags at 25C3, the expandable bunny badges at Easter Hegg, Munich, by lilafisch and friends, and Travis Goodspeed's badge for The Next Hope.

I created 210 interactive badges for the TROOPERS11 IT-sec conference in Heidelberg last month. They feature some ethereal vintage vacuum glassware - IN-16 nixie tubes made at the Reflector factory in Saratov in the former USSR in 1989. I purchased them new-old-stock from some handy guys in Lithuania.

A video of the badge in action:


 

Each conference attendee starts on zero. As they unlock achievements at the con - like sending postcards to their families, meeting the speakers, unlocking the secret in the badge, attending my SMT soldering workshop, etc, attendees level-up. Those who reached the highest levels were entered into a prize draw to win hacker goodies. I designed this levelling-up concept to connect with the central themes of the TROOPERS conference - personal progression, education, and becoming better IT security professionals. Florian did an amazing job of weaving the badge and the game concept into the very fabric of the conference. 

The badge hangs around the neck from a CAT5 cable, rocking the network security image. Red for the speakers, green for everyone else. Here I am wearing the bare, prototype PCB. Have you any idea how difficult it is to find 750mm CAT5 cables? It's quite difficult.

As well as being the LANyard (sorry) the cable functions as the power switch, levelling-up mechanism, programming interface and debug output (and attack vector for intrepid hardware hackers!). When an attendee unlocked an achievement, he took his badge to the information desk where one of the organising staff would plug in a special dongle to update his score. The dongle is simply a TI Launchpad (MSP430G2231) with a CAT5 cable soldered on, running some custom firmware to transmit a magic byte over SPI to the badge.

The batteries and electronics are on the back of the badge. 

Design materials

You can download the design materials here . The hardware is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License. The firmware is licensed under the GPLv3 . If you just want a quick look at the schematic, it's available separately here .

Circuit design

The badge is powered from two AA batteries. The nixie tube uses most of the power, so I could basically trade nixie shininess for battery life. I chose a gentle fade-in-fade-out animation, with the duty cycle set for around 40 hours of use. The output voltage of an alkaline cell decreases nearly linearly as it is discharged. Even when it reaches 0.9V or less it still contains a decent amount of energy. To make full use of the energy in the battery the badge must work from a supply voltage of 1.8V or less. The nixie tube needs around 150-170V at 1.8mA. I use an MCP1640 DCDC to boost the battery voltage up to 5V to power the low voltage electronics, microcontroller, etc. Then I use a microcontroller-based DCDC to get from 5V up to an adjustable voltage between 0 and 200V. It's quite difficult to get from 5V to 150V efficiently and cheaply with a standard boost topology, so I use a flyback topology with a small transformer.

Whilst small, high performance, SMT inductors are completely ubiquitous, similar transformers are not. This is due to low industrial demand. Camera flash circuits (which, just like my nixie supply, must step from battery voltage to 150-300V) are about the only application for small transfomers. They are only made by a few large companies, and only leave the East inside cameras. I got mine from Tokyo Coil Engineering, and I really owe them a favour! They usually sell in enormous volume to people like Sony and Casio. 

I used an ATmega48 because it was the cheapest microcontroller around with enough timers, IO and ADC channels. I don't really like AVR's. Their fuse system is a real pain in the arse (fuses in general are a pain in the arse) and they have about 10 different proprietary programming and debugging interfaces. But hey, people seem to like them, and the price was right! The AVR produces a PWM signal that switches the FET on the primary side of the transformer, and the voltage is boosted on the secondary side both by the turns ratio and inductance of the transformer. The voltage is attenuated and buffered, and fed back to the AVR's ADC. The firmware measures the high voltage supply via this attenuation, and adjusts the PWM setting using a PID control scheme. The PWM output is capacitively coupled into the FET gate so that the FET doesn't blow up if the AVR crashes. The efficiency is pretty good; 75-80% depending on voltage setting, etc. 

Instead of using a resistor to limit the current through the nixie tube, I used a 1.8mA active current source. I designed it this way with the intention of using a high voltage to strike the neon then reducing the voltage to minimise power dissipated in the current source. Quite an elegant idea, I thought, but I ended up manipulating the DCDC voltage to fade the nixie in and out, rather than dimming it with another PWM channel. So if anything, the current source was probably a slight hindrance because it made the nixie brightness much less sensitive to supply voltage. Never mind, it all turned out nicely in the end!

The 12 individual nixie cathodes (0-9, left and right decimal points) are switched by high voltage NPN transistors..

The speakers' badges have sound-activated LED's. An electret microphone captures the sound, and it's amplified and fed to the AVR's ADC. Foolishly I biased the mic directly from the 5V rail, which turns out to be pretty noisy when the nixie is at full brightness. I ended up writing a horriffic firmware workaround to dynamically adjust the microphone gain based on the nixie voltage. It worked fairly well, but the sensitivity is still low when the nixie is bright. 

The CAT5 connectors expose the ISP programming interface for flashing the AVR, the SPI port, which is used to increment the score, and a 5V UART which can be used for live debug, etc.There's also a capacitive touch button hidden in the ERNW logo. 

Some lovely graphs

I was, as usual, working right up to the deadline for this project, and ended up writing a lot of the firmware in Heidelberg. I wanted to work around the microphone noise problem, and suspected that I could reduce the noise by improving the high voltage control scheme. Initially I was using a very rough control scheme that either incremented or decremented the DCDC PWM value depending on whether the voltage was below or above the desired setpoint). Since one PWM step makes a significant impact on the output voltage, the whole thing was pretty nasty - too much oscillation when the setpoint was low, and failure to actually reach the setpoint when it was high for only a short period. I decided to hunker down in my hotel room, get the badge to stream live data out over the UART, and plot some graphs in python to see what was really going on.


My original, crappy, control scheme. The green trace is the DCDC output voltage. The red trace is a moving average of this voltage to take out a bit of noise. The setpoint (desired voltage) is in blue, and the value of the PWM signal delivered to the FET is shown in turquoise. The output voltage roughly follows the setpoint, but it is very wobbly when the setpoint is low, and can't quite keep up when it is high.

Note I am ramping the setpoint up and down to get the nixie to fade in and out.The change in gradient near the top of the peak is deliberate - it makes the fading look more consistent to the human eye.

Please ignore the x axis label. It isn't actually graduated in seconds. This whole graph probably shows about 5 seconds of data, not several hours!

  The PID control scheme is a dramatic improvement. The output voltage (green) tracks the setpoint (blue) perfectly. To achieve this, the PWM value (turquoise) is being adjusted in a much more subtle way than before. The red trace shows the error (difference between the true output voltage and the setpoint).
  Next I worked on the microphone noise cancellation. The blue trace is the microphone voltage (recorded in silence). Note the "blob" of noise when the nixie voltage (red) is high. The green trace is a very long moving average used to establish the DC level of the microphone reading. The turquoise trace shows the PWM values being delivered to the FET. I used this signal as the basis of the cancellation function because its shape is very similar to the noise "blob" in the microphone data..
  Here are the results. The blue trace is the input, as before.The yellow trace is the processed signal. On the left I was silent. The DCDC-induced noise "blob" is successfully filtered out, but speech (right half) is largely passed through. Sensitivity is pretty crap when the DCDC voltage is high, but it's the best I can do without a hardware fix!
   

Firmware design

The firmware is written in C, compiled under linux with avr-gcc, and flashed to the badge with avr-dude. I use the AVR Dragon programmer, but there are other options available. At the con, Kevin Redon dumped the firmware binary out using a Bus Pirate, made some modifications, and pumped it back in. He also scored himself an instant 9 by editing the EEPROM image. Respect. Several other guys performed some simple hardware hacks too, shorting segments on, etc., but Kevin's work was the most impressive I saw.

If you're a masochist, you can also  debug the AVR over Debugwire using avarice and gdb. It's unbelievably flaky, though.

The firmware is highly modular and fairly self-explanatory. It is largely interrupt based, making extensive use of the timer peripherals.

Hacking area

Lots of people asked me about this. It's just an empty bit of board with some 0.1" spaced through hole pads and 0.05" spaced SMT pads where you can solder on your own components. The conference attendees are mostly software guys. I wanted to give them a platform that is really easy to hack so that those with budding hardware hacking interests have a low barrier to entry. For maximum flexibility, no electrical connectivity is provided. You can just use wire. I also broke out every pin of the AVR to a pair of through-hole solder points for maximum hackability. So say you want to make your badge into a clock, you could solder a crystal onto the AVR's clock pins. Or if you want to add some radio functionality you could solder your radio chip onto the hacking area, and wire it up to the AVR. Go nuts - totally freeform hacking space.

Shock hazard

The high voltage section is insulated with heatshrink sleeving and self-levelling silicone encapsulant (great stuff, by the way). If you dig your way through it is possible to get a mildly painful shock, but there isn't enough energy stored in the DCDC to do you any harm. Don't take my word for it, though. If you're ancient / part cyborg / whatever, I wouldn't push your luck!

Manufacturing the badge

That was quite some undertaking! I outsourced the manufacture and assembly of the PCB's, of course, but I placed the nixies myself. All 210. This entailed trimming the nixie legs to the right length, soldering all 13 of them to the PCB (6 on the front, 7 on the back), adding heatshrink sleeving and insulating the finished item with silicone. I made some lovely jigs to process the nixie tubes, cut precise lengths of heatshrink and hold everything in place during soldering. Check out these videos:

 


 


 


 

 A closeup of the assembly jig. The perspex assembly (rear) holds the nixie perfectly centred within the cutout in the PCB. The spring steel, aluminium and FR4 assembly (front) clamps the legs down onto the PCB, leaving both of my hands free to solder.

It turns out that 210 is quite a lot of things.

So if you're the lucky owner of a TROOPERS badge, I hope this information inspires you to hack it to do something new! At the very least, please take care of your nixie tube! They are a scarce resource. They haven't been manufactured since the early nineties.

I held a little SMT soldering workshop at the con, where attendees could upgrade their badge to speaker status by soldering on the extra LED's, resistors and microphone. Someone remarked that it was probably the most romantic soldering workshop ever! (Thanks to Insinuator for the photo).

Once again, many thanks to Florian, Enno, Daniel and all at ERNW - thoroughly enjoyed it!

Please ask questions in the comments / by email / twitter, and I'll help you out. If you're running your own con, and would like some similarly insane badges, give me a shout.

Have a look at my flickr account / youtube channel for more media.

categories [ ]

Warranty Void if Removed | Collected technological projects

?'?e been surfing online more t?an 3 hour? today, yeet I never found any interesting articcle luke yours. It's pretty worth enough for me. ?n my view, if all web?ite owwners and bloggers made good content as you did, tthe ?nternet will bee much more useful than eve before. Als? visit my blog post: poppy52Men.Soup.io

Warranty Void if Removed | Collected technological projects

obviously like your website but you need to take a look at the spelling on several of your posts. Several of them are rife with spelling problems and I to find it very bothersome to inform the reality then again I'll definitely come back again. Look into my blog Sex web cam

Warranty Void if Removed | Collected technological projects

Hi there, You've done a fantastic job. I will definitely digg it and personally recommend to my friends. I am sure they wkll be benefited from thiks site. Feel free to surf to my wweb site ... Situs Togel

Warranty Void if Removed | Collected technological projects

tips to online casinos start list building, there are some simple what work. There remain some search engines that make use of the meta-tags for search engine rankings. Come up with a network there or join other big networks.

Warranty Void if Removed | Collected technological projects

Hello, i think that i noticed you visited my web site thus i came to go back the want?.I'm trying to to find issues to enhance my website!I guess its good enough to make use of some of your ideas!! my web blog; size shoes

Warranty Void if Removed | Collected technological projects

I'll immediately grab your rss as I can not to find your email subscription link or e-newsletter service. Do you've any? Please allow me recognise in order that I could subscribe. Thanks. my blog bandarq Online

Warranty Void if Removed | Collected technological projects

Good friends may say that's not too romantic. A handful of days prior to a wedding and rehearsal, put on paper some issues you want to say. Written by Stacy Lewis, this blog covers an array of posts. my weblog ... live22 casino

Warranty Void if Removed | Collected technological projects

Every weekend i used to pay a visit this web site, because i want enjoyment, as this this web page conations really fastidious funny information too. my web site ... iblismimpi.com

Warranty Void if Removed | Collected technological projects

You actually make it seem so easy with your presentation but I in finding this topic to be actually one thing which I believe I'd never understand. It seems too complex and extremely huge for me. I'm taking a look ahead to your next put up, I'll attempt to get the grasp of it! Here is my page :: Aouclass.net

Warranty Void if Removed | Collected technological projects

Hey, I think your site might be having browser compatibility issues. When I look at your website in Opera, it looks fine but when opening in Internet Explorer, it has some overlapping. I just wanted to give you a quick heads up! Other then that, wonderful blog! Here is my blog post: Paulina

Warranty Void if Removed | Collected technological projects

I am really enjoying the theme/design of your blog. Do you ever run into any web browser compatibility problems? A handful of my blog visitors have complained about my site not operating correctly in Explorer but looks great in Firefox. Do you have any suggestions to help fix this problem? Also visit my site: buy now cheapest lamictal shopping

Warranty Void if Removed | Collected technological projects

Aw, this was a very nice post. Spending some time and actual effort to produce a really good article… but what can I say… I procrastinate a whole lot and don't manage to get anything done. Feel free to visit my website ... Elisa

Warranty Void if Removed | Collected technological projects

I'm extremely pleased to uncover this page. I want to to thank you for ones time just for this wonderful read!! I definitely appreciated every little bit of it and I have you saved as a favorite to look at new things in your website. my web blog - Online; Castillodepavones.Com,

Warranty Void if Removed | Collected technological projects

Thanks for finally talking about > Warranty Void if Removed | Collected technological projects < Liked it! my web blog - visit this blog

Warranty Void if Removed | Collected technological projects

I every time used to read article in news papers but now as I am a user of internet therefore from now I am using net for articles, thanks to web page (http://www.gaoodgle.com/).

Warranty Void if Removed | Collected technological projects

Hello there! I could have sworn I've been to this web site before but after going through some of the articles I realized it's new to me. Anyways, I'm certainly delighted I found it and I'll be bookmarking it and checking back often! Also visit my web blog Web-cams sex

Warranty Void if Removed | Collected technological projects

Hello there, I think your web site might be having internet browser compatibility problems. When I take a look at your website in Safari, it looks fine however, when opening in IE, it has some overlapping issues. I just wanted to give you a quick heads up! Aside from that, great site! Also visit my website: Bandarqq

Warranty Void if Removed | Collected technological projects

This information is invaluable. When can I find out more? Here is my web page: Prediksi Skor

Warranty Void if Removed | Collected technological projects

Greetings! Very helpful advice in this particular article! It's the little changes which will make the biggest changes. Thanks a lot for sharing! my site: Korona królów odcinek 6 online

Warranty Void if Removed | Collected technological projects

Hey there, I think your website might be having browser compatibility issues. When I look at your blog site in Firefox, it looks fine but when opening in Internet Explorer, it has some overlapping. I just wanted to give you a quick heads up! Other then that, wonderful blog! Take a look at my web site - Che thai nguyen ca mau

Warranty Void if Removed | Collected technological projects

When I initially left a comment I appear to have clicked on the -Notify me when new comments are added- checkbox and from now on whenever a comment is added I recieve four emails with the same comment. Perhaps there is an easy method you are able to remove me from that service? Thank you! My site; http://science-marketplace.Org/user/profile/62329

Warranty Void if Removed | Collected technological projects

These are genuinely great ideas in on the topic of blogging. You have touched some fastidious factors here. Any way keep up wrinting. Also visit my webpage: Earnest

Warranty Void if Removed | Collected technological projects

At this moment I am going to do my breakfast, after having my breakfast coming again to read other news. Also visit my weblog: Domino99

Warranty Void if Removed | Collected technological projects

I was recommended this web site via my cousin. I'm no longer certain whether this publish is written through him as nobody else recognise such targeted about my difficulty. You're wonderful! Thank you! Review my web site; windows based computers

Warranty Void if Removed | Collected technological projects

insert your data Also visit my webpage; luxury Apartments

Warranty Void if Removed | Collected technological projects

This excellent website definitely has all of the info I wanted concerning this subject and didn't know who to ask. My website Singapore Jackpot

Warranty Void if Removed | Collected technological projects

What's up to all, it's actually a fastidious for me to pay a quick visit this site, it contains priceless Information. Feel free to surf to my page tra bac tphcm

Warranty Void if Removed | Collected technological projects

Vous voulez faire du Content Spinning avec un logiciel ? Vous allez découvrir le seul site générateur de Content Spinning acessible à tout le monde. Allez sur http://www.forum content Spinning-spinning.fr/plan-pricing.html

Warranty Void if Removed | Collected technological projects

What's up mates, nice post and pleasant urging commented at this place, I am really enjoying by these. Also visit my website Hydro Muscle Max

Warranty Void if Removed | Collected technological projects

Urgence dentistes à Paris : Dentistes chirurgiens dentistes et docteurs en chirurgie dentaire à Paris en urgence. Nouveau centre dentaire ultra-moderne vous accueille consultation dentiste en urgence urgence pour des soins de qualité et des urgences dentaires. Spécialiste en urgence de la chirurgie dentaire basé à Paris offre une prise charge complète pour l'ensemble de vos soins dentaires (Chirurgie, orthodontie). https://dentaire-paris-13.fr/content/urgence-dentaire-tout-savoir-pour-r%C3%A9agir-%C3%A0-temps

Warranty Void if Removed | Collected technological projects

Hey there! I know this is kind of off topic but I was wondering if you knew where I could locate a captcha plugin for my comment form? I'm using the same blog platform as yours and I'm having problems finding one? Thanks a lot! Here is my weblog; Tac Dung Cua Che Day

Warranty Void if Removed | Collected technological projects

Vous recherchez une bombe d'auto défense ou un spray anti chien efficace contre une attaque de chien ? Rendez vous sur https://www.bombes-lacrymogenes.fr/s/chien/ pour acheter du spray d'auto défense contre les chiens. Livraison gratuite à partir de 39€ TTC et satisfait ou remboursé pendant 15 jours (Vente libre aux plus de 18 ans)

Warranty Void if Removed | Collected technological projects

Good info. Lucky me I recentl found your blog by accident (stumbleupon). I've book-marked it for later! my webllog shop design

Warranty Void if Removed | Collected technological projects

It's amazing in favor of me to have a site, which is good for my know-how. thanks admin Have a look at my page: Klara

Warranty Void if Removed | Collected technological projects

Nice blog here! Also your website loads up fast! What host are you using? Can I get your affiliate link to your host? I wish my site loaded up as quickly as yours lol Also visit my site http://www.jeuxvideo.com/forums/42-6461-53027523-1-0-1-0-2017-last-day-on-earth-survival-hack-100-working-unlimited-coins-xp-and-more-no-codes.htm

Warranty Void if Removed | Collected technological projects

Hi there, I discovered your web site by way of Google at the same time as loooking for a related matter, your site came up, iit appears to be like good. I have bookmarked it in mmy google bookmarks. Hi there, just was alert to your blog through Google, and found that iit is realky informative. I am gonna watch out for brussels. I'll be grateful when you continue this in future. Lots oof other folks can be benefited from your writing. Cheers! my page; make jewelry for a living

Warranty Void if Removed | Collected technological projects

If you are looking for the camera that works easily for a beginner, takes amazing quality photos but in addition allows an individual to cultivate their Google Clips Camera skills when they wish next the camera is perfect. These systems can be found in wired or wireless according towards the cost range the purchaser is looking for. A high number denotes a tiny opening and intensely little light, whereas a low number means the aperture is wide-open and definately will allow more light heading to the film.

Warranty Void if Removed | Collected technological projects

This article is genuinely a pleasant one it helps new web viewers, who are wishing for blogging. My webpage HD 12X Zoom

Warranty Void if Removed | Collected technological projects

Hi, i think that i saw you visited my site so i came to “return the favor”.I'm attempting to find things to improve my site!I suppose its ok to use some of your ideas!! Feel free to surf to my web blog ... rau chum ngay ban o dau

Warranty Void if Removed | Collected technological projects

Wow, fantastic blog layout! How long have you ever been blogging for? you make blogging glance easy. The full look of your website is wonderful, as smartly as the content material! my web site; osrs gold (Luann)

Warranty Void if Removed | Collected technological projects

Forum Netlinking pour trouver et partager des backlinks et faire des échanges echange de liens liens. Netlinking, E-réputation et Optimisation Off-Site son des sujets tendance en SEO et sivous voulez en apprendre plus vous pouvez nous rejoindre sur http://www.ghstools.fr/forum/viewforum.php?f=35

Warranty Void if Removed | Collected technological projects

Howdy! Do you know if they make any plugins to assist with Search Engine Optimization? I'm trying to get my blog to rank for some targeted keywords but I'm not seeing very good gains. If you know of any please share. Cheers! My homepage: read me

Warranty Void if Removed | Collected technological projects

Have you ever thought about adding a little bit more than just your articles? I mean, what you say is important and all. But think about if you added some great pictures or video clips to give your posts more, "pop"! Your content is excellent but with pics and clips, this site could definitely be one of the best in its field. Fantastic blog! Also visit my web page - forum.Tamilptcguide.com

Warranty Void if Removed | Collected technological projects

Hi! This is my first visit to your blog! We are a group of volunteers and starting a new initiative in a community in the same niche. Your blog provided us beneficial information to work on. You have done a wonderful job! My site; Otilia

Warranty Void if Removed | Collected technological projects

I used to be able to find good information from your blog posts. my weblog ... minecraft

Warranty Void if Removed | Collected technological projects

Very good site you have here but I was curious if you knew of any community forums that cover the same topics talked about here? I'd really like to be a part of online community where I can get feedback from other knowledgeable individuals that share the same interest. If you have any suggestions, please let me know. Cheers! Feel free to surf to my webpage minecraft

Warranty Void if Removed | Collected technological projects

Wonderful article! This is the kind of information that are meant to be shared around the internet. Disgrace on Google for not positioning this put up upper! Come on over and seek advice from my website . Thank you =) My homepage :: apps to make you money

Warranty Void if Removed | Collected technological projects

Have you ever considered writing an ebook or guest authoring on other blogs? I have a blog based upon on the same ideas you discuss and would love to have you share some stories/information. I know my readers would appreciate your work. If you're even remotely interested, feel free to shoot me an email. my web blog: Hoodies

Warranty Void if Removed | Collected technological projects

Official Ray Ban Glasses Online Sale. All Kinds Save 70% Off.Free Exchange. Feel free to visit my weblog ... ray-ban glasses

Warranty Void if Removed | Collected technological projects

I'm curious to find out what blog platform you happen to be working with? I'm experiencing some minor security issues with my latest blog and I'd like to find something more safeguarded. Do you have any solutions? Also visit my web site mua tra thai nguyen