Skip to content

Releases: Architeuthis-Flux/Jumperless

Fixed analog voltage display and some other bugs

26 Jun 21:44
0a3f7fe
Compare
Choose a tag to compare

Getting started using your Jumperless

(at this point some of the stuff in that guide is a bit out of date, but generally is good advice)

Now this works once again. And you don't need to enter 'v' in the main menu anymore to have the LEDs track the readings. It'll just always do that.

ADCdisplay.mp4

Here's what that Wokwi project looks like:
Screenshot 2024-06-26 at 2 36 15 PM

Remember (save) this:
LogicAnalyzerGuide

(I'm keeping the notes here from the last release because these are really just bugfixes)

The app has been overhauled now it's just called Jumperless

The previous version should still work if you hate the slot system, or just any terminal app works fine too

I've added compatibility for some community Nano-footprint boards in Wokwi. Not a huge change, but it should just be a bit more robust with the things it accepts in the diagram.json file.

Here's what it looks like now when you open it:
Screenshot 2024-05-31 at 10 31 09 AM

The projects you assign to these 8 slots are persistent, and also your saved projects are kept separately so they can be assigned/removed from slots without having to paste the link again
Screenshot 2024-05-31 at 9 40 17 AM

The slot assignments and saved projects are stored as .txt files in a folder called JumperlessFiles. On macOS it puts it in the (whatever your username is) directory, I think Windows just puts it in the same place as the .exe.
Screenshot 2024-05-31 at 9 41 16 AM

You can totally edit these files directly or swap them out. If it doesn't find one, it'll make an empty one.

When the app is running, it polls all the Wokwi projects at those links and will update them when there's changes even if it's not the slot that's currently active on the Jumperless. It shouldn't mess with what you're currently doing, but when you switch to that slot, the updates will be there.

It does this by using the new file parsing system accessed by entering 'o' (using the other one with 'f' still works, it will just save that netlist to whatever slot is currently active.

Screenshot 2024-05-31 at 10 06 02 AM

It will look for the string "Slot " and the number after that is what slot it goes to. Then when it finds "f {" it will take in all the bridge pairs after that. If the slot you're loading isn't active, you won't see anything change until you switch to that slot, but rest assured, it's there.

If you're wondering what these connections are, those are what hook up the rotary encoder when it's in rotary encoder mode. If you're currently in rotary encoder mode and you load slots, the Jumperless will inject these connections at the beginning, so you don't need to add them yourself.
Screenshot 2024-05-31 at 10 08 50 AM

If you're making connections with the probe or something, you can dump all the slot files by entering 's' and then copying that to a text file, then you can load that later by entering 'o' and pasting it in (as I'm writing this I'm realizing I should make the app do this automatically). It will accept any continuous subset too, so like if you just paste slots 3-6, it will just add those and leave the rest alone (don't do non-continuous slots like 1,3,5,7 just do those one at a time)

s  

	Slot Files

you can paste this text reload this circuit (enter 'o' first)
(or even just a single slot)

Slot 0
nodeFileSlot0.txt
f {
1-2,
}

Slot 1
nodeFileSlot1.txt
f {
5-6,
}


Slot 2
nodeFileSlot2.txt
f {
9-10,
}


Slot 3
nodeFileSlot3.txt
f {
13-14,
}

Slot 4
nodeFileSlot4.txt
f {
17-18,
}

Slot 5        <--- current slot
nodeFileSlot5.txt
f {
21-22,
}

Slot 6
nodeFileSlot6.txt
f {
25-26,
}


Slot 7
nodeFileSlot7.txt
f {
29-30,
}

If you don't have a rotary encoder handy, you can still cycle slots by entering 'z' or 'x'.

Also, you can change stuff at any time by entering any of these commands.
Screenshot 2024-05-31 at 10 31 18 AM

Anyway, let me know how you like the new UI or have any requests for things to add/change or if you run into any problems on the Jumperless Discord server

The firmware now has an option to load the slots you had last time it was running. You'll find that option in the debug flags menu by entering 'd' in the main menu.

Also, for my macOS peeps, I think I was able to get this packaged in universal2, so it should run on both intel and Apple Silicon macs. And I put together a little DMG installer with some ZX Spectrum stripes.

Screenshot 2024-06-14 at 10 11 18 AM

Nano ESP32 Compatibility

18 Jun 16:51
Compare
Choose a tag to compare

Getting started using your Jumperless

(at this point some of the stuff in that guide is a bit out of date, but generally is good advice)

The app has been overhauled now it's just called Jumperless

The previous version should still work if you hate the slot system, or just any terminal app works fine too

I've added compatibility for some community Nano-footprint boards in Wokwi. Not a huge change, but it should just be a bit more robust with the things it accepts in the diagram.json file.

Here's what it looks like now when you open it:
Screenshot 2024-05-31 at 10 31 09 AM

The projects you assign to these 8 slots are persistent, and also your saved projects are kept separately so they can be assigned/removed from slots without having to paste the link again
Screenshot 2024-05-31 at 9 40 17 AM

The slot assignments and saved projects are stored as .txt files in a folder called JumperlessFiles. On macOS it puts it in the (whatever your username is) directory, I think Windows just puts it in the same place as the .exe.
Screenshot 2024-05-31 at 9 41 16 AM

You can totally edit these files directly or swap them out. If it doesn't find one, it'll make an empty one.

When the app is running, it polls all the Wokwi projects at those links and will update them when there's changes even if it's not the slot that's currently active on the Jumperless. It shouldn't mess with what you're currently doing, but when you switch to that slot, the updates will be there.

It does this by using the new file parsing system accessed by entering 'o' (using the other one with 'f' still works, it will just save that netlist to whatever slot is currently active.

Screenshot 2024-05-31 at 10 06 02 AM

It will look for the string "Slot " and the number after that is what slot it goes to. Then when it finds "f {" it will take in all the bridge pairs after that. If the slot you're loading isn't active, you won't see anything change until you switch to that slot, but rest assured, it's there.

If you're wondering what these connections are, those are what hook up the rotary encoder when it's in rotary encoder mode. If you're currently in rotary encoder mode and you load slots, the Jumperless will inject these connections at the beginning, so you don't need to add them yourself.
Screenshot 2024-05-31 at 10 08 50 AM

If you're making connections with the probe or something, you can dump all the slot files by entering 's' and then copying that to a text file, then you can load that later by entering 'o' and pasting it in (as I'm writing this I'm realizing I should make the app do this automatically). It will accept any continuous subset too, so like if you just paste slots 3-6, it will just add those and leave the rest alone (don't do non-continuous slots like 1,3,5,7 just do those one at a time)

s  

	Slot Files

you can paste this text reload this circuit (enter 'o' first)
(or even just a single slot)

Slot 0
nodeFileSlot0.txt
f {
1-2,
}

Slot 1
nodeFileSlot1.txt
f {
5-6,
}


Slot 2
nodeFileSlot2.txt
f {
9-10,
}


Slot 3
nodeFileSlot3.txt
f {
13-14,
}

Slot 4
nodeFileSlot4.txt
f {
17-18,
}

Slot 5        <--- current slot
nodeFileSlot5.txt
f {
21-22,
}

Slot 6
nodeFileSlot6.txt
f {
25-26,
}


Slot 7
nodeFileSlot7.txt
f {
29-30,
}

If you don't have a rotary encoder handy, you can still cycle slots by entering 'z' or 'x'.

Also, you can change stuff at any time by entering any of these commands.
Screenshot 2024-05-31 at 10 31 18 AM

Anyway, let me know how you like the new UI or have any requests for things to add/change or if you run into any problems on the Jumperless Discord server

The firmware now has an option to load the slots you had last time it was running. You'll find that option in the debug flags menu by entering 'd' in the main menu.

Also, for my macOS peeps, I think I was able to get this packaged in universal2, so it should run on both intel and Apple Silicon macs. And I put together a little DMG installer with some ZX Spectrum stripes.

Screenshot 2024-06-14 at 10 11 18 AM

New Jumperless app / persistent slots

31 May 16:21
Compare
Choose a tag to compare

Getting started using your Jumperless

(at this point some of the stuff in that guide is a bit out of date, but generally is good advice)

The app has been overhauled now it's just called Jumperless

The previous version should still work if you hate the slot system, or just any terminal app works fine too

Here's what it looks like now when you open it:
Screenshot 2024-05-31 at 10 31 09 AM

The projects you assign to these 8 slots are persistent, and also your saved projects are kept separately so they can be assigned/removed from slots without having to paste the link again
Screenshot 2024-05-31 at 9 40 17 AM

The slot assignments and saved projects are stored as .txt files in a folder called JumperlessFiles. On macOS it puts it in the (whatever your username is) directory, I think Windows just puts it in the same place as the .exe.
Screenshot 2024-05-31 at 9 41 16 AM

You can totally edit these files directly or swap them out. If it doesn't find one, it'll make an empty one.

When the app is running, it polls all the Wokwi projects at those links and will update them when there's changes even if it's not the slot that's currently active on the Jumperless. It shouldn't mess with what you're currently doing, but when you switch to that slot, the updates will be there.

It does this by using the new file parsing system accessed by entering 'o' (using the other one with 'f' still works, it will just save that netlist to whatever slot is currently active.

Screenshot 2024-05-31 at 10 06 02 AM

It will look for the string "Slot " and the number after that is what slot it goes to. Then when it finds "f {" it will take in all the bridge pairs after that. If the slot you're loading isn't active, you won't see anything change until you switch to that slot, but rest assured, it's there.

If you're wondering what these connections are, those are what hook up the rotary encoder when it's in rotary encoder mode. If you're currently in rotary encoder mode and you load slots, the Jumperless will inject these connections at the beginning, so you don't need to add them yourself.
Screenshot 2024-05-31 at 10 08 50 AM

If you're making connections with the probe or something, you can dump all the slot files by entering 's' and then copying that to a text file, then you can load that later by entering 'o' and pasting it in (as I'm writing this I'm realizing I should make the app do this automatically). It will accept any continuous subset too, so like if you just paste slots 3-6, it will just add those and leave the rest alone (don't do non-continuous slots like 1,3,5,7 just do those one at a time)

s  

	Slot Files

you can paste this text reload this circuit (enter 'o' first)
(or even just a single slot)

Slot 0
nodeFileSlot0.txt
f {
1-2,
}

Slot 1
nodeFileSlot1.txt
f {
5-6,
}


Slot 2
nodeFileSlot2.txt
f {
9-10,
}


Slot 3
nodeFileSlot3.txt
f {
13-14,
}

Slot 4
nodeFileSlot4.txt
f {
17-18,
}

Slot 5        <--- current slot
nodeFileSlot5.txt
f {
21-22,
}

Slot 6
nodeFileSlot6.txt
f {
25-26,
}


Slot 7
nodeFileSlot7.txt
f {
29-30,
}

If you don't have a rotary encoder handy, you can still cycle slots by entering 'z' or 'x'.

Also, you can change stuff at any time by entering any of these commands.
Screenshot 2024-05-31 at 10 31 18 AM

Anyway, let me know how you like the new UI or have any requests for things to add/change or if you run into any problems on the Jumperless Discord server

Also, for my macOS peeps, I think I was able to get this packaged in universal2, so it should run on both intel and Apple Silicon macs. And I put together a little DMG installer with some ZX Spectrum stripes.

Screenshot 2024-06-14 at 10 11 18 AM

Rotary Encoder Mode!

27 May 23:52
Compare
Choose a tag to compare

Getting started using your Jumperless

Now you can stick a rotary encoder into the Nano header to quickly switch between 8 saved setups. Even more exciting, I've finally written a man page that can be seen in the terminal.

Check it out:
Screenshot 2024-05-27 at 4 36 56 PM

The Rotary Encoder mode setting is saved in EEPROM, so it will be persistent through power cycles.

In the next release I'll have it save the netlists themselves into EEPROM so you can just keep setups saved

Here's a short video of me using it (at the end I'm sending x over serial to cycle the active slot).

