[{"data":1,"prerenderedAt":654},["ShallowReactive",2],{"contributor-paths":3,"contributor-carlo-supina":8,"contributor-lorddeathunter":11,"game:\u002Fgames\u002Fthetawave":14,"header-guide-sections":391,"game-authors:\u002Fgames\u002Fthetawave":401,"all":406},[4,6],{"path":5},"\u002Fcontributors\u002Fcarlo-supina",{"path":7},"\u002Fcontributors\u002Florddeathunter",{"name":9,"profileId":10},"Carlo Supina","c7a26131-dae4-4551-b77d-c09b8a6a639e",{"name":12,"profileId":13},"LordDeatHunter",null,{"id":15,"title":16,"author":13,"body":17,"buttonText":13,"categories":13,"contentDisplayUrl":288,"contentType":289,"date":290,"description":291,"extension":292,"featured":293,"game":294,"hidden":293,"hideFromSearch":293,"img":13,"links":13,"meta":386,"name":13,"navigation":297,"path":387,"profileId":13,"project_creator":13,"project_page":13,"redirectLink":13,"seo":388,"stem":389,"tags":13,"__hash__":390},"content\u002Fgames\u002Fthetawave.md","Thetawave",{"type":18,"value":19,"toc":276},"minimark",[20,25,29,34,37,66,69,74,77,80,84,87,91,95,157,161,164],[21,22,24],"h2",{"id":23},"welcome-to-thetawave","Welcome to Thetawave",[26,27,28],"p",{},"Thetawave is a top-down physics-based space shooter, and now you can play it right in your browser! This is not a demo of the full game that is coming soon to Steam, but an entirely separate arcade-style score-attack game.",[30,31,33],"h3",{"id":32},"gameplay","Gameplay",[26,35,36],{},"Choose a character. Each has a unique set of abilities:",[38,39,40,48,54,60],"ul",{},[41,42,43,47],"li",{},[44,45,46],"strong",{},"Primary ability:"," Your basic attack.",[41,49,50,53],{},[44,51,52],{},"Secondary ability:"," A special attack; some charge up if you hold it.",[41,55,56,59],{},[44,57,58],{},"Utility ability:"," A tactical move, such as a bomb, a shockwave or a gravity well.",[41,61,62,65],{},[44,63,64],{},"Ultimate ability:"," Your most powerful move.",[26,67,68],{},"In each level you will fight through waves of enemies, collecting experience to level up your character. At the end of each level you will fight a boss. Complete every level to beat the game.",[70,71,73],"h4",{"id":72},"upgrading-your-character","Upgrading Your Character",[26,75,76],{},"Collect experience from defeated enemies to progress the experience bar at the top. Once you have banked a level, there is a chance for a shimmering enemy to spawn. Defeat that enemy to upgrade your character.",[26,78,79],{},"Bosses will also drop items when defeated to upgrade your character further.",[70,81,83],{"id":82},"activating-buffs","Activating Buffs",[26,85,86],{},"Occasionally a buff will drop from a defeated enemy. These can be collected and stored in your character's inventory. These buffs can be activated at any time for powerful temporary boosts.",[21,88,90],{"id":89},"updates","Updates",[30,92,94],{"id":93},"web-v020-october-15-2026","web-v0.2.0 · October 15, 2026",[38,96,97,125,131,137,151],{},[41,98,99,102,103,110,111,114,115,118,119,124],{},[44,100,101],{},"New font:"," Everything is set in ",[104,105,109],"a",{"href":106,"rel":107},"https:\u002F\u002Fwww.departuremono.com\u002F",[108],"nofollow","Departure Mono"," now. If you prefer a more readable font, turn on ",[44,112,113],{},"Legible Font"," under ",[44,116,117],{},"Options › Accessibility"," to switch to ",[104,120,123],{"href":121,"rel":122},"https:\u002F\u002Fwww.brailleinstitute.org\u002Ffreefont\u002F",[108],"Atkinson Hyperlegible Next",".",[41,126,127,130],{},[44,128,129],{},"Sharper text:"," Damage numbers and the HUD are drawn at full resolution.",[41,132,133,136],{},[44,134,135],{},"Faster leveling:"," You'll level up more often during a run.",[41,138,139,142,143,146,147,150],{},[44,140,141],{},"Controls:"," Activate Buff is now ",[44,144,145],{},"Left Shift"," (Ctrl+W used to close the browser tab), and the utility ability is now ",[44,148,149],{},"E"," instead of Alt, so they stop fighting your browser.",[41,152,153,156],{},[44,154,155],{},"New final boss:"," Mecha Ferritharax replaces Mecha Saucetron.",[30,158,160],{"id":159},"web-v010-october-14-2026","web-v0.1.0 · October 14, 2026",[26,162,163],{},"The first browser build, put up quietly at arcade.metalmancy.tech before this page existed. What was in it:",[38,165,166,192,198,204,210,242,248,264,270],{},[41,167,168,171,172],{},[44,169,170],{},"3 characters",", each with four abilities:\n",[38,173,174,180,186],{},[41,175,176,179],{},[44,177,178],{},"Captain:"," Fire Blast, Mega Blast, Drop Bomb, Cluster Bomb",[41,181,182,185],{},[44,183,184],{},"Juggernaut:"," Fire Bullet, Charge, Shockwave, Ironclad",[41,187,188,191],{},[44,189,190],{},"Doomwing:"," Fire Blast, Fire Laser, Gravity Well, Big Bang",[41,193,194,197],{},[44,195,196],{},"4 levels"," in one continuous run: 9 enemy assaults with breaks between them, and a boss to close each level. The last two levels are fought on a 50% larger arena.",[41,199,200,203],{},[44,201,202],{},"4 bosses:"," Ferritharax, Trizetheron, Vorticyx and Mecha Saucetron.",[41,205,206,209],{},[44,207,208],{},"8 enemy types"," from the Xhitara: Grunt, Spitter, Gyro, Missile, Pacer, Launcher, Cyclusk and Lancer.",[41,211,212,215,216],{},[44,213,214],{},"12 augments",", each with three ranks, across four rarity tiers:\n",[38,217,218,224,230,236],{},[41,219,220,223],{},[44,221,222],{},"Common:"," Reinforced Hull, Afterburners, Shield Battery, Primary Cycler",[41,225,226,229],{},[44,227,228],{},"Uncommon:"," Overcharge, Shield Regenerator, Thrusters, Secondary Cycler, Salvage Magnet",[41,231,232,235],{},[44,233,234],{},"Rare:"," Utility Cycler, Ultimate Cycler",[41,237,238,241],{},[44,239,240],{},"Legendary:"," Split Chamber",[41,243,244,247],{},[44,245,246],{},"The augment carrier:"," bank a level with experience, then destroy the shimmering enemy to choose an augment.",[41,249,250,253],{},[44,251,252],{},"Loot:",[38,254,255,258,261],{},[41,256,257],{},"Pickups: Money, Big Money, Health Wrench and Armor Plate",[41,259,260],{},"Two items from bosses: Plasma Coil and Enhanced Plating",[41,262,263],{},"Buffs, such as Damage Booster",[41,265,266,269],{},[44,267,268],{},"4 music tracks:"," the title and game themes, and a boss intro that hands off to the boss theme. Music by Joel Schuman.",[41,271,272,275],{},[44,273,274],{},"1 or 2 players"," on the same machine.",{"title":277,"searchDepth":278,"depth":278,"links":279},"",2,[280,284],{"id":23,"depth":278,"text":24,"children":281},[282],{"id":32,"depth":283,"text":33},3,{"id":89,"depth":278,"text":90,"children":285},[286,287],{"id":93,"depth":283,"text":94},{"id":159,"depth":283,"text":160},"\u002Fimg\u002Fgames\u002Fthetawave_thumbnail.png","game","2021-07-31","Thetawave is a physics-based space shooter with procedurally generated levels, diverse foes, and distinct characters.","md",false,{"src":295,"aspectRatio":296,"desktopOnly":297,"requires":298,"helpUrl":300,"signals":297,"release":297,"authors":301,"links":306,"controls":311},"https:\u002F\u002Farcade.metalmancy.tech\u002Fthetawave\u002F","4:3",true,[299],"webgpu","\u002Fguides\u002Fturning-on-webgpu-in-your-browser",[302,304],{"contributor":303},"carlo-supina",{"contributor":305},"lorddeathunter",[307],{"label":308,"url":309,"icon":310},"Wishlist","https:\u002F\u002Fstore.steampowered.com\u002Fapp\u002F2427510\u002FThetawave\u002F","simple-icons:steam",[312,326,332,338,343,349,354,360,366,372,376,382],{"action":313,"keys":314,"gamepad":323},"Move",[315,316,317,318,319,320,321,322],"W","A","S","D","↑","←","↓","→",[324,325],"dpad","left-stick",{"action":327,"mouse":328,"gamepad":330},"Primary (First) Ability",[329],"left",[331],"south",{"action":333,"mouse":334,"gamepad":336},"Secondary (Second) Ability (hold to charge for some characters)",[335],"right",[337],"east",{"action":339,"keys":340,"gamepad":341},"Utility (Third) Ability",[149],[342],"west",{"action":344,"keys":345,"gamepad":347},"Ultimate (Fourth) Ability",[346],"Space",[348],"north",{"action":350,"keys":351,"gamepad":352},"Activate Buff",[145],[353],"rb",{"action":355,"mouse":356,"gamepad":358},"Choose Buff",[357],"scroll",[359],"lb",{"action":361,"keys":362,"gamepad":364},"Status Overlay (hold)",[363],"Tab",[365],"select",{"action":367,"keys":368,"gamepad":370},"Pause",[369],"Esc",[371],"start",{"action":373,"keys":374,"gamepad":375},"Menu Navigate",[315,316,317,318,319,320,321,322],[324,325],{"action":377,"keys":378,"mouse":380,"gamepad":381},"Menu Confirm",[379],"Enter",[329],[331],{"action":383,"keys":384,"gamepad":385},"Menu Back",[369],[337],{},"\u002Fgames\u002Fthetawave",{"title":16,"description":291},"games\u002Fthetawave","h8v9scKLIjxqjoY2hiLaKbzbLHfiDpzCk91hcVhi6Ys",[392,395,398],{"to":393,"label":394},"\u002Fguides\u002Fatlas","Atlas",{"to":396,"label":397},"\u002Fguides\u002Fesp8266","ESP8266",{"to":399,"label":400},"\u002Fguides\u002Fesp32","ESP32",[402,404],{"name":9,"url":403,"external":293},"\u002Fabout#carlo-supina",{"name":12,"url":405,"external":293},"\u002Fabout#lorddeathunter",[407,416,426,436,450,451,462,472,481,491,501,509,520,529,537,545,554,563,572,582,589,597,605,613,621,631,645],{"id":408,"path":300,"title":409,"description":410,"author":303,"tags":411,"date":414,"contentDisplayUrl":415,"redirectLink":13},"content\u002Fguides\u002Fturning-on-webgpu-in-your-browser.md","Turning On WebGPU in Your Browser","Some of the games on this site need WebGPU, a newer way for web pages to use your graphics card. Most browsers have it switched on already. This guide shows which ones do, and how to switch it on in the ones that don't.",[299,412,413],"browser","games","2026-10-11","\u002Fimg\u002Fposts\u002Fwebgpu_guide_thumbnail_w3c.png",{"id":417,"path":418,"title":419,"description":420,"author":303,"tags":421,"date":424,"contentDisplayUrl":425,"redirectLink":13},"content\u002Fblogs\u002Fopen-sauce-2024.md","\u002Fblogs\u002Fopen-sauce-2024","Open Sauce 2024 - Preparing and Showcasing Mini Arcade Machines","A look back into the process of designing and fabricating arcade machines for Open Sauce 2023 and 2024. Learn about what goes into designing custom gaming hardware and presenting at a maker convention.",[422,289,423],"convention","arcade","2024-09-09","\u002Fimg\u002Fposts\u002Fopen_sauce_2024\u002Fos_2024_framework.jpg",{"id":427,"path":428,"title":429,"description":430,"author":303,"tags":431,"date":434,"contentDisplayUrl":435,"redirectLink":13},"content\u002Fprojects\u002Fautomating-a-pet-fountain.md","\u002Fprojects\u002Fautomating-a-pet-fountain","Automating a Pet Fountain","This project provides power for a set period of time to a water fountain when a motion sensor is triggered.",[432,433],"MOSFET","PIR-sensor","2022-04-01","\u002Fimg\u002Fposts\u002Fmotion_sensor_switch_thumbnail.png",{"id":437,"path":438,"title":439,"description":440,"author":303,"tags":441,"date":448,"contentDisplayUrl":449,"redirectLink":13},"content\u002Fprojects\u002Fmodding-an-appliance.md","\u002Fprojects\u002Fmodding-an-appliance","Modding an Appliance","This project takes a simple space heater and turns it into an IOT device using ESP8266 (or ESP32) microcontrollers.",[442,443,444,445,446,447],"esp8266","NodeMCU","Thonny","micropython","microcontroller","mod","2021-08-02","\u002Fimg\u002Fposts\u002Fheater_1_thumbnail.png",{"id":15,"path":387,"title":16,"description":291,"author":13,"tags":13,"date":290,"contentDisplayUrl":288,"redirectLink":13},{"id":452,"path":453,"title":454,"description":455,"author":303,"tags":456,"date":460,"contentDisplayUrl":461,"redirectLink":13},"content\u002Fguides\u002Ftimers-and-interrupts-with-a-esp32-nodemcu-and-micropython.md","\u002Fguides\u002Ftimers-and-interrupts-with-a-esp32-nodemcu-and-micropython","Timers and Interrupts with an ESP32 NodeMCU and MicroPython","Timers and interrupts simplify and optimize processes by eliminating the need for an infinite loop to check the state of a pin or to execute a delay.",[457,443,444,445,446,458,459],"esp32","timer","interrupt","2021-01-24","\u002Fimg\u002Fposts\u002Fesp32_timers_thumbnail.png",{"id":463,"path":464,"title":465,"description":466,"author":303,"tags":467,"date":470,"contentDisplayUrl":471,"redirectLink":13},"content\u002Fprojects\u002Fgenerating-stl-models-with-python.md","\u002Fprojects\u002Fgenerating-stl-models-with-python","Generating STL Models with Python","How I generated a STL file from a list of coordinates for a 3D print.",[468,469],"python","3d-printer","2020-12-20","\u002Fimg\u002Fposts\u002Fgenerate_stl_thumbnail.png",{"id":473,"path":474,"title":475,"description":476,"author":303,"tags":477,"date":479,"contentDisplayUrl":480,"redirectLink":13},"content\u002Fguides\u002Fgpio-input-and-output-with-an-esp32-nodemcu-and-micropython.md","\u002Fguides\u002Fgpio-input-and-output-with-an-esp32-nodemcu-and-micropython","GPIO Input and Output with an ESP32 NodeMCU and MicroPython","This guide goes over basic input and output using GPIO pins on the ESP32 NodeMCU.",[457,443,444,445,446,478],"gpio","2020-12-02","\u002Fimg\u002Fposts\u002Fesp32_gpio_thumbnail.jpg",{"id":482,"path":483,"title":484,"description":485,"author":303,"tags":486,"date":489,"contentDisplayUrl":490,"redirectLink":13},"content\u002Fblogs\u002Ftinkerdoodle.md","\u002Fblogs\u002Ftinkerdoodle","Tinkerdoodle: A Free IDE for Your IOT Projects","Tinkerdoodle is a free IDE for your IOT projects powered by Jupyter Notebooks.",[445,442,457,487,488],"Jupyter","dht11","2020-11-12","\u002Fimg\u002Fposts\u002Ftinkerdoodle_thumbnail.png",{"id":492,"path":493,"title":494,"description":495,"author":303,"tags":496,"date":499,"contentDisplayUrl":500,"redirectLink":13},"content\u002Fblogs\u002Fhow-to-revive-a-dead-project.md","\u002Fblogs\u002Fhow-to-revive-a-dead-project","How to Revive a Dead Project","My experience bringing my previously dead project, space_shooter_rs, back to life.",[497,498,289],"rust","amethyst","2020-10-03","\u002Fimg\u002Fposts\u002Fdead_project_thumbnail.png",{"id":502,"path":503,"title":504,"description":505,"author":303,"tags":506,"date":507,"contentDisplayUrl":508,"redirectLink":13},"content\u002Fguides\u002Fgetting-started-with-esp32-and-micropython.md","\u002Fguides\u002Fgetting-started-with-esp32-and-micropython","Getting Started with ESP32 and MicroPython","While doing any programming task, it is important to be working in an environment that will your maximize productivity. This guide will take you through setting up an environment for programming an ESP32 with MicroPython using an IDE called Thonny.",[457,445,446,444],"2020-08-27","\u002Fimg\u002Fposts\u002Fesp32_setup_thumbnail.png",{"id":510,"path":511,"title":512,"description":513,"author":303,"tags":514,"date":518,"contentDisplayUrl":519,"redirectLink":13},"content\u002Fguides\u002Fi2c-bus-with-a-nodemcu-and-micropython.md","\u002Fguides\u002Fi2c-bus-with-a-nodemcu-and-micropython","I2C Bus with a NodeMCU and MicroPython","This guide is an intruduction to I2C communication with an ESP8266 NodeMCU and MicroPython. Two I2C peripherals are used in this guide: a MPU6050 IMU, and a 128 by 64 OLED display with a SSD1306 driver.",[442,443,444,445,446,515,516,517],"i2c","mpu6050","ssd1306","2020-07-08","\u002Fimg\u002Fposts\u002Fi2c_thumbnail.jpg",{"id":521,"path":522,"title":523,"description":524,"author":303,"tags":525,"date":527,"contentDisplayUrl":528,"redirectLink":13},"content\u002Fguides\u002Fintroduction-to-api-calls-with-a-nodemcu-and-micropython.md","\u002Fguides\u002Fintroduction-to-api-calls-with-a-nodemcu-and-micropython","Introduction to API Calls with a NodeMCU and MicroPython","This guide is an introduction to making API calls in Python 3 and MicroPython using the requests, urequests, and the OpenWeather API.",[442,443,444,445,446,526],"api","2020-06-04","\u002Fimg\u002Fposts\u002Fapi_call_thumbnail.jpg",{"id":530,"path":531,"title":532,"description":533,"author":303,"tags":534,"date":535,"contentDisplayUrl":536,"redirectLink":13},"content\u002Fguides\u002Fintroduction-to-networking-and-ntptime-with-a-nodemcu-and-micropython.md","\u002Fguides\u002Fintroduction-to-networking-and-ntptime-with-a-nodemcu-and-micropython","Introduction to Networking and ntptime with a NodeMCU and MicroPython","This guide is an introduction to using the networking capabilities of the ESP8266. Specifically, we will go over how to connect the ESP8266 in station mode to wifi and use ntptime to set the RTC to the current time.",[442,443,444,445,446],"2020-03-31","\u002Fimg\u002Fposts\u002Fnetworking_ntptime_thumbnail.jpg",{"id":538,"path":539,"title":540,"description":541,"author":303,"tags":542,"date":543,"contentDisplayUrl":544,"redirectLink":13},"content\u002Fguides\u002Fsetting-up-your-atlas-device.md","\u002Fguides\u002Fsetting-up-your-atlas-device","Setting-Up your Atlas Device","This guide goes over setting up an environment for programming an assembled Atlas device.",[394,443,442,445,446,444],"2020-03-10","\u002Fimg\u002Fposts\u002Fatlas_setup_thumbnail.jpg",{"id":546,"path":547,"title":548,"description":549,"author":303,"tags":550,"date":552,"contentDisplayUrl":553,"redirectLink":13},"content\u002Fguides\u002Fwifi-clock-micropython-class-reference.md","\u002Fguides\u002Fwifi-clock-micropython-class-reference","Wifi Clock Micropython Class Reference","This guide will take you through the basics of programming the Wifi Clock with micropython.",[551,445,442],"wifi-clock","2020-03-05","\u002Fimg\u002Fwifi_clock.jpg",{"id":555,"path":556,"title":557,"description":558,"author":303,"tags":559,"date":561,"contentDisplayUrl":562,"redirectLink":13},"content\u002Fguides\u002Fassembling-your-atlas-kit.md","\u002Fguides\u002Fassembling-your-atlas-kit","Assembling your Atlas Kit","This guide goes over the assembly process of one of our Atlas kits.",[394,443,442,560],"solder","2020-03-04","\u002Fimg\u002Fposts\u002Fatlas_assembly_thumbnail.jpg",{"id":564,"path":565,"title":566,"description":567,"author":303,"tags":568,"date":570,"contentDisplayUrl":571,"redirectLink":13},"content\u002Fguides\u002Frtc-and-deep-sleep-with-a-nodemcu-and-micropython.md","\u002Fguides\u002Frtc-and-deep-sleep-with-a-nodemcu-and-micropython","RTC and Deep Sleep with a NodeMCU and MicroPython","This guide is an introduction to using the RTC (real time clock) and deep sleep mode with ESP8266 NodeMCU.",[442,443,444,445,446,569],"rtc","2020-02-21","\u002Fimg\u002Fposts\u002Frtc_thumbnail.jpg",{"id":573,"path":574,"title":575,"description":576,"author":303,"tags":577,"date":580,"contentDisplayUrl":581,"redirectLink":13},"content\u002Fguides\u002Fpwm-and-adc-with-anodemcu-and-micropython.md","\u002Fguides\u002Fpwm-and-adc-with-anodemcu-and-micropython","PWM and ADC with a NodeMCU and MicroPython","PWM (pulse width modulation) and ADC (analog to digital conversion\u002Fconverter) are both ways in which a digital device, like the ESP8266, can handle analog values.",[442,443,444,445,446,578,579],"pwm","adc","2020-02-17","\u002Fimg\u002Fposts\u002Fpwm_adc_thumbnail.png",{"id":583,"path":584,"title":585,"description":455,"author":303,"tags":586,"date":587,"contentDisplayUrl":588,"redirectLink":13},"content\u002Fguides\u002Ftimers-and-interrupts-with-a-nodemcu-and-micropython.md","\u002Fguides\u002Ftimers-and-interrupts-with-a-nodemcu-and-micropython","Timers and Interrupts with a NodeMCU and MicroPython",[442,443,444,445,446,458,459],"2020-02-06","\u002Fimg\u002Fposts\u002Ftimers_interrupts_thumbnail.png",{"id":590,"path":591,"title":592,"description":593,"author":303,"tags":594,"date":595,"contentDisplayUrl":596,"redirectLink":13},"content\u002Fguides\u002Fbasic-gpio-input-and-output-with-a-nodemcu-and-micropython.md","\u002Fguides\u002Fbasic-gpio-input-and-output-with-a-nodemcu-and-micropython","Basic GPIO Input and Output with a NodeMCU and MicroPython","This guide goes over basic input and output using GPIO pins on the ESP8266 NodeMCU.",[442,443,444,445,446,478],"2020-01-31","\u002Fimg\u002Fposts\u002Fmicropython_basics_1_thumbnail.png",{"id":598,"path":599,"title":600,"description":601,"author":303,"tags":602,"date":603,"contentDisplayUrl":604,"redirectLink":13},"content\u002Fguides\u002Fhow-to-find-your-devices-port.md","\u002Fguides\u002Fhow-to-find-your-devices-port","How to find your Device's Port","Knowing how to find your device's port is essential to programming a microcontroller.",[446],"2020-01-27","\u002Fimg\u002Fposts\u002Ffind_port_thumbnail.png",{"id":606,"path":607,"title":608,"description":609,"author":303,"tags":610,"date":611,"contentDisplayUrl":612,"redirectLink":13},"content\u002Fguides\u002Fhello-micropython.md","\u002Fguides\u002Fhello-micropython","Hello MicroPython","While doing any programming task, it is important to be working in an environment that will your maximize productivity. This guide will take you through setting up an environment for programming an ESP8266 with MicroPython using an IDE called Thonny.",[442,443,444,445,446],"2020-01-21","\u002Fimg\u002Fposts\u002Fhello_esp8266_thumbnail.png",{"id":614,"path":615,"title":616,"description":617,"author":303,"tags":618,"date":619,"contentDisplayUrl":620,"redirectLink":13},"content\u002Fprojects\u002Fspace-shooter-game.md","\u002Fprojects\u002Fspace-shooter-game","Space Shooter Game","A space shooter game made with the Amethyst Engine and Rust.",[497,498,289],"2019-09-02","\u002Fimg\u002Fposts\u002Fspace_shooter_thumbnail.png",{"id":622,"path":623,"title":624,"description":625,"author":303,"tags":626,"date":629,"contentDisplayUrl":630,"redirectLink":13},"content\u002Fblogs\u002Fthotcon-0xa.md","\u002Fblogs\u002Fthotcon-0xa","Thotcon 0xA","Thotcon is an information security convention that takes place yearly in Chicago.",[422,627,628],"badge","infosec","2019-05-05","\u002Fimg\u002Fposts\u002Fthotcon_0xa_thumbnail.png",{"id":632,"path":633,"title":634,"description":635,"author":303,"tags":636,"date":643,"contentDisplayUrl":644,"redirectLink":13},"content\u002Fprojects\u002Finfrared-rover-prototype.md","\u002Fprojects\u002Finfrared-rover-prototype","Infrared Rover Prototype","A radio controlled rover with infrared vision made with Rust and a STM32 microcontroller.",[497,637,638,639,640,641,642],"motors","stm32","amg8833","xbee","l298n","st7735","2019-04-26","\u002Fimg\u002Fposts\u002Finfrared_rover_thumbnail.png",{"id":646,"path":647,"title":648,"description":649,"author":303,"tags":650,"date":652,"contentDisplayUrl":653,"redirectLink":13},"content\u002Fguides\u002Fbreadboards-explained.md","\u002Fguides\u002Fbreadboards-explained","Breadboards Explained","Learn how to use a breadboard.",[651],"breadboard","2019-01-31","\u002Fimg\u002Fbreadboards_thumbnail.png",1792055140381]