norns: 软件帮助
通过本页面和上方的搜索栏,您应该能够解决遇到的大多数norns问题。
如果您需要额外帮助,我们会为您提供支持!请使用以下格式发送邮件至help@monome.org:
- 您遇到了什么问题?
- 重现该问题需要哪些步骤?
- 问题发生时norns连接了哪些额外硬件?包括控制器、wifi适配器、外部集线器等。
- 请附上问题发生时maiden中打印的任何输出
如果您无法提供可靠重现问题的具体步骤,这将降低我们的处理效率。如果我们指向现有资源并要求您验证额外信息,请理解。
如需特定脚本和库的支持,请访问lines并搜索该脚本的讨论线程。
章节
从冻结中恢复
如果您遇到无法恢复的冻结,有一个特殊的按键组合可以温和地重启软件。
-
首先,按住K3
-
在按住K3的同时,按住K2
-
在按住K3和K2的同时,按住K1
-
保持所有三个键按下10秒
按键顺序很重要:K3然后添加K2然后添加K1
如果多次尝试此组合失败,以下选项是最后的手段:
-
标准norns在后侧有一个小白色按钮,提供硬重置
-
shield没有重置按钮,所以唯一的选择是断电
只有在无法使用建议方法恢复时才使用强制方法
更新后屏幕无响应
如果系统更新失败,norns可能无法完全启动,在类似正弦波的启动音后您会遇到黑屏。尽管有黑屏,您仍然可以访问WIFI,这将允许我们使用SSH重新运行更新:
- 导航到最新的norns发布版本
- 找到
.tgz资源并复制其网址,例如https://github.com/monome/norns/releases/download/v2.8.2/norns240221.tgz - 打开终端
- 执行:
ssh we@norns.local - 输入您的密码(默认是sleep,除非您已更改)
连接后,逐行执行以下命令:
- 切换到更新目录:
cd update - 通过资源的网址下载发布文件:
wget https://github.com/monome/norns/releases/download/v2.8.2/norns240221.tgz- 请务必将URL更改为您在上述步骤中复制的URL!
- 解压更新文件(格式为
nornsYYMMDD.tgz):tar xzvf norns240221.tgz- 请务必将文件名更改为您正在使用的文件名!
- 切换到数字更新标识符目录:
cd 240221- 请务必将数字更新标识符更改为您正在使用的!
- 运行更新脚本:
./update.sh - 重启norns:
sudo reboot now
添加和更新脚本
maiden(norns内置的基于网络的编辑器)具有项目管理器功能,帮助促进项目发现、安装和升级。
要添加未在maiden上托管的脚本,您可以使用maiden的REPL获取它
如果您通过maiden的项目管理器更新一个最初不是通过项目管理器安装的项目,您会收到在目录中找不到该项目的错误。请删除之前安装的版本并通过项目管理器重新安装,这将建立未来更新所需的git文件。
lines还有一个专门的库用于标记为norns的项目。在每个项目的讨论线程中,您会找到深入的对话以及性能示例和教程。norns的项目主要由lines社区构建和维护,因此任何关于特定项目的问题/困扰都应该在其讨论线程中提出。
清除当前运行的脚本
按K1从PLAY切换到HOME。突出显示SELECT并按住K1——您会在屏幕中间看到CLEAR。按K3清除当前运行的脚本。
‘available’ 脚本未在maiden中显示