RotEncWideSm.mp4

Please play around with it and let me know what you think needs work

Probing 2.1: The Lit Probening

16 Feb 22:28
Compare
Choose a tag to compare

Getting started using your Jumperless

Now you really can use your Jumperless off a power bank. Just plug in a jumper to GPIO 19, touch it to GPIO 18, and the Jumperless will scan the breadboard for any points you touch. Tap the probe to GPIO 18 again to leave probing mode and commit your new connections.

As of 1.3.4, the probe will now disambiguate between rows that are connected with a resistor or something. When it senses multiple connections, they'll all light up and you can cycle through them with the button, then long press to confirm.

(this is an extreme example of the entire to row shorted)

Screenshot 2024-02-18 at 5 58 23 PM

Probing now works on the Nano header pins as well, and is overall a bit more reliable.

Or you can make a simple probe like I did, which just connects to GPIO 19 with a button that shorts GPIO 18 and 19 together. Like this:

GPIO 18 ---------------------------------,
                                         |
                                          |-  Button
                                         |                  ~2.2KΩ
GPIO 19 ---------------------------------'----------------/\/\/\/\/\----------> Probe

I also just discovered that you can put an LED on the probe that will light up when the probe is active. You'll need to be on 1.3.9 because the only change was to pull down the button input to light up the LED. So optionally, you can make a probe like this:

