Integrated Electronics: The Guide, Flashlight Example

Example: Flashlight
I will cover, with images, how to construct a very simple flashlight with Integrated Electronics, in this section of the guide. Sadly, the inclusion of this guide overcame the character limit of the Integrated Electronics: The Guide itself.

The Circuit Code for this Device

{“assembly”:{“type”:“type-a electronic assembly”},“components”:[{“type”:“tiny photovoltaic cell”},{“type”:“button”},{“type”:“advanced light”,“inputs”:[[2,0,4]]}],“wires”:[[[2,“A”,1],[3,“A”,1]]]}


Step 1
First, one ascertains one’s goal. In this case, to create an easily toggled light. Simple enough.


Step 2
One acquires the needed tools, and selects an assembly appropriate to the task. In this case, a tiny assembly might have done the job - but perhaps one would want to leave room to give additional functionality to the flashlight in the future - so a small assembly does the trick. There isn’t one in particular that looks like a flashlight, so we’ll just go with “Type-A”.

Pictured, from left to right: Circuit Analyzer, Circuit Debugger, Circuit Wirer, Type-A Assembly
ie_flashlight_tutorial_2_24072020


Step 3
Now that we have an assembly, we need to fill it with components. One should carefully review what components might be needed, and all of them before editing values, or wiring. This helps give a more complete picture of the finished device in one’s mind. In my case, at first I selected a simple Light component, and then replaced it with an Advanced Light - to demonstrate value editing. One might also have done this, to expand the device in the future by allowing the ability to select the light’s color. I also initially fudged things a little by adding a toggle switch, instead of a button initially - thinking that the light being on or off would rely on a Boolean value - which it does not.
Be sure to check power consumption on your device, by roughly totaling components. In this case, power consumption is far less than 1 Watt a second, so a Photovoltaic Cell component will provide more than enough power.

Pictured: The Assembly with the described components inserted.


Step 4
Now that we have our components in our assembly, we should look to see if any default values require editing. One does - in the Advanced Light component. We should edit the “brightness” variable to its maximum - 4.
To do this, one takes a Circuit Debugger in hand, and uses it. This will bring up a menu, with one of the options listed as “Number”. Selecting this will pop up an input box. Just type “4” - without the quotes, then submit.
With one’s tool still in hand, select the assembly to open the assembly interface - if it isn’t already open.
Then, one selects the “Advanced Light” component, remembering to keep one’s Circuit Debugger still in one’s active hand.
Then, one clicks the variable in the Data Input Pin, which is highlighed in green below.

Why 4, and why isn't the maximum listed in the component?

I have no idea. The code is here, between Lines 96 and 120, with particular interest falling on Line 116.

I’ve highlighted two things of note. Around the red box, we see that the “brightness” variable is the “NUM” type - a number. Around the green box, we see that the current value for the “brightness” variable is “null”.

Pictured: The Advanced Light Component, with highlighted boxes.


Step 5
With all the values we need shifted from their defaults, we can begin wiring.
There’s only one thing that needs to be connected - the Button component’s “PULSE OUT”
Pulse Pin, to the Advanced Light component’s “PULSE IN” Pulse Pin.
To do this, one takes a Circuit Wirer in hand, then clicks the “PULSE OUT” option in the Button component.
With the Circuit Wirer still in one’s active hand, simply click the “PULSE IN” option in the Advanced Light component.
Please see the bug here. The Button component should have a “PULSE OUT” Pulse Pin, but it is mislabeled as “PULSE IN”. The device will still function as intended.

Pictured: The Button component, with click-target for one’s Circuit Wirer highlighted in red.

Pictured: The Advanced Light component, with click-target for one’s Circuit Wirer highlighted in red.

Pictured: How the Button and Advanced Light components should look after the Advanced Light component’s “brightness” variable has been edited, and the two components have been wired together.


Step 6
Insert a Power Cell. I inserted a High Capacity Power Cell, which is unnecessarily large.

Pictured: The change to the assembly menu interface after a Power Cell has been inserted.


Step 7
Use a screwdriver to close the assembly, and test. In this case, I brought the device to a darkly lit area of maint - and used it in-hand. If one has only inserted a single input component that requires player interaction, when the device is used in-hand, it will automatically activate that component. Otherwise, a selection menu will be given to the player.

Pictured: Success! The device’s Advanced Light component has been activated by the button.
ie_flashlight_tutorial_12_24072020


Step 8
Save your device’s code, for later production or further work on it. Use a Circuit Analyzer on the assembly to do this. Copy the given code, and paste it to an external text document, save it onto your computer.

Pictured: The output of a Circuit Analyzer
ie_flashlight_tutorial_13_24072020

3 Likes

haha copy paste go brrrr

1 Like

Copy paste? What? I picked a flashlight since it’s very simple to explain, and illustrates the concepts. Oh. You mean instead of learning how to do things properly, just using other people’s designs. I mean, yeah, I guess. If you want to be a smoothbrain.

yes that is what I mean, I just copy paste shit unless there isnt a copy paste for what I want

Well, yeah. A viable option. But, I made the guides for people who want to learn. It’s more or less finished now, with some final touches on specifics, spell, and grammar needed - but meh. I think I did a good job.

2 Likes

whats the most op shit i can do with this

With a flashlight? Menacingly toggle it on and off at people.

1 Like

Integrated electronics overall, you mentioned it can break the station.

TELL ME the best thing to just that

Read the guide, and figure things out for yourself. I’m willing to do some hand-holding while I’m on server in Science, and doing Circuits - but that’s about it. I’m willing to answer more general questions in the appropriate thread. I didn’t create these guides with the intent of just explaining the most efficient way to fuck people up, I created them with the intent of fostering creativity, and to allow people to dream up their own ways to most efficiently fuck people up.
tl;dr - don’t be a script kiddy.

Here, this should help. Apologies if I came off as dismissive. It’s just - that attitude is exactly the kind of thing I’d like to avoid. “Tell me exactly how to do the thing so I can copy-paste it” isn’t a great way to approach this module, even if it is valid.