如果您在maiden的available标签下没有看到任何脚本填充:
- 确认norns和您的其他计算机都连接到同一个wifi网络
- 确认您使用的是核心norns软件的最新版本
- 连接到maiden并确认在
data/sources下存在以下文件:base.json和community.json- 如果它们不存在,或者文件本身为空,请导入每个文件的新副本
- 如果
data/catalogs文件夹不存在,请创建它 - 重新启动您的设备
按照上述步骤应该能够创建community和base目录填充所需的条件。
错误消息
重复引擎
如果您有同一引擎的多个副本,SuperCollider将无法加载,这些副本通常包含在dust(norns上安装项目的父文件夹)内的重复.sc文件中。
通常解决此问题的方法是,通过wifi连接并打开maiden。在底部的maiden matron REPL(>>提示符)中输入;restart。
这将重新启动音频组件并输出它们的日志。如果有重复类,将显示类似以下的错误消息:
DUPLICATE ENGINES:
/home/we/dust/code/ack/lib/Engine_Ack.sc Engine_Ack.sc
/home/we/dust/code/we/lib/Engine_Ack.sc Engine_Ack.sc
### SCRIPT ERROR: DUPLICATE ENGINES
在此示例中,Engine_Ack.sc引擎在两个项目中重复:ack和we。使用maiden,您将展开每个项目的lib文件夹以显示重复的Engine_Ack.sc。在您删除其中一个有问题的引擎后,从norns菜单执行SYSTEM > RESTART。
如果问题仍然存在或maiden没有报告重复引擎,请发送邮件至help@monome.org。请记住,除非您熟悉Supercollider,否则不要篡改其内部文件夹结构。所有典型norns功能都可以通过maiden项目管理器或dust文件夹处理。
加载失败
这只是意味着您尝试加载的脚本中存在错误。
通过wifi连接并打开maiden,当您再次尝试加载脚本时查看错误消息。
一个常见问题可能是缺少引擎。检查输出中类似这样的内容:
### SCRIPT ERROR: missing Timber
在此示例中,脚本需要Timber,因此请在项目管理器中找到它并安装。如果您刚刚安装了Timber,您需要通过SLEEP重启norns或在matron REPL中输入;restart。
永久的 ‘loading…’
如果您有同一Class文件的多个副本,SuperCollider可能无法加载,这些通常是脚本在norns的隐藏local文件夹中安装的重复.sc文件。
如果您能够加载maiden,在主REPL区域(在屏幕底部的>>提示符上方)有两个标签。第一个标签用于matron,运行脚本的控制程序——另一个是sc,用于SuperCollider。点击进入sc标签并在REPL中输入;restart。监控传入的消息并查找任何ERROR。例如:
Compiling class library…
Found 738 primitives.
Compiling directory '/usr/local/share/SuperCollider/SCClassLibrary'
Compiling directory '/usr/local/share/SuperCollider/Extensions'
Compiling directory '/home/we/.local/share/SuperCollider/Extensions'
ERROR: duplicate Class found: 'exampleName'
/home/we/.local/share/SuperCollider/Extensions/exampleFolder/Classes/exampleName.sc
/home/we/.local/share/SuperCollider/Extensions/supercollider-plugins/exampleName.sc
Compiling directory '/home/we/norns/sc/core'
Compiling directory '/home/we/norns/sc/engines'
Compiling directory '/home/we/dust'
ERROR: There is a discrepancy.
numClassDeps 1604 gNumClasses 3206
我们看到的第一个ERROR告诉我们:
- 有一个名为
'exampleName'的类的重复 - 一个副本位于:
/home/we/.local/share/SuperCollider/Extensions/exampleFolder/Classes/exampleName.sc - 另一个副本位于:
/home/we/.local/share/SuperCollider/Extensions/supercollider-plugins/exampleName.sc
要纠正这个问题,您需要删除两个文件中的一个。对于此示例,我们将通过首先切换回到maiden的matron标签,然后通过maiden的命令行执行以下命令(使用exampleFolder作为示例文件夹名称)来删除列出的第一个文件夹:
util.os_capture("rm -r /home/we/.local/share/SuperCollider/Extensions/exampleFolder")
重新启动norns,问题应该被清除。
SUPERCOLLIDER 失败
这表明SuperCollider出现了问题,可能由于各种原因。首先,总是尝试通过SYSTEM > SLEEP重启。
如果您能够加载maiden,在主REPL区域(在屏幕底部的>>提示符上方)有两个标签。第一个标签用于matron,运行脚本的控制程序——另一个是用于SuperCollider的sc。点击进入sc标签并在REPL中输入;restart。这应该会显示SuperCollider内部发生的情况。
- 您可能有重复引擎。
- 您可能缺少必需的引擎。
- 您可能有重复类。
- 如果这些都没有帮助,您可能需要重新刷写您的norns为干净镜像(在备份任何数据后)。
- 如果这样做不能解决问题,可能存在硬件问题:发送邮件至help@monome.org。
文件未找到
如果新重命名的脚本在maiden中抛出文件未找到错误,这可能是因为系统没有注册名称更改——即使您在UI中看到了新名称。在您的浏览器上执行硬刷新(如何操作?)。
不是错误:’m.read: /home/we/dust/data//.pmap not read.'
这不是一个错误。我们在这里包含它是因为它经常被误认为是错误,因为它可能伴随脚本加载的其他问题。
此消息仅报告脚本以前从未(成功)运行过。一旦norns系统为该脚本创建默认的.pmap,此消息将消失,这发生在脚本第一次干净退出时。
实时一起查看错误
我们将看到来自正在运行的脚本的错误打印到maiden的REPL。但由于maiden只允许我们回滚有限的历史记录,并且偶尔会抑制错误(例如,如果我们正在开发模组),这有时是不够的。
如果我们想要看到来自正在运行的脚本、模组和SuperCollider的错误消息的更全面的实时视图,我们可以通过SSH直接登录到我们的norns并发出以下命令:
journalctl -f
这不仅会显示最后几条系统消息(包括错误),还会在新消息出现时更新。
当我们完成时,我们可以通过按Ctrl+C关闭流。还要确保通过执行exit关闭到您的norns的SSH连接。
通过maiden重启
要执行整个norns堆栈的快速重启(例如,在安装带有合成引擎的脚本时),重启SuperCollider 然后重启matron。
要重启matron(norns的Lua层),在maiden REPL的matron标签中执行;restart。
要重启SuperCollider(norns的合成层),在maiden REPL的supercollider标签中执行;restart。