GPIO 18 ---------------------------------,
                        |                |
                  ~1KΩ  Z                |
                        Z                |
                        |                 |-  Button
                        |                |                  ~2.2KΩ
                       \ /↘︎  LED         |
                        Ť ↘︎              |
GPIO 19 ---------------------------------'----------------/\/\/\/\/\----------> Probe

IMG_5322
IMG_5321

ProbeDemo.mp4

(it looks different since 1.3.4)
Here's what my quick-and-dirty probe looks like. Using a sewing needle as the pointy bit works really well.
IMG_5185

If you want to delete a connection, long press the probe button and the Jumperless logo will go bright orangeish-white, that shows you're in disconnect mode.

In 1.3.5, I've added a "show node file" option, that will output the node file in a format that can be just pasted into the main menu and it will reload that circuit.

Screenshot 2024-02-18 at 5 59 53 PM

In the debug flags menu, there's an option to swap the button and probe pins. I added this because I probed -8V with the rail switch up and fried the internal pullup on that pin. It still works fine as the button pin, it just wouldn't read when the probe was touched to 5V anymore.

So you get 2 chances to screw this up now.
Screenshot 2024-02-18 at 6 03 31 PM
This is saved in EEPROM so it should be persistent after a reset or loading new firmware.

I'll sacrifice some boards to see if there's a resistor value that won't interfere with probing but will protect the internal pullups.

