
all right i i'm gonna start just a hair early and i'm gonna try to go fast because i know i'm the last talk and everybody wants to go home before traffic is too bad so i'll try to go fast thank you guys for sticking around uh show hands how many of you have already solved all of the badge we've got a few we got five six so far okay um i didn't think i was going to share some hints but i'm probably going to share some hints so i'm going to talk about a little bit about how i came to this badge the troubles i came through to get here and then we'll talk about
hints and solving the puzzles at the end i'll take my mask off that'll probably help okay so the badge itself uh this is a 3d mock-up in kicad but it uses an 8-bit pick microcontroller as the main microcontroller which is like a really small very s not advanced chip um it's this the screen's an old led display it's got an ir receiver as you've probably figured out built-in accelerometer and then obviously if you've got the two potentiometers as your major form of input and then like it says there uh jade can you stand up i'm gonna make you stand up this is my daughter who drew the snowman the snowman snowboarder that you see on
the board and she's also did the mountains that are on your lanyard so she did the art there [Applause] yeah i'm not artistic so i pulled her in for that um but um i designed this around an 8-bit pick mainly because that's all that was available um so here for example is the chip that we used on the 2019 b-sides badge um this is from mouser you can see here the the lead time is 52 weeks so if i ordered some a year from now i would get some back um also i could only order at maximum 75 that's all i'll let me have in one year from now that's crazy also the price of
that chip for one is and thirty six cents when we bought this in 2019 it was a dollar twenty so that's how crazy the chip shortage really is the chip used in the 2021 it's a little bit better its prices up to five dollars it was one dollar when we bought it but and it is only 46 45 weeks so that's only nine months and then the oh sorry i'm i'm going i guess i missed a year that was the 2021 the 2021 there is none available and the expected time is in september of next year when they expect to get 3 000 in which will i'm sure disappear as soon as they get them in
so it's just crazy to see how hard no this is my current chip sorry that's right this is my current chip it's no longer available um when i went on their site they had like 500 i was like great i'm going to use that chip they have some it's not too expensive it's only a dollar so i'm going to go with this chip because that's kind of the budget range we had it is a whole lot less capable compared to the previous two years chips but that's the price point we were stuck at this meme came up on a badge chat there's a channel for those people that make badges and this meme really hit
home last night when it when it come up oh and it's not even on the full screen but um yeah basically oh this one's off look at that screen okay but that chip itself like i said is a low very low power very low capability chip it has 16k of space that's all it has 16k words um which is a little bit bigger than a byte but it's still it's almost like 28 bytes but you can't individually access each byte so that's how much space you have for all of the the puzzles and everything that does is 16k right like that's not even a like you know one and a quarter floppy inch drive like that that has more space than
that and then 2k of ram um there's 250 56 bytes of eeprom that's nothing big but it uses very very low power at full speed it's using 1.1 milliamps so that's the nice thing you can that it should last for days on that one little coin cell and you'll notice like if you if you don't use your badge it turns off all the lights and it goes to sleep until you bump it or shake it and then it'll turn the lights back on so it should it should be pretty pretty low power um i ended up buying the automotive edition because that's all they had left when it came time to buy it the top version is the prototype like
the same chip there's just different footprints the top one is one that i plugged in on a breadboard to do my initial testing and then when i was finally ordered ready to order i ordered the bottom ones but the my supplier ran out of the bottom ones in the two weeks it took me to do prototype between being ready and so i was like oh crap where do i go i started looking at other suppliers and arrow had them but they had the automotive edition which really just makes the badge work the chip work in higher and lower temperature ranges but i was like i don't care it's you've got the chip i need i'm just going to
buy it so here's my iteration process from design concept to the final badge the top left image is my first initial design it's got two little breadboards and i shouldn't use the black bed board because you can't even see the chip on the black breadboard but that main chips on there and you can see the led um my ir sensors and then my two pots are on the blue board and i just kind of breadboarded it out like okay can this chip do what i want to do right like can i receive ir messages can i send messages can i write to that screen fast enough for the display so it doesn't look clunky et cetera et cetera
and then once that's done then i designed a prototype board and then i would solder all the pieces on that prototype board well i totally messed up on my prototype board this is my i usually use in the past i'd used eagle cat to design the board and everybody's like oh all the boar the the bads the pros are like oh we've all gone to kicad it's so much better it's like okay i'll use kai-cad and it kind of bit me because i just didn't know what i was doing as well i put the footprint for my chip on the board but then i had the pin assignment all wrong so when i want when i went to
use it i couldn't use i couldn't put my chip down there because the pin layout didn't match so i had to like have all these jumper wires over to that breadboard where i put the chip there and so that's what that mess is down on the bottom left is that that's my prototype but i had to have this existing breadboard to fix my mistake when i designed the prototype so that meant i needed to do another prototype because i didn't feel comfortable like i wanted i didn't feel comfortable designing 200 of these based on that mess as my you know like oh this is close enough i'm just going to go ahead and make the assumption all work
so that board on the right is my last prototype that i did i don't show you the back side but it i think in a different slide i will it's pretty close to what you guys had it just doesn't have the logo because we didn't have the logo at that time and then you got the final badge so um other issues i ran into this that chip has the temperature sensor in it which i wanted to play with and my initial prototype says okay i got a temperature sensor i can tell the temperature it works but if you read this um fine print in their documentation it will produce a temperature rain that is within 100 degrees
of the actual temperature it's like that's not a temperature sensor that's like a random number generator you know that's useless so i spent a long time like putting my device in very cold and very hot and like trying to like map out okay how does this adjust to those temperature ranges and i came up with this algorithm that worked really weird on my prototype boards and then i started flashing all the boards you have and found out the boards are all over the place and i'm sure you guys have seen that right like as you look at your temperature some of them are like oh it's 20 degrees in here and others it's like it's 90 degrees in here
those that yeah that's that fine print right there they that's not a temperature sensor guys i'm sorry i should have uh i guess i missed that and it ended up biting me so um some of you guys for that chill the chill puzzle right you're supposed to chill that temperature sensor some of the boards are going to want a colder temperature than others because they think that's a lot hotter in the room than it is some of you get that puzzle for free because they decided it's freezing in here it's one of those bugs that i guess um i don't know that's not a temperature sensor that's my that's my claim here um so also program the chip i told you it's
only 60 16k um i am using almost every little bit of that you see here on that image on the very right there are 48 bytes free like that's all there is and that is after i did optimus like compile time optimizations for size and i did release build and i went around and did micro optimization so down at the bottom you see my on the left i have a for loop with an int if i change that for loop to use a uint that was 10 extra bytes for each for loop i changed so i went through the whole code base and bought myself 200 more bytes so that i could get like one
of those last puzzles in um the as there was so much there wasn't so much but there were some things more i wanted to fix some of you are able to solve the logic analyzer puzzle by just haphazardly going through it that's because the solution to that is actually um how should i want to say this without ruining it this you it's a key combo that you can accidentally get right i wanted to make that more difficult but coding that pushed me way over the boundary line and so there was there was just corners i had to cut and that was one of them it really was just as much as i could push that like i tried squeezing as much
in there i i trade off some things like oh this can only take this much bites so for example right like we got 16k an image of 128 by 64 using one bit per pixel is still 1k and there's what 15 16 screens just the image for each screen would be 16k bytes right so that's that's how constrained this little chip made things and then there was other issues um my prototype boards i had designed so this one on the left that small chip was my led controller but when it came time for the final production run they were out so without testing it i ordered we just i changed the design to use that bigger
chip as the led controller and prayed it would work luckily it did otherwise we wouldn't have badges uh just crazy crazy things like that but i have to give a big shout out to complicated mike is he here he might went home he had his kids around with him i don't see complicated might okay he did so much for us he did the assembly of these badges um we didn't have enough time to have china do it so or the shop in china do it let's see if this will play no it won't oh it will i just okay see if i can make this play so here's his this is his little pick and place
machine and you can see it grabbing each of the parts puts them over a light to see how it's holding them and then it places them in the right spot on the board and it was so kind of cool to see um what you don't see here is the painstaking process it takes to feed each of those divide like hook it up and then program it to say with this chip goes right here right like supposed to be kind of automated but it's not as automated as you would think um so he did a lot for us that's him in the top left putting so we've got like a stencil you apply the the solder paste as a stencil and then
that machine sets the machine the parts on that paste and then he's got this like big pizza oven that you just put the boards in and then it cooks the solder paste into solder and that was it it was really cool to see never want to do it again and that would only do the small pieces it doesn't do any of the through hole and it couldn't do the lecd screen because that screen can't go through an oven so that was all child labor these are my boys doing the soldering of all of your rotary controllers and then i soldered the lcd screens on the back so like you guys know there are 15 puzzles i try to get a variety of
things and variety of difficulties sometimes they work well sometimes they don't wow i've ripped through this awesome um this is kind of where i wanted to talk puzzles the hints and errata so a few things i'll come back to this slide a few things i wanted to point out before but i've made these mention on the slack um on the lanyards i made a mistake when i was designing them that's over there that's what the right thing is supposed to be but somehow when i was laying them out one of those x's floated down to the next row which changed the answers which makes it insolvable so on your lanyards those first two lines are like crossed out in
purple that's why if you actually had if you tried to solve it using those you would be inconclusive right unsolvable that's the the real one you don't need those two and you can actually solve it with just the bottom how many there are but it's easier if you have the other two if you're doing it by hand it's easier like this is like a mastermind game with insane number of options a little bit more difficult but still doable right i kind of like these puzzles because they're very um procedural um unfortunately procedural puzzles computers can do even better the weekend but and then the hint on the matrix one is that i didn't misspell that i know how
to spell bunny hill but um they i needed to produce a three by three matrix with a correct determinant and having two ends there would not produce a determinant that would decode so that's kind of a hint on that one um but yeah with that that's really all i had i kind of go i went a little faster than i expected but i wanted to leave some time also for questions or help hints errata other era i don't even know how to say that sorry i'll quit saying it anybody have anything they want to ask oh yes i can't see your hands so just talk loud ah okay okay i can help on some of them the snow
one was a little bit more difficult than i expected um anybody who wants the snow one jade will you stand up again she has a tv remote control that's really all you need is a power button from most common tv remotes if it will detect the tv on off and that's how you kill the power the the snow one so that one's a freebie um the chill we kind of talked about a little bit equalizer i'm not going to give away it has to do with that mastermind puzzle the social i think you guys know pretty much pong um you have to play it and you have to be pretty good at it that one's about all that one takes the
ski game just have to be pretty good at the ski lifts you have to do the soldering on the back egg hunter um okay google google egg hunter you might be able to figure that out pretty straightforward thank you crunch i think most people got that one they know they know the hacker trivia tower station some of you have got that one what's a good hint for tower station without giving it away [Laughter]
yeah it has to do with the tree puzzle on the back the two leads that are slightly higher than the rest those are the decimal parts so it's like a number decimal those two leads to higher on the left um what are we on oh they hit the slopes that one is modeled after some of the gchq mind teaser puzzles that's not one of my strong spots so it's hard for me to gauge like is this too hard too easy but apparently for those that get it it's like totally out there and then all of a sudden oh oh yeah that's easy um you can correct me if you're wrong it's kind of one of those like once you get it you
just know you got it not really a big fan of those but i kind of want to do some things that that are not just my area expertise somebody say something okay yeah wilson was telling me he was like i was just staring at and all of a sudden i was like ding um let's see where we at matrix matrix is an encryption one it is kind of hard but once you get the right path you should get there there's a few people here who know that ones you can ask around on the slack channel and people will help logic analyzer that one turned out to be rougher than i intended uh those do represent ones and zeros um
but it's like the spacing of each one it could be so like in that image that's like i would guess here that's like two ones right next to each other then a zero then a one then a zero then you know some number of ones and then that's just going to be some ascii code the hard part is when there's lots of zeros next to each other that's just a long you know low time and it's is that four or five dot you know low periods so determining the low periods and the high periods there's how you would solve the logic analyzer balance model off of actual when you're like doing hardware attacks you can put traces on
lines and you can see the voltage go up and down and you're trying to decode like you know what's this i2c or whatever i didn't want to make you duke protocol so i tried to do raw ascii still turned out to be too hard so like liked the idea and thought concept but execution was poor rtfm that one i've seen some trouble with u3 is a reference to the part on the back of your badge so if you'll look on the back of your badge there's a part labeled u3 it's talking about that part that might help you and then the etchy sketch a lot of people got that by um accident that one is just an it's a sketch if you
know how to use an initial sketch you'll get that badge that you'll get that one um do you any does anybody want additional hints or additional questions or feedback i'm open to anything right now yes a hand up
okay you can't get the equalize the equalizer is hard to input but you have to know exactly what to input which comes from the mastermind puzzle um any other questions feedback did you like the badge was it worth the time was it worth it thank you um yeah if you if you don't want to i i'm really open to criticism and you know be like if you want to just shoot me over slack and be like that puzzle really wasn't good don't do another one like that or i kind of think the jump between this hint and that was too far please let me know so that i can improve for next year i might intend just not to frustrate
people um [Laughter] okay i depends on when next year is right we already have that concession um okay anything else otherwise i won't delay it and let you guys go home right thank you guys for sticking around i appreciate it hope you guys enjoyed it we'll see you tomorrow i don't think that's the closing talk so that's it see you guys thank you