There are also a few random bug fixes to make Jumperlab work more smoothly.

It also reports when connections couldn't be made if the netlist is too dense and simply couldn't find a path. * don't trust this for now

Firmware 1.3.8 is a super minor tweak, I just slightly lengthened to timings of certain signals to the CH446Qs

Probing!!!!!!!

14 Feb 05:29
Compare
Choose a tag to compare

Getting started using your Jumperless

Now you really can use your Jumperless off a power bank. Just plug in a jumper to GPIO 19, touch it to GPIO 18, and the Jumperless will scan the breadboard for any points you touch. Tap the probe to GPIO 18 again to leave probing mode and commit your new connections.

Or you can make a simple probe like I did, which just connects to GPIO 19 with a button that shorts GPIO 18 and 19 together. Like this:

GPIO 18 ---------------------------------,
                                         |
                                          |-  Button
                                         |
GPIO 19 ---------------------------------'---------------------------------> Probe
ProbeDemo.mp4

If you want to delete a connection, just probe out the connection a second time and it will clear it.

I'll write a whole guide at some point soon.

There are also a few random bug fixes to make Jumperlab work more smoothly.

Works with arbitrary COM ports, get firmware version command, new versioning system!

11 Feb 22:22
e350039
Compare
Choose a tag to compare

Now the Jumperless will respond with the firmware version number when you send it ? that allows the app to check if the current version is outdated (by looking at the latest release on Github) and will only prompt you to update if it is.

It also uses this as a call-and-response thing to check which port is the Jumperless and which is the routable USB-Serial. So people on Windows who have had their autodetection thrown off shouldn't have that issue anymore.

I'm also switching to a 3 digit semantic versioning from now on. So this release is 1.2.0

Now you can update your firmware from Jumperless Wokwi Bridge!

11 Feb 01:54
e350039
Compare
Choose a tag to compare

Getting started using your Jumperless

Check it out!
Screenshot 2024-02-10 at 5 34 18 PM

Now the Bridge app will ask if you want to update the firmware on startup, and if you say yes, it will pull the latest release from Github and flash it automatically.

This latest firmware here also has some updates from @nilclass that makes some more data available to jlctl and Jumperlab, which are getting pretty damn slick.

Screenshot 2024-02-10 at 5 45 20 PM

So even if you're using Jumperlab (which I now totally recommend, although it still lacks support for special functions like DACs and ADCs, it will come soon), you can basically use JumperlessWokwiBridge as just a firmware updater until we port this to Rust and include it in jlctl.

Let me know if anything doesn't work!

Add consistent special function naming

03 Feb 18:07
Compare
Choose a tag to compare

Getting started using your Jumperless

This adds a long option for printing the names of special function nodes and sort of unifies the naming conventions. It's mostly backend changes that help with the development of Jumperlab and jlctl, we figured we should settle on a unified naming system for things early on.

But it could break certain things if you've written your own stuff to control your Jumperless so it's a whole new release.

Port Autodetection on Windows, ADC brightness following, minor bug fixes

31 Jan 00:58
e2aded0
Compare
Choose a tag to compare

Getting started using your Jumperless

This is mostly an improvement for the Jumperless Wokwi Bridge app, it now properly autodetects the ports on Windows and (more importantly) doesn't just crash immediately at startup because it now searches a few different locations for the packaged arduino-cli.

It also separates compiling and flashing when you turn on auto flashing from Wokwi, so you can more easily pinpoint the issue when it doesn't work.

(updated Jan 31st)